xml Ben formati


Esempio

Un documento XML è un file di testo conforme alle regole di ben formata della specifica XML. Tale documento conforme è detto di essere ben formato (da non confondere con valido ). L'XML è molto severo con una buona formazione rispetto ad altri linguaggi come l'HTML. Un file di testo non ben formato non è considerato XML e non può essere utilizzato dal consumo di applicazioni.

Ecco alcune regole che si applicano ai documenti XML:

  1. XML utilizza una sintassi molto auto-descrittiva. Un prolog definisce la versione XML e la codifica dei caratteri:

    <?xml version="1.0" encoding="UTF-8"?>
    
  2. Deve esserci esattamente un elemento di livello superiore.

    Tuttavia, i commenti, le istruzioni di elaborazione e la dichiarazione XML iniziale sono consentiti anche al livello più alto. Il testo e gli attributi non lo sono.

    <?xml version="1.0"?>
    <!-- some comments -->
    <?app a processing instruction?>
    <root/>
    <!-- some more comments -->
    
  3. Gli elementi possono nidificare, ma devono essere "nidificati correttamente":

    <name>
      <first-name>John</first-name>
      <last-name>Doe</last-name>
    </name>
    

    I tag di inizio e fine di un elemento incorporato devono essere compresi tra i tag di inizio e di fine del suo elemento contenitore. Una sovrapposizione di elementi è illegale. In particolare, questo XML non è ben formato: <foo><bar></foo></bar>

  4. Gli attributi possono apparire solo nei tag di apertura dell'elemento o nei tag di elemento vuoti, non nei tag di chiusura dell'elemento. Se la sintassi degli attributi viene visualizzata tra gli elementi, non ha alcun significato e viene analizzata come testo.

    <person first-name="John" last-name="Doe"/>
    

    Questo non è ben formato: <person></person first-name="John"/>

  5. Commenti, istruzioni di elaborazione, testo e altri elementi possono apparire ovunque all'interno di un elemento (ad esempio, tra il suo tag di apertura e di chiusura) ma non all'interno dei tag.

    <element>
        This is some <b>bold</b> text.
        <!-- the b tag has no particular meaning in XML -->
    </element>
    

    Questo esempio non è ben formato: <element <-- comment --> />

  6. Il carattere < potrebbe non apparire nel testo o nei valori degli attributi.

  7. Il " carattere potrebbe non apparire nei valori degli attributi citati con " . Il carattere ' potrebbe non apparire nei valori degli attributi citati con ' .

  8. La sequenza di caratteri -- potrebbe non apparire in un commento.

  9. I caratteri < e & letterali devono essere sfuggiti dalle rispettive entità &lt; e &amp; .