De oplossing voor alle kwalen

3 mei 2005

Steeds als er nieuwe technologie beschikbaar komt denken mensen dat het als een wonder alle problemen van heden en verleden, zonder bovenmatige inspanning van hun kant, zal oplossen. Dat gebeurt echter nooit. Nieuwe technologie bouwt voort op de ervaring uit het verleden, maar veronderstelt uiterst zelden het vergeten van het verleden. Om eerlijk te zijn: nieuwe problemen doen zich niet of nauwelijks voor; de meeste ervan hebben we op de een of andere manier al lang ontmoet. Nieuwe technieken bieden echter vaak nieuwe en innovatieve oplossingen voor oude problemen. Dat gaat ook op voor XML.

Geert-Jan van Bussel



XML is niet de oplossing voor alle kwalen. Het kan niet als een wondermiddel alle redundante dataversies die binnen de meeste organisaties bestaan integreren. XML kan ze niet vervangen door één, uniform gedeelde versie van geïntegreerde data. Maar het kan ons wel helpen die doelstelling te bereiken als we het op de juiste wijze gebruiken.

XML maakt het noodzakelijk dat een organisatie schoon schip maakt met alle verschillende woorden en betekenissen die vaak aan een en hetzelfde object worden gehangen. Als voorbeeld: mensen kunnen op verschillende wijzen worden aangeduid: als klanten, cliënten, debiteuren e.d. Dit zijn allemaal aanduidingen van mensen die produkten kopen van de organisatie. Deze verschillende aanduidingen duiden op semantische verschillen. Het is van groot belang voor iedere organisatie om de verschillende betekenissen van de gegevens te kennen die binnen de organisatie worden gebruikt (metadata). Alleen op basis daarvan kan een standaard terminologie ontwikkeld worden (met een uniforme vaststaande betekenis) als geïntegreerde metadata, die in de processen van de organisatie worden gebruikt. Slechts op deze manier kan semantische integriteit worden gerealiseerd. Geen enkele organisatie is echter bereid voor semantische integriteit de talloze legacy-systemen, die kapitalen gekost hebben en kosten, aan de kant te schuiven voor een geïntegreerd model. Economisch gezien is dat onverantwoord. Maar als we de semantische verschillen begrijpen en afspraken kunnen maken over geïntegreerde meta data dan kunnen met behulp van XML de kosten aanzienlijk worden verlaagd.

XML maakt het mogelijk dat iedere applicatie (of iedere organisatorische eenheid) haar metadata-taal documenteert in afzonderlijke taaldictionaries. Een dergelijke dictionary wordt gedocumenteerd in een XML-DTD (Document Type Definition) als ‘application meta data’. De gebruikte terminologie wordt vervolgens voor het bedrijf bepaald als ‘integrated meta data’. Uiteraard bestaan er semantische verschillen tussen deze beide soorten metadata, maar met behulp van XML kunnen deze verschillen worden ‘opgelost’. Voorbeeld: de metadata gebruikt bij de verkoopafdeling voor ‘klant’ en de meta data gebruikt door de debiteurenadministratie voor ‘cliënt’ verwijzen beide naar hetzelfde object: het zijn geïntegreerde metadata voor ‘organisatie’. XML voert vervolgens deze semantische transformatie uit.

XML zelf kan nooit de semantische problemen oplossen van legacy systemen en databases: gegevensredundantie. De enige manier om dit op te lossen wordt niet uitgevoerd: ‘tossing aside all systems and start again’. Onhaalbaar. Met XML kunnen de diverse dataversies echter dynamisch gesynchroniseerd worden door XML Messaging. Deze berichten zijn identiek aan de berichten waarin de diverse applicatiebeheerders gevraagd werd hun verschillende gegevensversies te updaten met de meest actuele variant. Maar via XML Messaging vindt deze synchronisatie electronisch plaats. XML maakt het derhalve mogelijk om de voordelen van integratie te genieten zonder werkelijk een enkele, gedeelde, uniforme en geïntegreerde database te bezitten. En daarvoor is het niet eens nodig alle bestaande legacy-systemen aan de kant te schuiven.

Het beschreven probleem wordt enkel groter op het moment dat organisaties op electronische wijze door B2B (= business-to-business) handel gaan drijven. Ook hier kan XML gebruikt worden om een transformatie uit te voeren tussen de ‘application meta data’; en de ‘integrated meta data’. XML Messaging kan hier aan beide zijden van de kabel ervoor zorgen dat de data automatisch worden gesynchroniseerd. XML is platform-onafhankelijk en kan daarom ongeacht de oorsprong van het legacy-systeem deze activiteiten uitvoeren. Deze integratie staat bekend als ‘enterprise application integration’ (EAI).

Synchronisatie uitgevoerd dor XML maakt derhalve integratie mogelijk. De vraag is overigens wel of deze synchronisatie zomaar kan worden toegepast. Wel in de actuele bestanden, waarbij het van zeer grote betekenis is dat de gegevens zo recent mogelijk zijn en de situatie weergeven zoals hij nu is. Niet in de historische bestanden waarin de gegevens opgenomen zijn in de status waarin ze waren toen historische transacties werden uitgevoerd. XML zal onderscheid moeten kunnen maken tussen actuele en historische gegevens. Op zich kan dat: het hangt af van de wijze waarop een DTD wordt geformuleerd en waarop de regels die daarin zijn opgenomen zijn gebaseerd. Toch zit hier wel een probleem, want zo simpel is dat onderscheid niet. Wat we willen is eigenlijk ook tegenstrijdig: redundantie in de actuele situatie is in principe niet wenselijk, in de historische situatie is redundantie vaak noodzakelijk. In de historische situatie zullen diverse (wellicht zelfs vele) dataversies aanwezig zijn, die de status weergeven van het gegeven op dat moment, in die setting en in die specifieke transactie. XML moet historisch leren denken. Op dat moment wordt XML nog interessanter voor de informatiebeheerder.

Share This:

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.