XML voor beginners

Misschien hebt u wel eens gehoord van Extensible Markup Language (XML) en is u verteld waarom uw organisatie hiervan gebruik zou moeten maken. Maar wat is XML nu eigenlijk precies? In dit artikel vindt u basisinformatie over XML, onder andere wat XML is en hoe het werkt.

In dit artikel

Een korte beschrijving van opmaken, opmaakcode en tags

Wanneer is iets XML?

Informatie over juist opgemaakte gegevens

Een kort overzicht van schema's

Een kort overzicht van transformaties

XML in het Microsoft Office-systeem

Een korte beschrijving van opmaken, opmaakcode en tags

Als u wilt weten hoe XML werkt, is het handig als u meer weet over het opmaken van gegevens. Al eeuwenlang zijn mensen bezig met het maken en opmaken van documenten. Zoals docenten op school. Zij zijn continu bezig met het opmaken van verslagen van studenten. Zij vertellen leerlingen alinea's te verplaatsen, zinnen te verduidelijken, spelfouten te corrigeren, enzovoort. Het opmaken van een document bestaat uit het definiëren van de structuur, betekenis en de visuele weergave van de gegevens in het document. Als u ooit met de functie Wijzigingen bijhouden in Microsoft Office Word hebt gewerkt, hebt u een geautomatiseerde vorm van opmaak gebruikt.

In computerprogramma's is de term 'opmaken' uitgegroeid tot 'opmaakcode'. Bij het opmaken wordt gebruikgemaakt van codes die tags (of soms tokens) worden genoemd waarmee de structuur, de visuele weergave en (in het geval van XML) de betekenis van gegevens wordt gedefinieerd.

De HTML-code voor dit artikel is een goed voorbeeld van computeropmaakcode. Als u door het artikel bladert (klik in Microsoft Internet Explorer met de rechtermuisknop op de pagina en klik vervolgens op Bron weergeven), ziet u een combinatie van leesbare tekst en HTML-tags (Hypertext Markup Language), zoals <p> en <h2>. Tags in HTML- en XML-documenten zijn eenvoudig te herkennen, omdat ze tussen punthaken zijn geplaatst. In de broncode voor dit artikel worden met de HTML-tags verschillende taken uitgevoerd, zoals het definiëren van het begin en het einde van een alinea (<p> ... </p>) en het markeren van de locatie van afbeeldingen.


Wanneer is iets XML?

HTML- en XML-documenten bevatten gegevens die worden omringd door tags, maar dat is ook de enige overeenkomst tussen de twee opmaakcodetalen. In HTML definiëren de tags het uiterlijk van de gegevens, zoals de plaatsing van de koppen, het begin van alinea's, enzovoort. In XML definiëren de tags de structuur en de betekenis van de gegevens, dus wat de gegevens zijn.

Wanneer u de structuur en de betekenis van gegevens beschrijft, zorgt u ervoor dat deze gegevens op verschillende manieren kunnen worden hergebruikt. Als u bijvoorbeeld een blok met verkoopgegevens hebt en elk item in het blok duidelijk is aangegeven, kunt u alleen de items die u nodig hebt in een verkooprapport laden en de andere items in een accountingdatabase laden. Anders gezegd: u kunt één systeem gebruiken om uw gegevens te genereren en op te maken met XML-tags, en deze gegevens vervolgens in een willekeurig aantal andere systemen verwerken, ongeacht het hardwareplatform of het besturingssysteem. Deze overdraagbaarheid is de reden waarom XML een van de meest gebruikte technologieën voor het uitwisselen van gegevens is geworden.

Onthoud het volgende als u verdergaat met het proces:

  • U kunt HTML niet in plaats van XML gebruiken. U kunt uw XML-gegevens echter wel verpakken in HMTL-tags en weergeven op een webpagina.

  • HTML-code is beperkt tot een vooraf gedefinieerde set met tags die alle gebruikers delen.

  • Met XML kunt u de tag maken die u nodig hebt om uw gegevens en de structuur van de gegevens te beschrijven. Stel dat u informatie over huisdieren wilt opslaan en delen. U kunt dan de volgende XML-code maken:

    <?xml version="1.0"?>
    <CAT>
    <NAME>Izzy</NAME>
    <BREED>Siamese</BREED>
    <AGE>6</AGE>
    <ALTERED>yes</ALTERED>
    <DECLAWED>no</DECLAWED>
    <LICENSE>Izz138bod</LICENSE>
    <OWNER>Colin Wilcox</OWNER>
    </CAT>

U ziet dat wanneer u XML-tags gebruikt, u precies weet wat voor soort gegevens u aan het bekijken bent. U weet bijvoorbeeld dat deze gegevens betrekking hebben op een kat, en u kunt eenvoudig informatie zoals de naam en de leeftijd over de kat vinden. De mogelijkheid tags te maken waarmee vrijwel elke gegevensstructuur kan worden gedefinieerd, zorgt ervoor dat XML 'extensible' (uitbreidbaar) is.

Verwar de tags in het codevoorbeeld echter niet met de tags in een HTML-bestand. Als u deze XML-structuur bijvoorbeeld in een HTML-bestand plakt en het bestand in uw browser bekijkt, zien de resultaten er ongeveer als volgt uit:

Izzy Siamese 6 yes no Izz138bod Colin Wilcox

In de browser worden de XML-tags genegeerd en worden alleen de gegevens weergegeven.


Informatie over juist opgemaakte gegevens

Misschien hebt u iemand in uw IT-afdeling wel eens horen praten over 'juist opgemaakte' XML. Een juist opgemaakt XML-bestand voldoet aan een set zeer strikte regels waarmee XML wordt bepaald. Als een bestand niet aan deze regels voldoet, werkt XML niet. In het vorige codevoorbeeld heeft elke begintag een eindtag. Het voorbeeld voldoet dus aan een van de regels voor een juiste opmaak. Als u een tag verwijdert en u dat bestand in een Office-programma opent, ziet u een foutbericht en kunt u het bestand niet in het programma gebruiken.

U hoeft niet per se op de hoogte te zijn van de regels voor het maken van juist opgemaakte XML (hoewel ze gemakkelijk te begrijpen zijn), maar u moet wel onthouden dat u XML-gegevens alleen tussen programma's en systemen kunt delen als die gegevens juist zijn opgemaakt. Als u een XML-bestand niet kunt openen, is de kans groot dat het bestand niet juist is opgemaakt.

XML is ook platformonafhankelijk, wat betekent dat elk programma dat is ontworpen voor het gebruik van XML, uw XML-gegevens kan lezen en verwerken, ongeacht de hardware of het besturingssysteem. Met de juiste XML-tags kunt u bijvoorbeeld een bureaubladprogramma gebruiken om de gegevens van een mainframecomputer te openen en ermee te werken. Ongeacht het feit wie een hoofdtekst van XML-gegevens maakt, kunt u met dezelfde gegevens in meerdere Microsoft Office 2003- en Microsoft Office Professional 2007-programma's werken, waaronder Microsoft Office Access 2007, Microsoft Office Word 2007, Microsoft Office InfoPath 2007 en Microsoft Office Excel 2007. Omdat XML zo goed kan worden overgedragen, is het een van de meest gebruikte technologieën voor het uitwisselen van gegevens tussen databases en gebruikersbureaubladen.

xml gebruikt door andere programma's

Naast getagde, juist opgemaakte gegevens worden in XML-systemen meestal twee extra onderdelen gebruiken: schema's en transformaties. In de volgende secties wordt uitgelegd hoe deze extra onderdelen werken.


Een kort overzicht van schema's

Laat u niet intimideren door de term 'schema'. Een schema is gewoon een XML-bestand met regels voor items die wel en niet kunnen worden opgenomen in een XML-gegevensbestand. Voor schema's wordt meestal de bestandsnaamextensie .xsd gebruikt, terwijl voor XML-gegevensbestanden de extensie .xml wordt gebruikt.

Met schema's kunnen programma's gegevens valideren. Schema's bieden een kader voor het structureren van gegevens en zorgen ervoor dat de betekenis van de gegevens duidelijk is voor de maker en de andere gebruikers. Als een gebruiker bijvoorbeeld ongeldige gegevens invoert, zoals tekst in een datumveld, wordt de gebruiker gevraagd de juiste gegevens in te voeren. Zolang de gegevens in een XML-bestand aan de regels van een bepaald schema voldoen, kan een programma dat ondersteuning biedt voor XML dat schema gebruiken om de gegevens te lezen, interpreteren en verwerken. In de volgende afbeelding ziet u dat de <CAT>-gegevens in Excel kunnen worden gevalideerd ten opzichte van het CAT-schema.

Toepassingen kunnen XML-gegevens delen met behulp van schema’s.

Schema's kunnen complex worden en het maken van schema's wordt niet in dit artikel uitgelegd. (Daarnaast hebt u waarschijnlijk een IT-afdeling die precies weet hoe dit moet.) Het kan echter nuttig zijn om te weten hoe een schema eruitziet. In het volgende schema worden de regels gedefinieerd voor de tagset <CAT> ... </CAT> .

<xsd:element name="CAT">  
<xsd:complexType>
<xsd:sequence>
<xsd:element name="NAME" type="xsd:string"/>
<xsd:element name="BREED" type="xsd:string"/>
<xsd:element name="AGE" type="xsd:positiveInteger"/>
<xsd:element name="ALTERED" type="xsd:boolean"/>
<xsd:element name="DECLAWED" type="xsd:boolean"/>
<xsd:element name="LICENSE" type="xsd:string"/>
<xsd:element name="OWNER" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>

Maakt u zich vooral geen zorgen als u niet alles in het voorbeeld begrijpt. U hoeft alleen de volgende punten te onthouden:

  • De regelitems in het voorbeeldschema worden declaraties genoemd. Als u meer informatie over een dier nodig hebt, zoals de kleur of de vacht, is de kans groot dat uw IT-afdeling een declaratie aan het schema toevoegt. U kunt het XML-systeem wijzigen naarmate de behoeften van uw bedrijf veranderen.

  • Met declaraties hebt u zeer veel controle over de gegevensstructuur. De declaratie <xsd:sequence> betekent bijvoorbeeld dat de tags, zoals <NAME> en <BREED>, moeten worden weergegeven in de volgorde waarin ze hierboven worden afgebeeld. Declaraties kunnen ook bepalen welke gegevenstypen gebruikers mogen invoeren. Met het bovenstaande schema moet bijvoorbeeld een positief getal worden opgegeven voor de leeftijd van de kat en moet een booleaanse waarde (WAAR of ONWAAR) worden opgegeven voor de tags ALTERED en DECLAWED.

  • Wanneer de gegevens in een XML-bestand aan de regels van een schema voldoen, zijn die gegevens geldig. Het proces voor het controleren van een XML-gegevensbestand ten opzichte van een schema wordt (begrijpelijk) validatie genoemd. Het grote voordeel van het gebruik van schema's is dat u hiermee beschadigde gegevens kunt helpen voorkomen. Daarnaast kunt u met schema's eenvoudig beschadigde gegevens vinden, omdat XML stopt wanneer er een probleem wordt aangetroffen.


Een kort overzicht van transformaties

Zoals eerder gezegd, biedt XML ook krachtige manieren voor het gebruiken of hergebruiken van gegevens. Het mechanisme voor het hergebruik van gegevens wordt Extensible Stylesheet Language Transformation (XSLT) of kort gezegd een transformatie genoemd.

U (of beter: uw IT-afdeling) kunt transformaties ook gebruiken om gegevens uit te wisselen tussen back-endsystemen, zoals databases. Stel dat in database A de verkoopgegevens zijn opgeslagen in een tabelstructuur die goed werkt voor de verkoopafdeling. Database B bevat de opbrengsten- en uitgavengegevens in een tabelstructuur die is afgestemd op de afdeling boekhouding. Database B kan gebruikmaken van een transformatie om gegevens uit database A te accepteren en de gegevens naar de juiste tabellen te schrijven.

De combinatie van gegevensbestand, schema en transformatie vormt een basis-XML-systeem. In de volgende afbeelding ziet u hoe dergelijke systemen doorgaans functioneren. Het gegevensbestand wordt gevalideerd ten opzichte van het schema en vervolgens via een transformatie op een bruikbare manier weergegeven. In dit geval worden de gegevens met de transformatie geïmplementeerd in een tabel op een webpagina.

Een basis-XML-bestandsstructuur met een schema en een transformatie

Met het volgende codevoorbeeld ziet u een manier om een transformatie te schrijven. Hiermee worden de <CAT>-gegevens in een tabel op een webpagina geladen. En nogmaals, het is niet de bedoeling u te laten zien hoe u een transformatie moet schrijven, we willen alleen een manier laten zien waarop een transformatie kan worden gebruikt.

<?xml version="1.0"?>
<xsl:stylesheet version="1.0">
<TABLE>
<TR>
<TH>Name</TH>
<TH>Breed</TH>
<TH>Age</TH>
<TH>Altered</TH>
<TH>Declawed</TH>
<TH>License</TH>
<TH>Owner</TH>
</TR>
<xsl:for-each select="CAT">
<TR ALIGN="LEFT" VALIGN="TOP">
<TD>
<xsl:value-of select="NAME"/>
</TD>
<TD>
<xsl:value-of select="BREED"/>
</TD>
<TD>
<xsl:value-of select="AGE"/>
</TD>
<TD>
<xsl:value-of select="ALTERED"/>
</TD>
<TD>
<xsl:value-of select="DECLAWED"/>
</TD>
<TD>
<xsl:value-of select="LICENSE"/>
</TD>
<TD>
<xsl:value-of select="OWNER"/>
</TD>
</TR>
</xsl:for-each>
</TABLE>

In dit voorbeeld ziet u hoe een transformatie eruit kan zien wanneer dit is gecodeerd. U kunt in normaal spraakgebruik beschrijven wat u nodig hebt van de gegevens. U kunt bijvoorbeeld naar uw IT-afdeling gaan en zeggen dat u de verkoopgegevens voor bepaalde regio's voor de afgelopen twee jaar wilt afdrukken en 'dat de gegevens er zo uit moeten zien'. Uw IT-afdeling kan vervolgens een transformatie schrijven (of wijzigen) om deze taak uit te voeren.

Microsoft en steeds meerdere andere leveranciers maken bovendien transformaties voor diverse taken. In de toekomst is de kans groot dat u een transformatie kunt downloaden die aan uw behoeften voldoet of die u aan uw wensen kunt aanpassen. Dit betekent dat XML goedkoper in het gebruik wordt in de loop der tijd.


XML in het Microsoft Office-systeem

De Professional-edities van Microsoft Office 2003 en Office 2007-versie bieden uitgebreide XML-ondersteuning.

  • Office Excel 2007, Office Word 2007 en Office PowerPoint 2007 gebruiken XML als standaardbestandsindeling, een wijziging die diverse voordelen kent:

    • Kleinere bestandsgrootte. De nieuwe indeling maakt gebruik van ZIP en andere compressietechnieken, waardoor de bestandsgrootte tot 75 procent kleiner is vergeleken met de binaire indelingen die in eerdere versies van Office worden gebruikt.

    • Eenvoudiger herstel van gegevens en betere beveiliging. XML kan door mensen worden gelezen, dus als een bestand beschadigd raakt, kunt u dit openen in Microsoft Kladblok of een ander programma voor het lezen van tekst en tenminste een deel van uw gegevens herstellen. Daarnaast zijn de nieuwe bestanden veiliger, omdat ze geen VBA-code (Visual Basic for Applications) kunnen bevatten. Als u de nieuwe indeling gebruikt om sjablonen te maken, bevinden alle ActiveX-besturingselementen en VBA-macro's zich in een aparte, beter beveiligde sectie van het bestand. Bovendien kunt u hulpprogramma's zoals Documentcontrole gebruiken om persoonlijke gegevens te verwijderen. Zie het artikel Verborgen en persoonlijke gegevens verwijderen uit Office-documenten voor meer informatie over het gebruik van Documentcontrole.

    • Betere overdraagbaarheid en flexibiliteit. Omdat de gegevens met XML in een tekstindeling in plaats van een eigen binaire indeling worden opgeslagen, kunnen uw klanten hun eigen schema's definiëren en uw gegevens op verschillende manieren gebruiken, zonder royalty's te hoeven betalen. Zie Inleiding tot nieuwe bestandsnaamextensies en Office XML voor meer informatie over de nieuwe indelingen.

  • Sommige Office-programma's gebruiken XML op de achtergrond en andere programma's zoals Microsoft Office OneNote ™ bieden helemaal geen ondersteuning voor XML. Als u wilt weten of een Office-programma ondersteuning biedt voor XML, start u de online-Help voor het programma en zoekt u op XML.

Maar wat als u XML-gegevens zonder schema hebt? De Office-programma's die XML ondersteunen, hebben hun eigen methoden die u kunt gebruiken om met de gegevens te werken. In Excel wordt bijvoorbeeld een schema toegewezen als u een XML-bestand opent dat nog geen schema bevat. Vervolgens hebt u de mogelijkheid deze gegevens in een alleen-lezenbestand te laden of de gegevens toe te wijzen aan een XML-lijst (in Microsoft Office Excel 2003) of een XML-tabel (in Office Excel 2007). U kunt de XML-lijsten en -tabellen gebruiken om de gegevens te sorteren, te filteren of om berekeningen aan de gegevens toe te voegen.

Office Professional 2007 en Microsoft Office 2003 bieden dezelfde verzameling XML-hulpprogramma's. In Office Professional 2007 moet u eerst XML-ondersteuning inschakelen waarna u de hulpprogramma's vanaf verschillende locaties kunt starten. Nadat u de hulpprogramma's hebt gestart, werken ze op dezelfde manier als in Microsoft Office 2003 en Office Professional 2007.

Opmerking :  In Microsoft Office Access 2007 worden de XML-hulpprogramma's standaard ingeschakeld, zodat u de eerste stappen kunt overslaan als u met Access werkt.

De XML-hulpprogramma's inschakelen in Office Excel 2007

  1. Klik in Excel op de Microsoft Office-knop Office-knopvlak en klik vervolgens op Opties voor Excel.

  2. Klik op Persoonlijke instellingen.

  3. Schakel onder De belangrijkste opties voor het werken met Excel het selectievakje Tabblad Ontwikkelaars op het lint weergeven in en klik vervolgens op OK.

    Opmerking : Het lint is een onderdeel van Microsoft Office Fluent-gebruikersinterface.

De XML-hulpprogramma's starten in Office Excel 2007

  • Klik op het tabblad Ontwikkelaar op een willekeurige beschikbare opdracht in de groep XML.

De XML-hulpprogramma's starten in Office Access 2007

  1. Klik op het tabblad Externe gegevens.

  2. Ga op een van de volgende manieren te werk:

    • Klik in de groep Importeren op XML-bestand.

    • Klik in de groep Exporteren op Meer en klik vervolgens op XML-bestand.

Delen Facebook Facebook Twitter Twitter E-mail E-mail

Was deze informatie nuttig?

Heel goed! Hebt u nog meer feedback?

Wat kunnen we verbeteren?

Bedankt voor uw feedback.

×