attributo XML
elementi XML possono avere attributi simili a HTML.
(Attributo) fornisce ulteriori informazioni sull'elemento.
attributo XML
In HTML, attributi forniscono informazioni aggiuntive relative all'elemento:
<a href="demo.html">
Proprietà non sono di solito forniscono informazioni circa la parte dei dati. Nel seguente esempio, il tipo di file non ha nulla a che fare con i dati, ma hanno bisogno di gestire questo elemento del software è molto importante:
attributi XML devono essere citati
I valori degli attributi devono essere circondati da virgolette, anche se virgolette singole o doppie possono essere utilizzate. Ad esempio, genere di una persona, elemento persona può essere scritta:
O questo può essere:
Se il valore dell'attributo stesso contiene virgolette è possibile utilizzare le virgolette singole, come in questo esempio:
Oppure si può usare entità carattere:
Elementi vs. attributi XML
Considerate questi esempi:
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>
<sex>female</sex>
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>
Nel primo caso, il sesso è un attributo. Nel secondo caso, il sesso è un elemento. Entrambi gli esempi forniscono le stesse informazioni.
Nessuna regola può dirci quando usare gli attributi, e quando utilizzare gli elementi. La mia esperienza è in formato HTML, la proprietà è molto comodo da usare, ma in XML, si dovrebbe cercare di evitare l'uso della proprietà. Se le informazioni si sente come i dati, utilizzare elementi di esso.
Il mio modo preferito
I seguenti tre documenti XML contengono esattamente le stesse informazioni:
Il primo esempio utilizza le proprietà di data:
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Il secondo esempio utilizza gli elementi di data:
<date>10/01/2008</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Il terzo esempio utilizza l'elemento data estesa (che è il mio preferito):
<date>
<day>10</day>
<month>01</month>
<year>2008</year>
</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Evitare attributo XML?
Alcuni dei problemi causati dall'uso di struttura:
- Gli attributi non possono contenere valori multipli (elementi possono)
- Gli attributi non possono contenere strutture ad albero (elementi possono)
- Gli attributi non sono facilmente espandibili (per cambiamenti futuri)
La proprietà è difficile da leggere e mantenere. Prova ad utilizzare gli elementi per descrivere i dati. Ma utilizzare solo la proprietà di fornire i dati informazioni indipendenti.
Non fare una cosa così stupida (Questo non è deve essere utilizzato il codice XML):
to="Tove" from="Jani" heading="Reminder"
body="Don't forget me this weekend!">
</note>
metadati XML per la proprietà
Talvolta riferimenti ID sono assegnati agli elementi. L'ID può essere utilizzato per identificare l'indice elemento XML, il modo in cui funziona in attributo id HTML è lo stesso. Questo esempio ha dimostrato a noi questa situazione:
<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>
Quanto sopra è solo un identificatore attributo id viene utilizzato per identificare le diverse note. Non fa parte dei dati della nota.
Qui abbiamo cercato di trasmettere la sua filosofia è: i metadati (dati sui dati) devono essere conservati come attributi, e che dati stessi devono essere conservati come elementi.