Sinds een half jaar is er een nieuwe norm voor interactief webgebruik: X forms. Deze norm moet het ontwerpen en gebruiken van interactieve webpagina’s verbeteren. Steven Pemberton, voorzitter van de W3C-werkgroep die X formulieren ontwikkelde, vertelt over het doel, de ontwikkeling en het toekomstige gebruik ervan.
Pemberton, een Engelsman, kwam in 1982 voor een jaar werken bij het CWI (Centrum voor Wiskunde en Informatica) te Amsterdam. Hij werkt daar nog steeds aan onderzoek om de mens-machine interface te verbeteren. Naast voorzitter van de W3C (World Wide Web Consortium) Html- en X forms-werkgroepen is hij hoofdredacteur van ACM interactions, een blad gewijd aan mens-machine interactie.
Hij vertelt hoe de samenwerking met het wereldwijde web samenviel met zijn werk. “Voor ons onderzoek hadden we eind jaren tachtig een applicatie-omgeving ontwikkeld voor het creëren van applicatie-interfaces die veel leken op de huidige browsers, compleet uitgevoerd met ‘markup-tags’, ‘stylesheets’, ‘scripting’ enzovoort. Op de eerste W3C-conferentie in 1994 heb ik twee workshops geleid over ‘client-side computing’ en elektronisch publiceren. Ik ontmoette Tim Berners-Lee, die vertelde van zijn plannen om het W3 Consortium bij het MIT te vestigen. Ik vond het jammer dat de Cern-activiteiten naar de VS verhuisden en besloot om zoveel mogelijk activiteiten in Europa te houden.”
Ontbreken
‘Markup tags’ en ‘stylesheets’ bestonden al voor 1980, onder andere bij IBM. Ze werden gebruikt om de structuur en presentatie van informatie aan te geven los van die informatie zelf. Het voordeel is dat je de informatie zelf slechts eenmaal hoeft in te voeren. Je kunt de presentatie daarvan met verschillende ‘stylesheets’ definiëren. Je scheidt dus de inhoud en de presentatie (op papier of in een beeldscherm). Daardoor wordt het mogelijk om dezelfde informatie op een groot beeldscherm of een klein telefoonscherm weer te geven, met of zonder plaatjes en in zwart/wit of kleur.
Dit principe werd ook gebruikt voor het web. Browsers worden door de definitie van Html ‘markup tags’ gestuurd om informatie op een bepaalde manier af te beelden, niet alleen normaal/vet/cursief, maar ook grootte en kleur, illustraties enzovoort. Browser-oorlogen ontstonden tussen onder meer Netscape en Microsoft over extra ‘markup’-functies, maar uiteindelijk werd iedereen het eens over de norm: Html 4. Het web werd later uitgebreid met CSS (Cascading Stylesheets) en XML (eXtensible Markup Language). In het begin werd ook de mogelijkheid geschapen voor interactieve webpagina’s: Html forms. Iedereen gebruikt die nu al jaren, bijvoorbeeld voor een zoekopdracht in Google, een webpagina met knoppen, je opgeven voor een seminar of conferentie, e-commercie enzovoort. Deze formulieren zijn echter erg eenvoudig. De gebruiker kan ze alleen gebruiken om informatie in te voeren, waarna deze gegevens in de server gecontroleerd moeten worden.
Die controle kan efficiënter en sneller in de client zelf plaatsvinden, terwijl de gebruiker de informatie intypt. Dat is het idee achter X forms. Pemberton: “We zijn begonnen met een uitgebreide analyse van de functies die ontbraken in Html formulieren en die in X formulieren nodig waren. Daaruit hebben we de vereisten gedefinieerd en zijn we aan de slag gegaan.”
Essentie
Enkele van die vereisten zijn: gegevens controleren tijdens het typen; controleren dat bepaalde velden ingevuld worden; controleren dat de ingevoerde gegevens aan bepaalde voorwaarden voldoen; berekeningen met deze gegevens in een nieuw veld inbrengen; invoergegevens als XML versturen; integratie met webdiensten door gebruik van Soap en XML; hetzelfde formulier naar verschillende servers kunnen sturen; formulieren als bestand kunnen opslaan en reconstrueren; gegevens van een formulier kunnen gebruiken in een nieuw formulier; de initiële gegevens voor een formulier uit een extern bestand halen; en lussen gebruiken voor het herhalen van bepaalde onderdelen.
De essentie van X formulieren is dat de gegevens, hun presentatie, en de controle en berekeningen gescheiden zijn. Pemberton: “Dit vergemakkelijkt en verbetert het ontwerp van webformulieren, vooral van de uitgebreide, omdat deze drie onderdelen dan onafhankelijk van elkaar zijn aan te passen. De gebruiker ervaart een snellere terugkoppeling bij foutief ingevulde gegevens. De mogelijkheid van herhaling maakt het eenvoudig om een boodschappenmandje te coderen. Voor de presentatie is ook aan blinden en telefoneren gedacht, doordat je het formulier kunt afluisteren en inspreken.”
De norm is leverancieronafhankelijk. Dat is cruciaal, zegt Pemberton, omdat we niet willen dat een leverancier de norm naar zich toetrekt en eigen aanpassingen gaat maken. Een situatie als bij im (instant messaging), met im-implementaties van drie leveranciers die niet met elkaar kunnen communiceren, moet voorkomen worden.
Kritische massa
Dat klinkt allemaal fantastisch; iedereen zal X forms direct willen gaan gebruiken. Hoe en wanneer? Pemberton: “De kritische massa van de meeste W3C-technologiën wordt pas na een jaar of vijf bereikt. Dat is lang, maar het blijkt veel sneller te gaan met X formulieren: we hebben nu al veel implementaties en gebruikers. Je moet wel eerst voldoende infrastructuur hebben, want je hebt óf een speciale browser óf een ‘plugin’ voor bestaande browsers óf een proxyserver nodig om de X forms-coderingen te kunnen verwerken.”
Hij vertelt dat er op de dag dat de norm aangenomen werd al 25 implementaties beschikbaar waren om de X formulieren af te beelden en te verwerken. De gehele Britse levensverzekeringsindustrie, een deel van de Amerikaanse marine, een Duitse scheepsbouwer, het Fraunhofer Instituut en een Japanse bank hebben al besloten om X formulieren te gaan gebruiken. Is het ook voor edi – gegevensuitwisseling tussen bedrijven – te gebruiken? Pemberton: “X formulieren zijn alleen bedoeld voor XML-gegevensuitwisseling. Er is wel een XML-versie van edi. Daarvoor kan je X formulieren gebruiken. Zakelijke gegevensuitwisseling met XML lijkt nu echter meer plaats te vinden via Soap. X formulieren werken overigens ook met Soap.”
Zijn X formulieren bruikbaar voor het semantische web, één van de onderwerpen van W3C? Pemberton: “Het semantische web wordt meestal gecodeerd in XML en X formulieren kunnen alle gegevens in XML verwerken. Het vereenvoudigt het invullen van gegevens voor het semantische web. Veel website-auteurs vinden Resource Description Facility, de ‘markup’ taal voor het semantische web, moeilijk. Met X formulieren kun je RDF-gegevens invullen zonder geconfronteerd te worden met die taal.”
Eerst verticaal
Hoe gaat het nu verder? Pemberton: “We zijn nu bezig met het onderhoud van en de voorlichting over X formulieren. Er zijn nog wat onduidelijkheden en kleine verbeteringen. Als er meer ervaring is, zal er mogelijk een opwaardering komen met nieuwe mogelijkheden. Daarna gaan we een grote wensenlijst samenstellen, en zien we wel wat er wanneer nodig zal zijn. Allereerst moeten we praktische ervaring opdoen.”
Is er nieuw gereedschap nodig voor het ontwerpen van X
W3C Homepage: http://www.w3.org/MarkUp/Forms Introductie: http://www.w3.org/MarkUp/Forms/2003/xforms-for-html-authors.htm Implementaties: http://www.w3.org/MarkUp/Forms/implementations |
X formulieren worden zeker populair voor het ontwerpen van interactieve webpagina’s. Gebruikers zullen daarbij merken dat de schermen onjuist ingevulde informatie slimmer en sneller ontdekken. Pemberton: “Met alle nieuwe webtechnologieën merk je dat ze eerst toegepast worden binnen bedrijven en verticale industrieën als de levensverzekeringsindustrie, waar men meer controle heeft over de softwareomgeving. Pas later, als meer mensen de benodigde software hebben, wordt de technologie horizontaal toegepast, bijvoorbeeld bij Amazon.’
Dat X formulieren zo snel geaccepteerd worden, was nogal onverwacht. Interactieve schermen staan sterk in de belangstelling. X forms is duidelijk een oplossing voor veel ontwerpers die zich met de huidige Html forms in allerlei bochten moeten wringen.< BR>