12 oktober 2003, deze pagina staat nog onder bewerking, niet alle links zullen nog werken ook kan de tekst nog wijzigen.
XML
Wat is XML
Extensible Markup Language (XML) is feitelijk een eenvoudig en flexibel text-formaat voor de opslag van data. XML is een meta opmaak (markup) taal voor de beschrijving van gestructureerde data (gegevens).
De verschillende stukjes data worden van elkaar gescheiden door tags, net als bij bijvoorbeeld HTML of TeX. Voor XML ligt de betekenis van deze tags echter niet vast en juist dat maakt XML zo flexibel. De maker van het document kan zelf bepalen, welke tags hij/zij wil gebruiken om zijn document te beschrijven. Of beter gezegd de maker bedenkt de zelf de tags die hij nodig heeft om zijn data gestructureerd te beschrijven.
XML beschrijft de structuur en betekenis van data, maar niet de uiteindelijke presentatie (layout) daarvan. Dit maakt het mogelijk gegevens tussen verschillende soort applicaties uit te wisselen. De gebruiker (ontvanger) niet per definitie een persoon, bepaald hoe de data getoond wordt. Daarbij hoeft niet alle data gebruikt te worden.
Voorbeeld
<persoon>
<naam>
<voornaam>Bas</voornaam>
<voornaam>Jobsen</voornaam>
</naam>
<geboortedatum>
<datum> 7 november 1976</datum>
</geboortedatum>
<adres>
<straat>Prins Mauritsstraat</straat>
<huisnr>35</huisnummer>
<plaats>Delft</plaats>
</adres>
</persoon>
Bovenstaande XML-file beschrijft een persoon. Wanneer we de file inlezen met een kalenderprogramma, gebruikt dit programma misschien alleen de geboortedatum en de voornaam. Terwijl voor een adresboek juist de naam- en adresgegevens belangrijk zijn.
Bovenstaand voorbeeld maakt duidelijk dat verschillende fabrikanten onafhankelijk van elkaar (en van de maker van het document) software kunnen ontwikkelen voor verschillende platforms (besturingssystemen; MS Windows, Unix, etc.) die kunnen omgaan met deze XML-file.
DTD's
De tags van een XML-bestand worden gedocumenteerd in een
DTD. Een voorbeeld hiervan is het XHTML DTD,
dat een beschrijving geeft van HTML in XML.
Zie: XHTML1.1 (Experiment).
Toepassing
XML zorgt er dus voor dat data gestructureerd wordt vastlegt op een manier, die software- en platformonafhankelijk is. Dit maakt XML uiterst geschikt vvoor het overdragen van informatie via het internet.
Omdat bij XML de betekenis van de tags binnen een document niet meer vastligt zoals bij HTML, krijgen webdesigners ongekende mogelijkheden.
De rol van XML voor het overbrengen van informatie via het internet en daar buiten, zal in de toekomst steeds groter worden.
W3C
Het W3C speelt een belangrijke rol in de verdere ontwikkeling
en documentatie van XML.
Zie: http://www.w3.org/XML/.
XML en internet
Nieuwere browsers kunnen over het algemeen ook XML bestanden lezen. De ondersteuning is nog niet altijd even goed en nog lang niet elke gebruiker beschikt over een browser die dat kan. Totdat elke browser XML ondersteunt blijven webdesigners aangwezen op de conversie van XML naar HTML.
Omdat bij XML de tags vrij te kiezen zijn, ligt voor de brower niet vast hoe de verschillende elementen getoond moeten worden. Dit kan opgelost worden door de documenten aan te leveren met een style sheet.
Op dit moment zijn er twee soorten style sheets beschikbaar. De eerste is CSS en de andere XSL
Casade Style Sheets (CSS)
CSS kunnen niet alleen ingezet worden voor de opmaak van XML documenten,
maar ook voor HTML documenten en XHTML documenten.
Meer over CSS kunt u lezen op:
Extensible Stylesheet Language (XST)
XST is een meer uitgebreidere style sheet taal speciaal ontwikkeld
voor de opmaak van XML-documenten.
Op dit moment is deze taal echter nog in ontwikkeling, zie:
http://www.w3.org/Style/XSL/.
XML Toepassingen
Naast het al eerder genoemde XHTML bestaan er reeds talrijke andere XML toepassingen. Hier worden er enkele genoemd, dit ter illustratie en niet om een complete lijst te geven.
MathML
MathML maakt het mogelijke wiskundige (wetenschappelijke) formules
weer te geven op het internet.
Meer over informatie: MathML (+voorbeeld).
Scalable Vector Graphics (SVG)
SVG is een taal om twee-dimensionale figuren en andere grafische
toepassingen te beschrijven in XML. Deze toepassing laat meteen
zien dat XML niet beperkt is tot tekstuele data alleen.
Meer informatie is te vinden op: SVG.
MusicXML
MusicXML beschrijft bladmuziek (muzieknoten) in XML. Uiteindelijk moet het
ook mogelijk zijn om de muziek op internet te publiceren, maar er lijken
op dit moment maar weinig browsers om te kunnen gaan met bestaande DTD's voor MusicXML.
MusicXML maakt op dit moment wel de uitwisseling van (blad)muziek tussen
verschillende software programma's mogelijk.
Zie ook: MusicXML Definition.