XML -syntaxisregels
De syntaxisregels van XML zijn heel eenvoudig en logisch. De regels zijn gemakkelijk te leren en gemakkelijk te gebruiken.
XML-documenten moeten een basiselement hebben
XML-documenten moeten één hoofdelement bevatten dat het bovenliggende element is van alle andere elementen:
<root>
<child>
<subchild>.....</subchild>
</child>
</root>
In dit voorbeeld is <note> het root-element:
<?xml version="1.0" encoding="UTF-8"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
De XML-proloog
Deze regel wordt de XML- proloog genoemd :
<?xml version="1.0" encoding="UTF-8"?>
De XML-proloog is optioneel. Als het bestaat, moet het eerst in het document staan.
XML-documenten kunnen internationale tekens bevatten, zoals Noorse øæå of Franse êèé.
Om fouten te voorkomen, moet u de gebruikte codering specificeren of uw XML-bestanden opslaan als UTF-8.
UTF-8 is de standaard tekencodering voor XML-documenten.
Tekencodering kan worden bestudeerd in onze tekenset-tutorial .
UTF-8 is ook de standaardcodering voor HTML5, CSS, JavaScript, PHP en SQL.
Alle XML-elementen moeten een afsluitende tag hebben
In XML is het illegaal om de afsluitende tag weg te laten. Alle elementen moeten een afsluitende tag hebben:
<p>This is a paragraph.</p>
<br />
Opmerking: de XML-proloog heeft geen afsluitende tag! Dit is geen fout. De proloog maakt geen deel uit van het XML-document.
XML-tags zijn hoofdlettergevoelig
XML-tags zijn hoofdlettergevoelig. De tag <Letter> is anders dan de tag <letter>.
Openings- en sluitingstags moeten met hetzelfde hoofdlettergebruik worden geschreven:
<message>This is correct</message>
"Tags voor het openen en sluiten" worden vaak "Start- en eindtags" genoemd. Gebruik wat je maar wilt. Het is precies hetzelfde.
XML-elementen moeten correct worden genest
In HTML ziet u mogelijk onjuist geneste elementen:
<b><i>This text is bold and italic</b></i>
In XML moeten alle elementen correct in elkaar genest zijn:
<b><i>This text is bold and italic</i></b>
In het bovenstaande voorbeeld betekent "Goed genest" eenvoudig dat aangezien het <i>-element binnen het <b>-element wordt geopend, het binnen het <b>-element moet worden gesloten.
XML-kenmerkwaarden moeten altijd worden geciteerd
XML-elementen kunnen attributen hebben in naam/waarde-paren, net als in HTML.
In XML moeten de attribuutwaarden altijd tussen aanhalingstekens staan:
<note date="12/11/2007">
<to>Tove</to>
<from>Jani</from>
</note>
Entiteitsreferenties
Sommige tekens hebben een speciale betekenis in XML.
Als u een teken als "<" in een XML-element plaatst, genereert het een fout omdat de parser het interpreteert als het begin van een nieuw element.
Dit genereert een XML-fout:
<message>salary < 1000</message>
Om deze fout te voorkomen, vervangt u het teken "<" door een entiteitsverwijzing :
<message>salary < 1000</message>
Er zijn 5 vooraf gedefinieerde entiteitsreferenties in XML:
< | < | less than |
> | > | greater than |
& | & | ampersand |
' | ' | apostrophe |
" | " | quotation mark |
Alleen < en & zijn strikt illegaal in XML, maar het is een goede gewoonte om > te vervangen door > ook.
Opmerkingen in XML
De syntaxis voor het schrijven van opmerkingen in XML is vergelijkbaar met die van HTML:
<!-- This is a comment -->
Twee streepjes in het midden van een opmerking zijn niet toegestaan:
<!-- This is an invalid -- comment -->
Witruimte wordt bewaard in XML
XML kapt meerdere witruimten niet af (HTML kapt meerdere witruimten af tot één enkele witruimte):
XML: | Hello Tove |
HTML: | Hello Tove |
XML slaat nieuwe regel op als LF
Windows-toepassingen slaan een nieuwe regel op als: regelterugloop en regelinvoer (CR+LF).
Unix en Mac OSX gebruiken LF.
Oude Mac-systemen gebruiken CR.
XML slaat een nieuwe regel op als LF.
Goed gevormde XML
XML-documenten die voldoen aan de bovenstaande syntaxisregels worden "goed gevormde" XML-documenten genoemd.