Standaarden:XML

Uit Kennisnet Developers Documentatie
Ga naar: navigatie, zoeken

Standaarden: XML

XML is een standaard voor de representatie van gestructureerde gegevens in platte tekst. XML maakt de uitwisseling over het internet van allerlei soorten gegevens makkelijker.

Documentatie

Bullet book.png XML Specificatie En.gif (leidend)

Implementatie

Elementen

Een element heeft een openings- en sluittag.

<tag></tag>

Een element waarde staat tussen de openings- en sluit tag.

<tag>waarde</tag>

Een element kan één of meer sub elementen hebben. De subelementen zijn ook gewone elementen en kunnen dus ook weer subelementen bevatten.

<tag>
   <subtag1>waarde</subtag1>
   <subtag2>waarde</subtag2>
</tag>

Per XML bestand is er één root element. Daarbinnen bevinden zich alle subelementen. Over het algemeen heeft het root element een aantal speciale attributen.

<roottag>
   <tag>waarde</tag>
</roottag>

Attributen

Attributen bevinden zich binnen de openingstag. Er mogen meer dan één attributen aanwezig zijn. De attribuut waarde staat achter het attribuut na een "=" teken

<tag attr1="w1" attr2="w2"></tag>

Codering

Op de allereerste regel van het XML document staat de gebruikte XML versie en de gebruikte codering.

<?xml version="1.0" encoding="UTF-8"?>
<roottag>
</roottag>

Namespace

De namespace declaratie en verwijzing naar de schema locatie staan als attributen in het root element. Er is vaak meer dan één namespace. De default namespace geeft men aan met xmlns. Overige namespaces krijgen een eigen naam achter de ":" (xmlns:prefix). De elementen of attributen met een bepaalde prefix, horen bij de corresponderende namespace definitie.

De locatie van het schema (xsi:schemalocation) bestaat uit de naam van het schema (de namespace) gevolgd door een spatie gevolgd door de URL van het schema.

<roottag xmlns="default_namespace"
         xmlns:prefix="http://prefix.namespace.org"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemalocation="http://prefix.namespace.org schemafile.xsd">
   <tag>
      <prefix:subtag>waarde</prefix:subtag>
      <subtag prefix:attr="vb">waarde</subtag>
   </tag>
</roottag>