Semistructured data, XML en querytalen > Conclusie
Het eerste gedeelte van mijn onderzoeksvraag ging over de vraag wat semistructured data, en in het bijzonder XML, is en hoe het gepresenteerd kan worden. Semistructured data zijn data die nauwelijks of geen vaste structuur hebben. Informatie over de structuur wordt bij semistructured data in de data zelf opgeslagen en niet in een apart schema. Er zijn een drietal redenen waarom semistructured data interessant zijn:
Om semistructured data te representeren wordt gebruik gemaakt van het OEM model. Dit kan gevisualiseerd worden in een tekening of plaatje met behulp van een boom structuur. Hierbij zijn de knopen verschillende objecten, geïdentificeerd met een oid, en de takken zijn de labels of attribuutnamen.
Er zijn nog een aantal gebieden waarop onderzoek gedaan kan worden naar semistructured data. Deze worden besproken in paragraaf 2.3
XML is ook een vorm van semistructured data. Het is afgeleid van SGML en vooral bedoeld voor de elektronische uitwisseling van machine leesbare data over internet, in tegenstelling tot bijvoorbeeld HTML, wat ook een subset is van SGML, dat vooral bedoeld is voor het leesbaar maken van documenten voor mensen op het internet. De voordelen van XML zijn dat de gebruiker zelf tags kan definiëren en dat een XML document een DTD kan bevatten. In een DTD staat de grammatica van een XML document beschreven en kan gebruikt worden bij validatie van en document. De grammatica van XML is goed vergelijkbaar met die van HTML, met als een belangrijk verschil dat alle tags zowel een opentag als een sluittag moeten hebben, iets dat in HTML niet verplicht is.
Het tweede gedeelte van mijn onderzoeksvraag ging over querytalen voor XML. Welke eisen worden aan een querytaal gesteld en in hoeverre voldoen bestaande querytalen aan deze eisen. In paragraaf 3.1 is een opsomming gegeven van de verschillende eisen die gesteld zouden moeten worden aan een querytaal voor XML. Om dit na te gaan heb ik gekozen voor drie querytalen, namelijk XML-QL, XQL en Lorel. De reden dat ik voor deze drie gekozen heb, is dat ze op verschillende manieren ontstaan zijn en zo een breed beeld geven van de mogelijkheden van querytalen. XML-QL is ontstaan in de databasegemeenschap en helemaal ontworpen voor XML. Lorel komt ook uit de database wereld maar is doorontwikkeld uit een querytaal voor object georiënteerde databases, via een querytaal voor semistructured data tot een querytaal voor XML. XQL tenslotte is ontstaan in de documentgemeenschap. Dit is ook beschreven in paragraaf 3.2.
In paragraaf 3.3 wordt vervolgens voor de verschillende querytalen nagegaan hoe ze werken en of ze voldoen aan de gestelde eisen. Daaruit komt naar voren dat over het algemeen XML-QL iets beter presteert dan de andere twee querytalen. XML-QL laat vooral wat steekjes liggen bij document operaties. Op de tweede plaats komt Lorel en als derde XQL. Een belangrijke reden hiervoor is dat, zeker bij de voorbeeldqueries, de nadruk vooral ligt op database operaties. XQL is juist sterker op het gebied van document operaties en, mede daarom, minder sterk in database operaties. Daar staat tegenover dat XQL goed overweg kan met document operaties. Hierbij moet vooral gedacht worden aan het behouden van de originele structuur van het document, het overweg kunnen met metadata en, als het over XML gaat, de output in XML formaat kunnen gieten en XML opnemen in de queries zelf.
Als naar het algemene resultaat gekeken wordt, is het misschien wel Lorel dat het beste scoort. Deze querytaal presteert nooit als beste, maar ondersteunt wel de meeste functies. Het enige nadeel is dat het niet altijd even intuïtief is en daarnaast is het niet in staat om XML output te genereren. Als gekeken wordt naar de meer algemene eisen, hebben alledrie de querytalen dezelfde tekortkomingen. Alledrie kunnen ze niet overweg met een eventueel meegeleverde DTD, ze ondersteunen geen nieuwe datatypes en de syntax van deze talen is niet om te zetten naar XML.
Bij de verdere ontwikkeling zou het goed zijn als er ook met deze laatste punten rekening gehouden zou worden. Daarnaast is het niet verkeerd om, naast aandacht voor de database operaties, ook voldoende aandacht te besteden aan de mogelijkheden tot document operaties. Daarnaast zijn verbeteringen op het gebied van de drie eerder genoemde punten, waar alle onderzochte querytalen slecht op scoorden, ook wenselijk.
Als ik deze literatuuronderzoek bekijk als opstap naar mijn scriptie, zou ik mij in mijn scriptie willen concentreren op een van de besproken querytalen, namelijk XML-QL. In mijn scriptie zou ik vervolgens in meer detail kunnen nagaan wat de mogelijkheden en onmogelijkheden zijn van deze querytaal. Hierbij valt te denken aan een uitdieping van de eisen die in deze litertauurstudie gesteld worden. Maar misschien ook een verkenning naar meer eisen die gesteld zouden kunnen worden aan een XML-querytaal en XML-QL in het bijzonder. Door middel van een implementatie kan nagegaan worden hoe deze querytaal zich houdt in de praktijk en in hoeverre het al een volwassen medespeler is in de wereld van de informatievoorziening via semistructured data en het web. Gedacht kan hier worden aan een applicatie met gebruikersinterface via welke gebruikers informatie opvragen uit een bepaald document of een verzameling documenten.
De literatuur die ik gebruikt heb gaf mij een goed overzicht van het onderwerpsgebied waar ik mij op richtte. Hierbij moet wel opgemerkt worden dat de groep auteurs een vrij beperkte was; een aantal auteurs waren ook weer coauteurs bij andere papers. De meeste literatuur is nog niet erg oud en daardoor ook redelijk up to date. Dit komt mede omdat XML en bijbehorende querytalen ook nog een relatief nieuw onderwerp zijn.
| << vorige | volgende >> | Robert Bouma, 19-04-2002 |