S09-10 Onki-palvelut verkkoportaalissa
description
Transcript of S09-10 Onki-palvelut verkkoportaalissa
S09-10 Onki-palvelut verkkoportaalissa
Erik FalleniusKevät 2009
Taustaa◦ Ontologiat
Tavoitteet Teknologiat
◦ Dojo/AJAX◦ JSON◦ SOAP
Projektin kulku Lopputulos – demo
Sisältö
Ontologiat ovat käsitemalleja, joissa yksilöidään tietyn aihealueen käsitteet ja kuvataan käsitteiden väliset suhteet loogisella, tietokoneen ymmärtämällä tavalla.◦ Sisällön yhdenmukaiseen ja yksiselitteiseen
kuvaamiseen ja käsittelyyn Käyttökohteet
◦ Älykkäät verkkoporttaalit Uutissivustolla linkit samantyyppisiin artikkeleihin
◦ Semanttinen hakukoneet Synonyymien tulkinta
Ontologia-käsite
Metadatan lisääminen dokumenttiin RDF
◦ Olioiden väliset suhteet kuvataan xml-kieleen perustuvalla W3C:n standardoimalla rdf-tietomallilla (resource description framework).
Annotointi
“AS-0.3200” “Kurssi”“Kuuluu käsitteeseen”
RDF-tripletti
Kansallinen ontologiapalvelu Avoin ontologiakirjasto
◦ 20+ ontologiaa◦ Semanttiset linkit ontologioiden välillä
http://www.yso.fi/?l=fi
ONKI
Tutustua teknologioihin◦ AJAX
Javascript-pohjaista kehitystä◦ Dojo◦ JSON◦ SOAP
Soveltaa teknologioita◦ Web-käyttöliittymä XML-datan annotointiin onki-
palveluja käyttäen Käytännössä kaksi projektiaihetta
◦ S09-10 Onki-palvelut verkkoportaalissa◦ S09-06 Ajax-tekniikkaa hyödyntävä web-käyttöliittymä
Työn tavoitteet
AJAX◦ Asynchronous JavaScript And XML◦ Sivun päivitystä selaimessa ilman kokonaista
uudelleenhakua Esim hakukentän täyttö serveriltä
Java Servlet
Teknologiat
Web service◦ SOAP-XML
Käyttöönotto vaikeaa, autentikoinnissa epäselvyyksiä
Rajapinta◦ http://www.yso.fi/onkiwebservice/?o=yso&l=fi◦ getAvailableLanguages()◦ getAvailableTypeUris()◦ Search()◦ getLabel()
Java-luokkien luonti WSDL-descriptionin perusteella Eclipsessä◦ WSDL2Java (Apache foundation)
ONKI-rajapinta
Javascript peruslogiikan parannusta Valmis komponenttikirjasto
◦ Tietovarastoja XML
XPATH tuki Serveriyhteys
◦ Käyttöliittymäkomponentteja Valikkoja Taulukkoja Puurakenne
Kevään aikana versio 1.3◦ Monta uutta ominasuutta◦ Dokumentaatio vanhentunutta ja puutteellista
Dojo
Firefox plugin webkehitykseen Ajax-kutsujen seuranta
◦ Sisältö◦ Vastaukset◦ Vasteajat
JavaScript-debuggaus Sivun rakenteen (DOM) tutkiminen ja
muokkaaminen lennossa http://getfirebug.com
Firebug
Arkkitehtuuri
XML storage
RDF storage
ONKI portal
Java Servlet
ServerClient
AJAX
SOAP web service
Dojo UI components
1. Käyttäjä syöttää kirjaimen hakukenttään2. Selain lähettää AJAX-pyynnön servletille3. Servletti lähettää pyynnön ontologiapalveluun SOAP:in
kautta4. Ontologiapalvelu palauttaa listan käsitteitä5. Servletti koostaa käsitteistä JSON-dataobjektin ja lähettää
sen käyttäjän selaimelle6. Käyttäjän selain listaa hakukentässä täydennysvaihtoehdot
Hakukentän sisältö
Teknologioiden oppimiskäyrä jyrkkä◦ Alussa tuhlattua aikaa ja turhautumista
Ensimmäinen prototyyppi haudattu ~40h työpanoksen jälkeen◦ Liikaa käsin koodausta
“Valaistuminen” projektin viimeisien viikkojen aikana◦ Uudelleenkehitystä alusta alkaen, hyödyntäen Dojo-
komponenttejä◦ “JavaScriptillä voi oikeasti ohjelmoida ja luoda
käyttöliittymiä”◦ Teknologioita huomattavasti paremmin hyödyntävä
versio
Projektin kulku
Projekti pääasiassa valmis Lisäyksistä sovittava valvojan kanssa
Jatkotoimenpiteet
Kysymyksiä?
Lopuksi..