Ik denk dat je wat dingen door elkaar haalt.
XML zelf is een tekstformaat waarmee gegevens op een gestandaardiseerde en gestructureerde manier beschreven kunnen worden, die ook redelijk makkelijk lees- en schrijfbaar is *voor zowel mens als machine*. Meer is het in principe niet.
Het wordt vooral gebruikt als uitwisselingsformaat, om gegevens uit te wisselen tussen informatiesystemen die niet rechtstreeks met elkaar kunnen praten. Tegenwoordig wordt XML ook vaak gebruikt om (al dan niet beperkte hoeveelheden) data op te slaan, bijvoorbeeld van configuratiebestanden.
Gegevens die in XML-formaat zijn opgeslagen, heten XML-documenten.
Rondom XML bestaan een aantal andere op XML gerichte en/of gebaseerde 'talen':
- XML Stylesheet Templates (XSLT of XSL), waarmee je een XML-document kunt ‘omvormen’ naar XML met een andere indeling, of naar HTML, of naar 'platte' tekst.
- XPath, dat is een 'opvraagtaal' waarmee je eenvoudig een bepaald stukje uit een XML-document kunt selecteren. XSLT maakt gebruik van XPath.
- XML Schema, dat is een beschrijvende taal, waarmee je kunt afspreken hoe een specifiek XML-document ingedeeld moet zijn. Dit is handig wanneer je bv. gegevens met een externe partij moet uitwisselen. Een XML Schema-document (ook bekend als XSD) is zelf ook XML.
- XQuery, maar daar heb ik zelf niet zoveel ervaring mee.
En er worden nog steeds nieuwe uitbreidingen, en mogelijkheden ontdekt en bedacht.
Door de wijdverbreide acceptatie van de standaard is XML op de meeste platforms vrij makkelijk uit te lezen, en zijn er vele libraries beschikbaar om XML te parsen (lezen), te valideren, en te schrijven.
Dan nu over je vraag: in je toevoeging schrijf je dat jij XML ziet als een tool waarmee een database bewerkt kan worden. Over welk soort/merk/type db heb je het?
Ik denk zo aan de volgende situaties:
1. je database-engine maakt gebruik van XML om gegevens te importeren en exporteren, en jij wil op die manier de database bijwerken;
2. je database-engine slaat al zijn gegevens op als één of meer XML-document, en jij wilt die kunnen selecteren (met XPath) en transformeren (met XSLT);
3. ongeacht hoe je database zijn gegevens opslaan, je hebt een programma die de gegevens kan bewerken, maar die alleen met instructies in XML-formaat overweg kan (of het nou XSLT of een andere - al dan niet zelfgebakken - op XML gebaseerde taal is)
Zit ik hiermee in de buurt? Afhankelijk van je antwoord kan ik (of iemand anders) je dan misschien wat gerichter helpen.