Latest web development tutorials

elementów i atrybutów XML porównanie

W XML, i nie istnieją żadne przepisy, kiedy należy użyć atrybutów i kiedy należy używać elementów podrzędnych.


Użyj elementów w porównaniu z atrybutami

Dane mogą być przechowywane w elementach dziecko lub atrybutów.

Spójrzmy na tych przykładach:

<person sex="female">
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>

<person>
<sex>female</sex>
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>

W pierwszym przykładzie, "sex" jest atrybutem. W jednym z przykładów, z powrotem, "sex" to sub-element. Ale oba te same informacje.

Brak Przepisy szczególne dotyczące kiedy użyć atrybutów i kiedy należy używać elementów podrzędnych. Z mojego doświadczenia wynika, że ​​korzystanie z wielu atrybutów HTML ciężki, ale w XML, użycie podelementów, że poczują się bardziej jak danych.


Lubię sposób

Lubię do przechowywania danych w elementach potomnych

Poniższe trzy dokumenty XML zawierają dokładnie te same informacje:

W tym przykładzie użyto atrybutu "Data":

<note date="12/11/2002">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

Ten przykład używa "Data" elementu:

<note>
<date>12/11/2002</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

W tym przykładzie użyto przedłużacza "Data" elementu: (To jest mój ulubiony sposób):

<note>
<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>


Unikaj używania atrybutów?

Należy unikać stosowania atrybutów?

Niektóre atrybut posiada następujące problemy:

  • Atrybuty nie mogą zawierać wiele wartości (elementy dziecko)
  • Atrybuty nie są łatwo rozszerzalne (na zmianę przyszłe potrzeby)
  • Atrybuty nie da się opisać struktury (elementy dziecko)
  • Atrybuty są trudniejsze do manipulowania kod programu
  • Przypisania wartości nie są łatwe do testowania DTD

W przypadku korzystania z nieruchomości jako kontenera danych, otrzymany dokument XML będzie trudne do odczytania i utrzymaniu. Spróbuj użyćelementów opisu danych.do opisania danych. Dane dostarcza jedynie nieistotne informacje, kiedy zalecamy korzystanie z nieruchomości.

Nie kończyć się następująco (które nie powinny być stosowane XML)

<note day="12" month="11" year="2002"
to="Tove" from="Jani" heading="Reminder"
body="Don't forget me this weekend!">
</note>


Wyjątkiem od reguły własności

Zawsze jest inna reguła

Zasady dotyczące własności Mam wyjątek.

Czasami używam elementy określone ID. Aplikacje te mogą być stosowane jako ID atrybutu nazwa lub ID, aby uzyskać dostęp do elementów XML w HTML w takiej samej sytuacji dużo. Poniższy przykład ilustruje to podejście:

<messages>
<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>

Dokumenty XML w powyższych przykładach ID tylko jednego licznika, a unikalny identyfikator do identyfikowania różnych nut, a nie jako część danych.

Chcę powiedzieć, jest to, że metadane (dane o danych) powinny być przechowywane jako atrybuty, a same dane powinny być przechowywane jako elementy.