Вопрос

На этот вопрос уже есть ответ здесь:

В XSD, SOAP и других соглашениях XML вы часто увидите такие вещи, как:

<book>
 <title>Harry Potter</title>
 <author>J.K. Rowling</author>
</book>

Теперь мне интересно, что случилось с атрибутами?Для меня имеет больше смысла написать это как:

<book title="Harry Potter" author="J.K. Rowling" />

Но, видимо, по какой-то причине люди поумнее меня решили иначе.Может ли кто-нибудь объяснить, почему и для чего тогда нужны атрибуты?

Это было полезно?

Решение

Некоторые люди считают разницу вопросом личных предпочтений.Есть несколько рекомендаций, которым вы можете следовать.

W3Schools - XML-Элементы Против.Атрибуты

IBM - Принципы проектирования XML

Другие советы

Здесь нет жестких правил.Я склонен использовать атрибуты для метаданные о данных, содержащихся в элементах.например, g

<book author="JK Rowling" published="September 2001">Harry Potter</book>

хотя использование / особые требования будут определять это больше, чем что-либо еще.

Другой проблемой является последующая обработка.Если вы используете процессор SAX, то этот формат приведет к обратному вызову одного метода с заполненной структурой atteribute.Размещение данных в нескольких элементах приведет к соответствующему количеству вызовов методов (возможно, это слишком большая оптимизация, но, возможно, ее стоит рассмотреть в зависимости от количества данных)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top