Wat is XML?

XML, wat staat voor ‘Extensible Markup Language’, is net als (X)HTML een manier om structuur te geven aan data. XML concentreert zich meer op de betekenis van de data, terwijl HTML de data reeds van basis-opmaak voorziet.
Omdat de tags (bv. <item>) gebruikt worden om de rol van een stuk data te omschrijven, mag je deze zelf kiezen. Dit in tegenstelling tot bvb. HTML, waar er slechts een handvol voorgedefiniëerde tags gebruikt mogen worden.
Deze opmaak heeft de bedoeling om makkelijk leesbaar te zijn voor zowel machine als mens.

Een voorbeeld:

<?xml version="1.0" encoding="ISO-8859-1"?>
<recept naam="diepvries pizza met extra kaas">
<benodigdheden>
<ingredient>Diepvries Pizza</ingredient>
<ingredient>Gemalen kaas</ingredient>
<materiaal>Oven</materiaal>
</benodigdheden>
<bereiding>
<stap>Oven voorverwarmen zoals aangegeven op de verpakking van de pizza.</stap>
<stap>Haal de pizza uit zijn verpakking. Bestrooi naar smaak met de gemalen kaas.</stap>
<stap>Stop je creatie in de oven. Bakken tot de kaas helemaal gesmolten is en goudbruin wordt.</stap>
</bereiding>
</recept>

Zoals je ziet, moet je geen raketgeleerde zijn om XML te kunnen lezen en begrijpen. Ditzelfde voorbeeld in HTML zou er zo kunnen uitzien;

<h1>Recept voor : diepvries pizza met extra kaas</h1>
<h2>Benodigdheden</h2>
<ul>
<li>Diepvries pizza</li>
<li>Gemalen kaas</li>
<li class="materiaal">oven</li>
</ul>
<h2>Bereiding</h2>
<ol>
<li>Oven voorverwarmen zoals aangegeven op de verpakking van de pizza.</li>
<li>Haal de pizza uit zijn verpakking. Bestrooi naar smaak met de gemalen kaas.</li>
<li>Stop je creatie in de oven. Bakken tot de kaas helemaal gesmolten is en goudbruin wordt.</li>
</ol>

Zoals ik eerder al zei, is er in deze HTML al een minimum aan opmaak voorzien.
Een h1 tag bvb. staat voor een titel, dus zal de browser deze groter en vet maken.
Een ul, of unordered list staat voor een opsomming, en li voor list-item. Dus zal de browser dit voorzien van opsommingstekens, etc…

De XML echter bevat enkel de data, en geeft aan wat de betekenis van die data is. Hierdoor kan een applicatie die geen HTML “spreekt”, de data lezen zonder zich te “verslikken” in tags die hij niet begrijpt.
Deze scheiding van inhoud en opmaak zorgt er dus voor dat de data gemakkelijker kan worden uitgewisseld tussen verschillende programma’s.

Gebruik

Een veel gebruikte vorm van XML op het internet tegenwoordig zijn RSS feeds. Dit wordt op een website weergegeven met een (meestal) oranje icoontje. Wanneer je je op zo’n feed inschrijft, word je automatisch op de hoogte gebracht wanneer er nieuwe inhoud op die website verschijnt.
Je kunt je bijvoorbeeld inschrijven op de RSS feed van gorilla webdesign opdat je onze nieuwe artikels kunt lezen, zonder dat je telkens moet komen controleren of er al nieuwe artikels verschenen zijn.

Een andere implementatie van XML die veel voorkomt, is op Flash-sites. Om een flash site te kunnen invullen met inhoud uit een database, voorziet men eerst XML pagina’s die deze data als het ware “broadcasten”.
Dan kun je met een beetje actionscript deze data live importeren, en er je animaties omheen bouwen.

Derde en laatste voorbeeld: AJAX. Bij een “ajax-call”, vraag je enkel de data op die geupdate moet worden, in plaats van een ganse pagina. Deze data wordt (meestal) wederom opgebouwd in XML.

Meer lezen?

Reacties

Reageer als eerste!

Geef je mening… don't be shy

  • http://

Feed the primates

Wij hebben grote honger naar nieuwe projecten. Ook voor uw project leggen wij de lat heel hoog. Samenwerken? Stuur een berichtje. Of bel 09 395 02 51.

Een idee voor een nieuw project? We zijn benieuwd