350 likes | 469 Views
The KB en Web 2.0. Verlaag de drempel om services te integreren. Theo van Veen, 7 n ovember 2006. Overzicht. Service s-infrastructuur Standaarden en uitbreidingen Ajax-technologie Uitleg van het concept van service integratie Voorbeelden en demo’s Wat moet er verder gedaan worden ?
E N D
The KB en Web 2.0 Verlaag de drempel om services te integreren. Theo van Veen, 7 november 2006
De KB en Web 2.0 Overzicht • Services-infrastructuur • Standaarden en uitbreidingen • Ajax-technologie • Uitleg van het concept van service integratie • Voorbeelden en demo’s • Wat moet er verder gedaan worden? • Issues
De KB en Web 2.0 Ik wil dat mijn “browser” informatie in webpagina’s herkent en mij de functionaliteit biedt die informatie te mengen met relevante informatie afkomstig van andere diensten. Ik wil dat de output van een dienst automatisch als input voor andere diensten gebruikt kan worden en ik wil controle houden over welke diensten ik daarbij gebruik en hoe ik ze gebruik.
De KB en Web 2.0 Services infrastructuur • Doel: • Met een minimum aan voorkennis omtrent de infrastructuur en zonder programmeerkennis • data en diensten van derden te kunnen gebruiken • en te integreren met eigen data en services en de data en services van derden • onder regie van de eindgebruiker Services-architectuur (extern) KB services-architectuur Gegevens-architectuur (extern) KB gegevens-architectuur
De KB en Web 2.0 Voorbeelden van services • Zoeken • Vertalen van (meta-)data • Analyse van tekst • Aanvragen van materiaal • Toevoegen van semantische tags aan website of object • Inzoomen op images • Toevoegen van recensies aan objecten • Services om dichtbij gelegen postcodes te vinden • Images opvragen van personen/objecten • Service om persoonsgegevens bij een naam te vinden • Gezochte tekst highlighten in images • Een locatie om te zetten in coördinaten • Woordenboek • Bestellen bij online bookshop • Etc.
De KB en Web 2.0 Hoe bereiken we optimale services-integratie? door: • Service georiënteerde architectuur op basis van http • Gebruik van standaarden • Publiceren van machine-leesbare service beschrijvingen • Creëren van registries met servicebeschrijvingen • Gebruik van technologie die eindgebruikers de regie geeft (Ajax) • maar ook: • Wat er NU (ook niet-gestandaardiseerd) beschikbaar is te gebruiken en te beschrijven zoals het is (Google en andere websites) • Het beschrijven van de relatie tussen services en metadata: welke metadata geven aanleiding tot aanbieden of oproepen van een specifieke service ! • Waar nodig lokale uitbreidingen van standaarden bieden en publiceren!
De KB en Web 2.0 Standaarden en uitbreidingen Zoeken: SRU (Search and Retrieval via URLs) SRU heeft ingebouwd uitbreidingsmechanisme Metadata: Dublin Core DCX: Dublin Core met extensies gepubliceerd in metada registry en multi-format database Service en collectie beschrijvingen: diversen (NISO, WSDL etc.) Semantiek van services Complexe objecten: MPEG21 DIDL Service voor opvragen van subobjecten via attributen in“gebruikersvriendelijke” URL
5. Link naar B met output van A als input voor B Kennis Data- base 2. interpreteer response van service A 1. Vraag en respons 3. Zoek metadata en services in kennis database User agent De KB en Web 2.0 Schematische weergave van het concept Output van service A Output van service A in link naar service B Description of service B Service B 4. Modificeer presentatie en voeg links e.d. toe naar service B Service A
De KB en Web 2.0 Demonstratie van simpele user agent <h3>Deze pagina demonstreert hoe het veld "<creator>Shakespeare</creator>" aanklikbaar gemaakt wordt d.m.v. een user agent. </h3><br /> HTML: Search images of this person in Google function make_link() { x=document.getElementsByTagName("creator"); ref='http://images.google.nl/images?q=%22' + x[0].childNodes[0].nodeValue + '%22&hl=nl&btnG=Afbeeldingen+zoeken' var link = document.createElement("a"); link.setAttribute("href", ref); link.setAttribute("title", "Search image of creator in Google"); pText = document.createTextNode(x[0].childNodes[0].nodeValue); link.appendChild(pText); x[0].replaceChild(link,x[0].childNodes.item(0));
De KB en Web 2.0 Normale response van Google Scholar
De KB en Web 2.0 OpenURL link toegevoegd door user agent
Response of the user’s OpenURL server when clicking the link De KB en Web 2.0
De KB en Web 2.0 Ajax (Asynchronous Javascript And XML) • Vanuit een enkele webpagina kunnen gelijktijdig verzoeken naar willekeurige webservers gestuurd worden (http-request). • Resultaten worden asynchroon door de webpagina binnen gehaald zonder het scherm te bevriezen. • Resultaten in XML kunnen geïntegreerd met andere data gepresenteerd worden. • Ajax maakt integratie van services eenvoudig: Integratie onder regie van eindgebruiker wordt vergemakkelijkt door integratie op werkstation
De KB en Web 2.0 Ajax: Asynchronous, Javascript and XML http GET SOAP http POST SRU XSLT en Javascript XML service beschrijvingen Integratie in de browser! XML service beschrijvingen (SRU) XSLT user agent
De KB en Web 2.0 Kennis database • Machine leesbare beschrijving van services: • URL • URL syntax • Request parameters • Vaste parameters • toegangsmechanisme (POST, GET, SOAP) • En relatie tussen service en metadata: • Welke metadata geven aanleiding tot het aanbieden van een service? • Hoe moeten metadata gebruikt worden voor de service? 1 2 3 4 5
De KB en Web 2.0 Ontwikkelingen en verwachtingen • Services kunnen getriggered worden op basis van complexere criteria dan alleen het voorkomen van een veld in een gestructureerd metadata record • Services kunnen in de achtergrond geactiveerd worden en alleen zichtbaar worden indien relevant i.p.v. de gebruiker vooraf lastig te vallen met keuzes • Services kunnen andere services triggeren • Web pagina’s kunnen (semi-automatisch) geanalyseerd worden om potentiële services te vinden en nieuwe service beschrijvingen te genereren en toe te voegen aan de persoonlijke kennisdatabase (vergelijk favorieten in de browser) • Door het standaardiseren van service beschrijvingen kunnen gebruikers of user agents service beschrijvingen uitwisselen
De KB en Web 2.0 Wat kunnen service/data aanbieders doen? • Lever machine leesbare output (XML) • Semantic tagging binnen HTML pagina’s om metadata te kunnen herkennen (microformats) • Voorkom complexe interpretatie van output • Voorkom complexiteit bij het genereren van dynamische links naar services • Probeer de input voor services zo specificeren dat vergelijkbare services op dezelfde manier kunnen worden aangesproken • Plaats beschrijvingen van services op een standaard locatie bijvoorbeeld http://your.host/services.xmlen vindbaar via Google • Creëer registries met service beschrijvingen • Maak gebruik van de drijvende krachten om een kritieke massa te creëren: • Lage implementatiedrempel, houdt het simpel! • Een hoge “fun-factor”!
De KB en Web 2.0 Uitstaande issues • Zijn data providers bereid machine leesbare data te leveren zonder “branding”? • Nog te veel variatie in metadata • Veiligheidsprobleem in browsers met het mixen en mengen van services en data uit verschillende domeinen • Service providers zijn zich vaak niet bewust dat sommige van hun webpagina’s bruikbaar zijn als service en integreerbaar met andere services • Data providers zijn nog niet klaar voor Web 2.0 en “zitten” nog te veel boven op hun data
De KB en Web 2.0 Dank voor uw aandacht Email: theo.vanveen@kb.nl