Derniers tutoriels de développement web
 

XML Les attributs


Les éléments XML peuvent avoir des attributs, tout comme HTML.

Les attributs sont conçus pour contenir des données relatives à un élément spécifique.


Attributs XML doivent être indiqués

Les valeurs des attributs doivent toujours être cités. Soit guillemets simples ou doubles peuvent être utilisés.

Pour le sexe d'une personne, le <person> élément peut être écrit comme ceci:

<person gender="female">

ou comme ceci:

<person gender='female'>

Si la valeur d'attribut lui-même contient des guillemets, vous pouvez utiliser des guillemets simples, comme dans cet exemple:

<gangster name='George "Shotgun" Ziegler'>

ou vous pouvez utiliser des entités de caractères:

<gangster name="George &quot;Shotgun&quot; Ziegler">

Éléments vs attributs XML

Jetez un oeil à ces exemples:

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

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

Dans le premier genre exemple est un attribut. Dans le dernier, le sexe est un élément. Les deux exemples donnent les mêmes informations.

Il n'y a pas de règles sur le moment d'utiliser des attributs ou lorsque d'utiliser des éléments en XML.


Ma façon préférée

Les trois documents XML suivants contiennent exactement les mêmes informations:

Un attribut de date est utilisé dans le premier exemple:

<note date="2008-01-10">
  <to>Tove</to>
  <from>Jani</from>
</note>

A <date> élément est utilisé dans le second exemple:

<note>
  <date>2008-01-10</date>
  <to>Tove</to>
  <from>Jani</from>
</note>

Une étendue <date> élément est utilisé dans le troisième exemple: (THIS IS MY FAVORITE) :

<note>
  <date>
    <year>2008</year>
    <month>01</month>
    <day>10</day>
  </date>
  <to>Tove</to>
  <from>Jani</from>
</note>

Évitez les attributs XML?

Quelques points à considérer lors de l'utilisation des attributs sont les suivants:

  • attributs ne peut pas contenir des valeurs multiples (elements can)
  • les attributs ne peuvent pas contenir des structures d'arbres (elements can)
  • attributs ne sont pas facilement extensible (for future changes) les (for future changes)

Ne pas finir comme ça:

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

XML Attributs pour les métadonnées

Parfois, les références d'identification sont attribués à des éléments. Ces identifiants peuvent être utilisés pour identifier les éléments XML de la même manière que l' id attribut HTML. Cet exemple démontre ceci:

<messages>
  <note id="501">
    <to>Tove</to>
    <from>Jani</from>
    <heading>Reminder</heading>
    <body>Don't forget me this weekend!</body>
  </note>
  <note id="502">
    <to>Jani</to>
    <from>Tove</from>
    <heading>Re: Reminder</heading>
    <body>I will not</body>
  </note>
</messages>

L' id attributs ci - dessus sont pour identifier les différentes notes. Il ne fait pas partie de la note elle-même.

Ce que je suis en train de dire ici est que les métadonnées (data about data) les (data about data) doivent être stockés sous forme d' attributs, et les données lui - même devrait être stocké en tant qu'éléments.