элементы XML и атрибуты сравнения
В XML, и не существует каких-либо положений, когда использовать атрибуты, и когда использовать дочерние элементы.
Использование элементов vs. атрибутов
Данные могут быть сохранены в дочерних элементов или атрибутов.
Давайте посмотрим на эти примеры:
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>
<sex>female</sex>
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>
В первом примере, "пол" является атрибутом. В одном примере, обратно, "секс" является суб-элементом. Но оба дают ту же информацию.
Никаких специальных положений относительно того, когда использовать атрибуты, и когда использовать дочерние элементы. Мой опыт показывает, что использование нескольких атрибутов в HTML тяжелый, но в XML, использование вспомогательных элементов, он будет чувствовать себя, как данные.
Мне нравится, как
Я хотел бы хранить данные в дочерних элементах
Следующие три XML-документы содержат точно такую же информацию:
В этом примере используется атрибут "Date":
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
В этом примере используется элемент "Date":
<date>12/11/2002</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
В этом примере используется элемент "Date" (расширение: Это мой любимый способ):
<date>
<day>12</day>
<month>11</month>
<year>2002</year>
</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Избегайте использования атрибутов?
Вы должны избегать использования атрибутов?
Некоторые атрибут имеет следующие проблемы:
- Атрибуты не могут содержать несколько значений (дочерние элементы могут)
- Атрибуты не легко расширяемой (для будущих потребностей изменить)
- Атрибуты не могут описать структуры (дочерние элементы могут)
- Атрибуты труднее манипулировать программный код
- Значения атрибутов не так легко проверить DTD
Если вы используете свойство в качестве контейнера данных, полученный XML-документ будет трудно читать и поддерживать. Попробуйте использоватьэлементы для описания данных.для описания данных. Данные только предоставляет ненужную информацию, когда мы рекомендуем использовать собственность.
Не конец, как это (который не должен использоваться XML):
to="Tove" from="Jani" heading="Reminder"
body="Don't forget me this weekend!">
</note>
Исключение из правила собственности
Существует всегда одно правило
Правила собственности у меня есть исключение.
Иногда я использую элементы, указанные ID. Эти приложения могут быть использованы в качестве ID атрибута имя или идентификатор для доступа к XML-элементов в HTML в той же ситуации много. Следующий пример иллюстрирует этот подход:
<note id="p501">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
<note id="p502">
<to>Jani</to>
<from>Tove</from>
<heading>Re: Reminder</heading>
<body>I will not!</body>
</note>
</messages>
XML-документы в приведенных выше примерах, идентификатор только одного счетчика, или уникальный идентификатор для идентификации различных заметок, а не как часть данных.
Я хочу сказать, в том, что метаданные (данные о данных) должны быть сохранены в виде атрибутов, а сами данные должны быть сохранены в качестве элементов.