Elementi XML

Un documento XML contiene elementi XML.

Cos'è un elemento XML?

Un elemento XML è tutto il contenuto da (incluso) il tag di inizio all'elemento (incluso) il tag di fine.

<price>29.99</price>

Un elemento può contenere:

  • Testo
  • Attributi
  • Altri elementi
  • o superiori
<bookstore>
<book category="cucina">
  <title lang="zh">Pensieri sulla cucina</title>
  <author>Liang Shiqiu</author>
  <press>Edizioni Jiangsu Wenyi</press>
  <year>2013</year>
  <price>35</price>
  <ISBN>9787539962771</ISBN>
</book>
<book category="bambini">
  <title lang="zh">Il fantastico papà volpe</title>
  <author>Rolf Dahl</author>
  <translator>Da Wei</translator>
  <press>Edizioni Mingtian</press>
  <year>2009</year>
  <price>10</price>
  <ISBN>9787533259563</ISBN>
</book>
</bookstore>

Nell'esempio sopra:

Gli elementi <title>, <author>, <year> e <price> hannoContenuto del testo, perché contengono testo (ad esempio 29.99).

<bookstore> e <book> hannoContenuto dell'elemento, perché contengono elementi.

<book> ha unAttributi (ad esempio: category="bambini").

Elemento XML vuoto

Gli elementi privi di contenuto sono detti elementi vuoti.

In XML, puoi indicare gli elementi vuoti in questo modo:

<element></element>

Puoi anche utilizzare i cosiddetti tag di chiusura automatica:

<element />

Questi due formati producono lo stesso risultato nei software XML (lettori, parser, browser)

Suggerimento:Anche gli elementi vuoti possono avere attributi.

Regole di nomina XML

Gli elementi XML devono seguire le seguenti regole di nomina:

  • Il nome dell'elemento distingue tra maiuscole e minuscole
  • Il nome dell'elemento deve iniziare con una lettera o un trattino basso
  • Il nome dell'elemento non può iniziare con le lettere xml (o XML, Xml, ecc.)
  • Il nome dell'elemento può contenere lettere, numeri, trattini, trattini bassi e punti
  • Il nome dell'elemento non può contenere spazi

Puoi usare qualsiasi nome, non ci sono parole riservate (eccetto xml).

Pratica di nomi migliori

Il nome dovrebbe essere descrittivo, ad esempio: <person>, <firstname>, <lastname>.

Il nome dovrebbe essere breve, ad esempio: <book_title>, invece di questo: <the_title_of_the_book>.

Evita il carattere "-". Se nomini in questo modo: "first-name", alcuni software potrebbero pensare che stai cercando di sottrarre "name" da "first".

Evita il carattere ".". Se nomini in questo modo: "first.name", alcuni software potrebbero pensare che "name" è l'attributo dell'oggetto "first".

Evita il carattere ":". Il due punti viene utilizzato come spazio dei nomi (più avanti illustrato).

Le lettere non inglesi come éòá sono anche nomi validi degli elementi XML, ma attenzione ai problemi che possono sorgere quando i produttori di software non supportano questi caratteri.

Consenso di nomi

Alcuni consensi di nomi comuni degli elementi XML:

Stile Esempio Descrizione
Minuscole <firstname> Tutte le lettere minuscole
Maiuscole <FIRSTNAME> Tutte le lettere maiuscole
SnakeCase <first_name> Suddividere le parole con trattini di punteggiatura (usato spesso nei database SQL)
PascalCase <FirstName> Maiuscola la prima lettera di ogni parola (usato spesso dai programmatori C)
CamelCase <firstName> Maiuscola la prima lettera di ogni parola, eccetto la prima (usato spesso in JavaScript)

Suggerimento:Scegli uno stile di nomi e mantienilo coerente!

I documenti XML spesso hanno un database corrispondente, nei quali i campi corrispondono agli elementi del documento XML.

C'è una buona regola d'esperienza: usa le regole di nome dei database per dare nomi agli elementi dei documenti XML.

Gli elementi XML sono estensibili

Gli elementi XML sono estensibili per trasportare più informazioni.

Vedi l'esempio XML seguente:

<note>
  <to>George</to>
  <from>John</from>
  <body>Non dimenticare l'incontro!</body>
</note>

Immaginiamo di aver creato un'applicazione che estrae gli elementi <to>, <from> e <body> e produce il seguente output:

MESSAGGIO
A: George
Da: John
Non dimenticare l'incontro!

Immagina, dopo di che l'autore di questo documento XML ha aggiunto alcune informazioni aggiuntive a questo documento:

<note>
  <date>2008-01-10</date>
  <to>George</to>
  <from>John</from>
  <heading>Ricordatorio</heading>
  <body>Non dimenticare l'incontro!</body>
</note>

Allora questa applicazione si interromperà o crollerà?

No. Questa applicazione può ancora trovare gli elementi <to>, <from> e <body> nel documento XML e produrre lo stesso output.

Uno dei vantaggi dell'XML è la possibilità di espandersi frequentemente senza interrompere l'applicazione.