Sisältö Semanttinen Web - tulevaisuuden Internet? Prof. Eero Hyvönen eero.hyvonen@cs.helsinki.fi Helsingin yliopisto ja Helsinki Institute for Information Technology (HIIT) 27-Mar-02 1 WWW tänään Palvelut ja tiedonhaku: ongelmia Tiedon esitys: merkkauskielet Toiminnan esitys: ohjelmointi Tulevaisuuden WWW Semantic Web -visio Tasot ja standardit Sovellusalueita 27-Mar-02 2 WWW:n perusta WWW tänään URI osoitteet: resurssit Sivustot, dokumentit, kuvat jne. HTML-kieli WWW-sivujen julkaiseminen Hyperlinkit HTTP ym. protokollat Sähköposti Keskusteluryhmät 27-Mar-02 3 27-Mar-02 4 WWW tänään: palvelut ja tiedonhaku Toiminnalliset palvelut Pankit, kaupat, virastot jne. Tiedonhaun palvelut Hakukoneet (Google, AltaVista jne.) Portaalit, hakemistot Yahoo! jne. Kallis ja hankala ylläpito Arkistot, museot, kirjastot jne. Tietokannat eri sovelluksissa 27-Mar-02 5 Toiminnalliset palvelut: ongelmia Yhteisten sanastojen ja standardien puute Tiedot: esim. eri yritysten tuotekatalogit Prosessit: esim. ostoprosessin kuvaaminen Järjestelmien monimutkaisuus ja kalleus Esim. EDIFACT Toimintojen/palveluiden monimutkaisuus Esim. liikematkan osapalveluiden yhdistäminen 27-Mar-02 6
Tiedonhaku: ongelmia Laadun mittaaminen Recall: Kuinka monta % relevanteista löytyy Precision: Kuinka monta% löytyneistä relevantteja Relevance: Vastaako tulos haluttua Suomessa sanamuodot ja johdokset ongelmana 27-Mar-02 7 Hakusana voi esiintyä epärelevantissa dokumentissa "This page is not about politics" Synonyymien tunnistaminen Venus =/= Aamutähti =/= Iltatähti => low recall Homonyymien tunnistaminen Nokia -> firman ja kaupungin nimi => low precision 27-Mar-02 8 Yleistermien käyttö vaikeaa Esim: Pohjoismaat -> Suomi, Ruotsi,... Käyttäjän tunnettava eritystermit Fraasien käyttö Esimerkiksi Helsingin yliopisto Relevanssi Haun tuloksena yleensä paljon osumia Dokumenttien järjestys "hyvyyden" mukaan vrt. Googlen innovaatio 27-Mar-02 9 Implisiittinen tieto Joulu-sanalla ei välttämättä löydy pukki-sivua Hajautunut tieto Esim. hae tutkimusryhmään kuuluvien julkaisut 27-Mar-02 10 Merkkauskielten idea Tiedon esitys: merkkauskielet (markup languages) 27-Mar-02 11 Ympäristöriippumattomia standardeja dokumenttien luomiseen hallitsemiseen siirtämiseen Dokumentit tekstitiedostoja Avoin yksinkertainen formaatti Käytössä kaikilla HW/SW-alustoilla Helppo muokata, tallentaa, lukea, siirtää Käytettävissä tulevaisuudessakin 27-Mar-02 12
Ideana erottaa rakenne, sisältö ja ulkoasu Kuvataan rakenne yleisesti merkkauksilla (ohjelmoija) Esim. HTML: <H1>Otsikko </H1> Kuvataan sisältö (ohjelmoija) Esim. XML: <OSOITE> Tietotie 3 </OSOITE> Ulkoasusta päättää lukija (selain) Esim. PC, kännykkä tms. Käytännössä työnjako menee helposti sekaisin Esim. tekstin korostus tai koko on selaimen asia: <EM> Korostettu teksti </EM> Loogisesti oikein; ei oteta kantaa siihen miten korostus tehdään <I> Korostettu teksti (kursiivi) </I> Loogisesti väärin, jos ajatuksena on vain korostaa tekstiä 27-Mar-02 13 27-Mar-02 14 HTML SGML Hyper Text Markup Language WWW-sivujen kirjoittamiskieli Kaikkien selaimien tukema Tuettu versio kuitenkin vaihtelee! Esim. HTML:n uudet ominaisuudet, Java-tuki jne. Selaimet voivat näyttää sivuja hieman eri lailla Esim. puutteellisten kuvausten oletusarvoiset täydentämiset, fonttivalikoimat jne. Sivut on siksi aina hyvä testata eri selaimilla! 27-Mar-02 15 Standard Generalized Markup Language Metakieli, jonka avulla voidaan määritellä merkkauskieliä Data Type Definition (DTD) -määrittelyt Monimutkainen ISO standardi 1986 EsimerkiksiHTML on yksisgml:n määrittely 27-Mar-02 16 XML Extensible Markup Language SGML:n yksinkertaisempi osajoukko (20%) XML korvannut käytännössä SGML:n Voidaan määritellä sovelluskohtaisia markup-kieliä <HENKILO> <NIMI> Onni Opiskelija</NIMI> <PUHELIN> 123456 </PUHELIN> </HENKILO> 27-Mar-02 17 Uuden kielen syntaksin määrittely DTD-kuvaus: oma määrittelykieli XML Schema: määrittely XML-perustaisesti Ulkoasu: extensible Style Language (XSL) XSLT: muunokset, esim. HTML-sivuksi XSL-FO: oma layout-kieli 27-Mar-02 18
XML-esimerkki (DTD) <?xml version="1.0"?> <!DOCTYPE CONTACTS [ <!ELEMENT CONTACTS (CONTACT+)> <!ELEMENT CONTACT (NAME, PHONE+, ADDRESS, IMG?)> <!ELEMENT NAME (#PCDATA)> <!ELEMENT PHONE (#PCDATA)> <!ATTLIST PHONE type (home work gsm ) "work"> <!ELEMENT ADDRESS (#PCDATA)> <!ELEMENT IMG EMPTY> <!ATTLIST IMG src CDATA #REQUIRED> <!ENTITY Uni "University of Helsinki"> ]> <CONTACTS> <CONTACT> <NAME>Mika Klemettinen</NAME> <PHONE type="work">191 44159</PHONE> <PHONE type="gsm ">050-54 78 595</PHONE> <ADDRESS>& Uni;</ADDRESS> <IMG src="mika.jpg"/> </CONTACT> </CONTACTS> 27-Mar-02 19 Miksi XML? Samalle sisällölle eri ulkoasuja Eri laitteet (PC, kännykkä, ) Eri sovellukset (WWW-sivu, painettu kirja, ) Sisällön/rakenteen hyödyntäminen Esim. parempi osumatarkkuus hakukoneissa Laadun kontrollointi Syntaksin tarkistus mahdollista 27-Mar-02 20 Merkkauskielten merkitys XML on Webin perusta jatkossa Tietojen koodaus avoimessa muodossa Runsaasti standardeja eri aloille Avoimet rajapinnat Javaym. kieliin Ohjelmallinen sivujen käsittely 27-Mar-02 21 Muodostavat WWW:n perustan Helppokäyttöisiä näyttäviä sivuja käyttäjille Helppoja tehdä toteuttajan näkökulmista Avoimet yhteiset standardit Valmistajariippumattomuus Stabiilisuus tiedostoformaattien muutoksia vastaan Sivut ovat yksinkertaisia tekstitiedostoja Sovellusaluekohtaiset standardikielet 27-Mar-02 22 Standardointi WWW-kehityksen yleiskoordinointi WWW Consortium (www.w3.org) Valmistajien, operaattoreinen jne. yhteistyöelin Laatii WWW-suosituksia Sovellusaluekohtaiset organisaatiot ISO: Eri alat paitsi sähkö/elektroniikka IEC, CEN, UN/CEFACT, OASIS, Loputtomasti työryhmiä eri aloilla Toiminnan esitys: ohjelmointi 27-Mar-02 23 27-Mar-02 24
Ohjelmointi WWW-selaimen sovellusohjelmointi Hajautettu toiminnallisuus WWW-palvelimen sovellusohjelmointi Keskitetty toiminnallisuus 27-Mar-02 25 WWW-selaimen sovellusohjelmointi Java-appletit (asiakaspää) Java-ohjelma siirtyy palvelimelta selaimeen Ohjelma ajetaan asiakaskoneessa Dynamic HTML (asiakaspää) ECMAScript (JavaScript, J Script) HTML-koodin sekaan ajettavia ohjelmia (script) Cascading Style Sheets (CSS) Yleisiä tyylimäärittelyjä HTML- kielen elementeille Domain Object Model (DOM) Sivun oliomalli skriptejä varten 27-Mar-02 26 WWW-palvelimen sovellusohjelmointi Server Side Includes (SSI) HTML-koodilla korvattavia koodeja HTMLsivulla Esim. päiväys tai muu dokumentin osa Palvelin hoitaa korvaamisen ennen sivun lähettämistä 27-Mar-02 27 Server Pages -systeemit (ASP, JSP) HTML-sivulla myös Javaa tms. ohjelmointikieltä Koodit ajetaan ja korvataan HTML-tuloksella Palvelimella ohjelma luo HTML-sivut Esim. tietojen haku tietokannasta Tulos lähetetään selaimelle TAG Libraries Koodit korvataan omilla merkkauksilla 27-Mar-02 28 CGI-skriptit ja servletit Palvelimen ohjelma Saa tiedot selaimelta esim. lomakkeella PUT ja GET metodit Palauttaa selaimelle HTML-tuloksen TULEVAISUUDEN WWW Semantic Web? 27-Mar-02 29 27-Mar-02 30
Visio tulevaisuuden Webistä Kysymys: Mitä hyötyä on Webistä? 27-Mar-02 31 Keskeistä WWW:n tarjoamat palvelut Viestintä(email, puhe, kuva, video, ) Tiedonhaku (hakukoneet, portaalit,...) Toimenpiteiden suorittaminen Sähköinen liiketoiminta Sähköinen asiointi Ym. Siksi esimerkiksi Valtavat 3G-panostukset Suomessa Nokia, Sonera, Elisa dot.com-kupla ja sen puhkeaminen 27-Mar-02 32 Miten hyötypalveluja Webiin saadaan? Sisältö tärkeää materiaalin digitointi Palvelun äly tärkeää sisällön hyödyntäminen Käyttömukavuus ihmiselle tärkeää Ansaintologiikan toimittava money makes the world go round Kehityksen este Webissä? WWW-palvelu kone auttaa ihmistä Edellyttää sisältöjen koneellista "ymmärtämistä" WWW:n sisällöt ovat ihmislukijaa varten HTML, PDF, JPEG Kone ei ymmärrä WWW:n sisältöjä Hakukoneet, ostoagentit, verkkomönkijät jne. Periaatteessa kaikkiwww-sovellukset => Perustavaa laatua oleva ristiriita 27-Mar-02 33 27-Mar-02 34 Miten Webistä tulee älykkäämpi? Malli 1: Älykkäämmät sovellukset Sisältö pysyy samana Koneesta tehdään ihmismäisempi Malli 2: Älykkäämmin esitetty sisältö Sisältö helpommin ymmärrettäväksi Kone pysyy tyhmempänä Käytännössä molempia tapoja tarvitaan Yhä älykkäämmät järjestelmät käsittelevät yhä älykkäämmin esitettyjä tietoja 27-Mar-02 35 Ratkaisumalli 1: Älykkäämmät sovellukset Tiedon haku (information retrieval) Tiedon ekstrahointi (information extraction) Merkityshahmojen tunnistaminen vapaamuotoisesta aineistosta Esim. kiiinnostavien uutisten tunnistus Kääreet (wrapper) Heterogeenisten tietolähteiden yhdistäminen Kääreen sisältöjen täyttäminen eri lähteistä Esim. ostosagentit, tietokantojen yhdistäminen 27-Mar-02 36
Wrappers Tiedon louhinta (data mining) Klusterointi, sääntöjen oppiminen... Verkon louhinta (web mining) Sisällöt: Content mining Käyttö: Usage mining 27-Mar-02 37 Source: D. Fensel 27-Mar-02 38 Ratkaisumalli 1:nongelmia Kielen automaattisen tulkinnan vaikeus vapaamuotoisuus sisällön semantiikka Ei-tekstuaaliset sisällöt kuva, ääni, musiikki, video, ohjelmisto Miten tulkita algoritmisesti? Tulkintaan ei riitä itse dokumentti Tarvitaan konteksti, common sense Ratkaisumalli 2: Älykkäämmin esitetty sisältö Semantic Webin lähtökohta Talletetaan tieto niin, että tyhmempikin sen ymmärtää! Ihminen tulee konetta vastaan Kone voi auttaa ihmistä itsensä auttamisessa Kiihkeä kehitystyö käynnistynyt 27-Mar-02 39 27-Mar-02 40 Ratkaisumalli 2:nongelmia Webin sukupolvia Tallennusmuodon mutkikkuus Luettavuus ihmiselle heikkenee Tukea tarvitaankin ihmiselle Mallinnus (ontologiat) Kuvausten toimittaminen Standardointi Laajoja syvällisiä standardeja Esim. IEEE Standard Upper Ontology ebusiness standardit 27-Mar-02 41 1G WWW: HTML-sivut ihmisen tulkittavaksi 2G WWW: XML-sivut ihmisen/koneen tulkittavaksi 3G WWW: Merkitykset ihmisen/koneen käytettäväksi => Uusi perusta älykkäille WWW-palveluille Kansainvälinen yhteistyö W3C, ISO, OASIS,... 27-Mar-02 42
Semantic Web: Technology push Trust level Digital signature, annotations,... Logic level KIF, RuleML,... Ontology level WordNet, RosettaNet, DAML+OIL,... Meta data level RDF, RDFS, Topic Maps,... Structure level XML, XML DTD/ Scema, XSL,... Internet level Unicode, URI,... Planning CPR, SPAR, PDDL, Processes BPML, WPDL, PSL, Services UDDI, WSDL, DAML -S, Transactions XML/EDI, KQML, Communication TCP/IP, HTTP, SOAP,... 27-Mar-02 43 Taso 1: Internet Ytimenä URI (Universal Resource Identifier) Esim. http://www.cs.helsinki.fi/ WWW = URI:en verkko Unicode-merkistö Kaikki maailman kielet Protokollat HTTP, FTP, TCP/IP,... 27-Mar-02 44 Taso 2: Sisältöjen rakenne extensible Markup Language (XML) Meta-kieli sovelluskohtaisille kielille <OSOITE> <NIMI>Onni Ohjelmoija</NIMI> <PUHELIN> 123 456 </PUHELIN> </OSOITE> Rakenteen ja ilmasun erottaminen Muunnokset ja ilmiasu: XSL XML ja "Semantic" Web? Semantiikka: "tutkii miten symbolit viittaavat toisiin olioihin" Intensio: käsitteen merkitys Extensio: käsitteen viittamat oliot XML on syntaktinen, ei semanttinen 27-Mar-02 45 27-Mar-02 46 Miksi XML ei ole "semanttinen"? <OSOITE> <NIMI>Onni Ohjelmoija</NIMI> <PUHELIN> 123 456 </PUHELIN> </OSOITE> <OSOITE> <NIMI>Onni Ohjelmoija</NIMI> <PUHELIN> 123 456 </PUHELIN> </OSOITE> Semantiikka on vain nahkakansissa, ei peltikuoressa Taso 3: Semanttiset metakuvaukset Idea: rakenteelle on annettava merkitys (semantiikka) toisella tasolla Tärkeimmät Semantic Web -standardit W3C: RDF (S) ISO: Topic Maps, XTM 27-Mar-02 47 27-Mar-02 48
RDF(S) RDF Resource Description Framework (1999) Yleinen verkkoresurssien kuvaamiskieli RDF Schema (2000) RDF- terminologian määrittely Käsitehierarkiat (Class/subClass/type) OlioajatteluWWW-kuvauksiin RDF Model Idea: kuvataan WWW resursseja (URIs) Olio-Attribuutti-Arvo kolmikot "Helsinki"-"is located in"-"finland" <http://www.helsinki.fi, Location, http://www.finland.fi> Reifikaatio Hierarkkisuus 27-Mar-02 49 27-Mar-02 50 RDF Syntax YleensäXML-perustainen (muukin käy!) " The WWW-paper "Using RDF " was written by John Smith, concerns RDF, Metadata and Semantic Web", and was created on Jan 1, 2000" Vastaava RDF malli (verkko) <?xml version="1.0"?> <rdf:rdf xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc = "http://purl.org/dc/elements/1.1/"> <rdf:description rdf:about = "http://www.helsinki.fi/john.smith/paper.html"> <DC:Title>Using RDF to describe web resources</dc:title> <DC:Creator>John Smith</DC:Creator> <DC:Date>2001-01-01</DC:Date> <DC:Subject>RDF, Metadata, Semantic Web</DC:Subject> </rdf:description> </rdf:rdf> 27-Mar-02 51 27-Mar-02 52 Kuvausten tuottaminen RDF kömpelöä ihmisen kirjoittaa Ei siihen tarkoitettukaan RDF-kuvaukset tuotetaan ohjelmallisesti Dokumentin metatiedosta Esim. PDF Korkeamman tasoisista tietojen kuvauksista Esim. DAML+OIL kuvauskieli Erityisillä editoreilla Esim. RDFPic 27-Mar-02 53 Miksi RDF on tärkeä? Oleellisin innovaatio XML:ään verrattuna XML:n tietomalli on puu RDF:n tietomalli on yleisempi verkko Verkon kaarien järjestyksellä ja laadulla ei ole väliä (painvastoin kuin puussa) Metakuvaukset joustavasti ja ulkoisesti Voidaan esim. yhdistää useita eri verkkoa Yksinkertainen yleinen "framework" Ei sidottu sovellusalaan tai -tapaan 27-Mar-02 54
RDF Schema Dublin Core (DC) Tapa määritellä sanastoja, joilla RDFkuvaukset annetaan Olio-ohjelmoinnista tuttu luokka-ajattelu Core classes Resource, Class, Property 27-Mar-02 55 Kirjastoalan standardi Dublin Core MeatadataInitiative Dublin, Ohio, 1995 http://dublincore.org/ 15 perustietoa dokumenteista -> RDF Title, Subject, Creator, Publisher, Date, Voidaan esim. erottaa Bill Gatesia käsittelevä aineisto hänen tekemästään aineistosta Laaja käyttäjäkunta Mm. Abobe XMP 27-Mar-02 56 PRISM Julkaisualan sisällönhallintastandardi "PRISM is an extensible XML metadata standard for syndicating, aggregating, post-processing and multi-purposing content from magazines, news, catalogs, books and mainstream journals" DC, NewsML + muita standardeja http://prismstandard.org/ 27-Mar-02 57 vcard Henkilön perustiedot Käyntikortin tietoelementit FN NICKNAME TITLE EMAIL Kuvan upotus www.w3.org/tr/vcard-rdf 27-Mar-02 58 <?xml version="1.0"?> <rdf:rdf xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:vcard = "http://www.w3.org/2001/vcard-rdf/3.0#"> <rdf:description rdf:about = "http://qqqfoo.com/staff/corky" > <vcard:fn> Corky Crystal </vcard:fn> <vcard:n rdf:parsetype="resource"> <vcard:family> Crystal </vcard:family> <vcard:given> Corky </vcard:given> <vcard:other> Jacky </vcard:other> <vcard:prefix> Dr </vcard:prefix> </vcard:n> <vcard:bday> 1980-01-01 </vcard:bday> <vcard:title> Computer Officer Class 3 </vcard:title> <vcard:role> Programmer </vcard:role> <vcard:tel rdf:parsetype="resource"> <rdf:value> +61 7 555 5555 </rdf:value> <rdf:type rdf:resource="http://www.w3.org/2001/vcard-rdf/3.0#work"/> <rdf:type rdf:resource="http://www.w3.org/2001/vcard-rdf/3.0#voice"/> </vcard:tel> <vcard:email rdf:parsetype="resource"> <rdf:value> corky@qqqfoo.com </rdf:value> <rdf:type rdf:resource="http://www.w3.org/2001/vcard-rdf/3.0#internet"/> </vcard:email> <vcard:adr rdf:parsetype="resource"> <vcard:street> 111 Lake Drive </vcard:street> <vcard:locality> WonderCity </vcard:locality> <vcard:pcode> 5555 </vcard:pcode> <vcard:country> Australia </vcard:country> </vcard:adr> </rdf:description> </rdf:rdf> 27-Mar-02 59 Sovelluksia: RDFPic Valokuvien metatiedon esittäminen Editori metatietojen antamista varten Metatieto talletetaan JPEG-kuvan sisään jigsaw.w3.org/rdfpic/ 27-Mar-02 60
Sovelluksia: P3P Platform for Privacy Preference (P3P) Ongelma: Käyttäjän tietosuojan kontrollointi webissä Ratkaisuidea: Kerro kerran miten haluat tietojasi käsiteltävän Esim. toimien seuraaminen, emailin käyttö jne. P3P sivustot tarkistavat ovatko heidän toimintamallinsa ristiriidassa halutun kanssa Ilmoittavat niistä 27-Mar-02 61 27-Mar-02 62 P3P tulossa käyttöön P3P ongelmia W3C Recommendation, April 2002 Selaimet IE 6 tukee jo osittain (piparit ) Netscape aikoo tukea 30% sadasta tärkeästä WWW-sivustosta tukee tai aikoo tukea (Internet Education Foundation) Yahoo!, Amerca Online, Microsoft, Terra Lycos, Cnet, 27-Mar-02 63 Liian mutkikas konsepti rivikäyttäjälle? Aihettaa hämmennystä ja pelkoa? Vaatii sivuston tekijöiltä panostusta Epäluotettavat sivustot voivat aina huijata 27-Mar-02 64 Topic Map Topic Map: rakenne Ideoitu jo ennen WWW:tä 90-luvun alussa! Kirjan hakemisto lähtökohtana O'Reillyn kirjojen hakemistojen yhdistäminen TM = tietämystason verkko (metadata) kuvattavista WWW-resursseista Semanttinen, verkkomainen hakemisto Sukua RDF:lle : metatiedon esittämistapa ISO:n standardi 27-Mar-02 65 TAO: Topic - Association - Occurrence Topic (aihe): Säveltäjä, teos, kaupunki jne. Association (assosiaatio ) Aiheiden väliset yhteydet Sibelius - creator -> Finlandia Sibelius - oneräs -> Säveltäjä Occurrence (resurssi) Kuvauksen kohteena ovat dokumentit Esim. Sibeliuksesta kertova HTML-sivu, Finlandia MP3 tiedosto, 27-Mar-02 66
Topic Map: käyttö XML Topic Map -kuvauskieli standardoitu (XTM) Myös muita mahdollisuuksia on 27-Mar-02 67 Aiheet näytetään sivuina Sivut voidaan määritellä esim. HTML:n ja omien merkkausten (tag library) avulla Assosiaatioiden perusteella luodaan linkit aiheeseen liittyviin sivuihin Semanttinen surffailu Myös kyselykielillä tietoa (tolog, TMQL) Karttoja voidaan yhdistellä Suodattaminen scope-käsitteen avulla 27-Mar-02 68 Topic Map: sovelluksia Tietämyksen hallinta Yrityksen/viraston dokumentit ja palvelut Eri järjestelmien erityyppisten resurssien yhdistely Intra- ja Internet Metatieto erillään itse dokumenteista Karttojen luonti ja käyttö ei häiritse muita järjestelmiä Tieto löytyy linkkejä seurailemalla (samoilu) Content management Eri näkökulmia samaan sisältöön Dukumenttien tuottajat vs. loppukäyttäjät Esim. jaottelukielen, kiireellisyyden tai aiheen mukaan Tietosanakirjat (esim. http://www.quid.fr/), romput ym. semanttisesti rikkaat sisällöt Ks. esim. www.ontopia.net on-line demot 27-Mar-02 69 27-Mar-02 70 Quid-tietosanakirja RDF(S) ja Topic Map Malleja/kieliä WWW-resurssien kuvaamiseen (metadata) Kielen muodot viittaavat alla oleviin resursseihin ja jopa itseensä (reifikaatio) Tietomalli ei ole sidottu XMLesitysmuotoon Sarjallistamistapa (serialization) periaatteessa yhdentekevä Kielet voidaan esittää muunkinlaisella syntaksilla 27-Mar-02 71 27-Mar-02 72
Taso 4: Ontologiat Ontologia on formaali, eksplisiittinen määrittely yhteisestä käsitteistöstä (Gruber, 1993) Formaali: jämpti Eksplisiittinen: konekin ymmärtää Yhteinen: kommunikaatio mahdollista Kuvaa sovellusmaailmassa olevat oliot Ensimmäinen edellytys sille, että ihmiset ja koneet voivat ymmärtää toisiaan 27-Mar-02 73 Ontologiat käytännössä Yleisiä hierarkkisia sanastoja Esim. YSA, WordNet Yleisiä maailmanmalleja Esim. CYC Spesifejä ammattitermistöjä Esim. RosettaNet Luokittelujärjestelmiä Esim. tuotteet/palvelut UN/SPSC Kirjastot UDK, Loogisia terminologisia malleja Ohjelmistoissa 27-Mar-02 74 Ontologin uusia välineitä Mallit ja esityskielet RDFS Terminologialogiikat ja DAML+OIL Object-orieted modeling XML-syntax Description logic semantics 27-Mar-02 75 Ontologioiden kuvaustasot Sanasto (vocabulary) Käytettävät käsitteet Rakenne (structure) Käsitehierarkia ja ominaisuudet Rajoitteet ja loogiset ominaisuudet Ominaisuuksien käyttö, arvoalueet Ominaisuuksien ominaisuudet Symmetrisyys, transitiivisuus Loogiset aksioomat ja säännöt Uusien relaatioiden johtaminen 27-Mar-02 76 Esimerkki: OIL ontologiakieli Ontologiaeditorit Protégé Rakennetaan luokkahierarkia Generoidaan siitä eri tarkoituksiin esitysmuotoja HTML, RDFS, graafinen esitys,prolog, Ontologioiden yhdistäminen ja hallinta OilEd + FaCT Ontologian oikeellisuus ja päättely Ontology container Yleistä metetietoa ontologiasta (tekijä, kieli jne) Ontology definitions Relaatioiden määrittelyt Esim. käänteisrelaatio, transitiivisuus Luokka hierarkian määrittelyt 27-Mar-02 77 27-Mar-02 78
Container Ontology definitions ontology-container title African animals creator Ian Horrocks subject animal, food, vegetarians description A didactic example ontology describing African animals description.release 1.01 publisher I. Horrocks type ontology format pseudo-xml format pdf identifier http://www.cs.vu.nl/~dieter/oil/tr/oil.pdf source http://www.africa.com/nature/animals.html language OIL language en-uk relation.haspart http://www.ontosrus.com/animals/jungle.onto ontology-definitions slot-def eats inverse is-eaten-by slot-def has-part inverse is-part-of properties transitive 27-Mar-02 79 27-Mar-02 80 class-def animal class-def plant subclass-of NOT animal class-def tree subclass-of plant class-def branch slot-constraint is-part-of has-value tree class-def leaf slot-constraint is-part-of has-value branch class-def defined carnivore subclass-of animal slot-constraint eats value-type animal class-def defined herbivore subclass-of animal slot-constraint eats value-type plant OR (slot-constraint is-part-of has-value plant) class-def herbivore subclass-of NOT carnivore class-def giraffe subclass-of animal slot-constraint eats value-type leaf class-def lion subclass-of animal slot-constraint eats value-type herbivore class-def tasty-plant subclass-of plant slot-constraint eaten-by has-value herbivore, carnivore 27-Mar-02 81 Kuvausten käyttö Voidaan tuottaa RDFS-muoto tietokoneelle Konsistenssi voidaan tarkistaa Voidaan vastata loogisiin kysymyksiin Päättelykoneella FaCT Dokumenttien loogisen metakuvausten ymmärtäminen 27-Mar-02 82 Ontologin haasteita Terminologinen konsensus Eri tarpeiden ja mieltymisten sovittaminen Ontologioiden koko-ongelmat Riittävätkö resurssit, skaalautuvatko välineet? Ontologioiden muuttuminen Esim. Tsekkoslovakia valtio-ontologiassa? Ontologioiden yhdistäminen Esim. tuote/palvelukatalogit 27-Mar-02 83 Tasot 5-6: Logiikka ja luottamus Logiikkataso Päättely ja toiminta ontologian kuvaamiin oliohin liittyen Todistukset/perustelut (proof) Esim. RuleML -saantömerkkauskieli Luottamus Resurssien kuvailu/arvostelu (annotointi) Kenen suosituksiin itse kukin luottaisi? Digitaaliset allekirjoitukset (digital signatures) Tahojen luotettava tunnistaminen Salaus: tiedot julki vain oikeille tahoille Tietosuojakysymykset (esim. P3P) 27-Mar-02 84
Tärkeimpiä alueita Sovellusalueita Informaation haku (information retrieval) Tietämyksen hallinta (knowledge management) Verkkokauppa (B2C) ja Peer-to-Peer (P2P) Sähköinen liiketoiminta (B2B), Web Services Profilointi ja kustomointi 27-Mar-02 85 27-Mar-02 86 Informaation haku Open Directory Project dmoz Seuraavan polven hakurobotit Metatietojen hyödyntäminen Älykkäät hakemistot Matchmaker-sovellukset Semanttiset portaalit RDF-based search 27-Mar-02 87 (Fensel, 2002) 27-Mar-02 88 Tietämyksen hallinta (knowledge management) Ongelmia Dokumenttien monimuotoisuus Maapalloistuminen -> sisältöjen hajautus Tietämyskannan komplisoituminen SemWeb-tekniikat antavat uusia työkaluja Liima heterogeenisten hajautettujen dokumenttien hallintaan 27-Mar-02 89 27-Mar-02 90
Verkkokauppa (B2C) ja Peer-to-Peer (P2P) Uusi markkinointi- ja jakelukanava Uusi tapa kommunikoida ja jakaa tietoa Uudet sähköiset liiketoimintamallit Sähköinen asiointi edellyttää, että koneet voivat ymmärtää käsitellä termejä ja sisältöjä Sähköinen liiketoiminta(b2b), Web Services Miten tarjoan oman tuotteen/palvelun kansainvälisille markkinoille? Vision globaalit rekisterit ja sanastot käytettävissä (UDDI, RosettaNet,...) Miten hoidan transaktiot kumppaneiden kanssa? Esim. tarjouspyyntöön vastaaminen EDI-XML, SOAP, WSDL Toimintakehykset : UDDI, ebxml, 27-Mar-02 91 27-Mar-02 92 Profilointi ja kustomointi Semantic Webin mahdollisuuksia Sisältöjen rikastaminen Eri standardien yhdistäminen Esim. toimialaportaalit Likeetoimintaprosessien automatisointi Semanttset kuvaukset Ihmiset ja palvelut (P3P) Omat preferenssit, tietosuoja,... Laitteet (CC/PP, FIPA Device Ontology) Esim. MV-kännykälle ei värikuvia Dokumentit (Transcoding) Sisältöjen kustomointi eri laitteille ja tarpeisiin 27-Mar-02 93 27-Mar-02 94 Semantic Webja Suomi Lisätietoja Juna lähti jo XML-standardointihankkeet, 90-luvun loppu W3C Semantic Web Activity, 2001/kevät EU:n OntoWeb 2001/kesä Semantic Web Kick-Off in Finland 2001/syksy Tärkeä ala jatkossa monessa mielessä Teollinen intressi Tekninen mahdollisuus Tieteellinen haaste Kansallinen intressi 27-Mar-02 95 W3C:n Semantic Web Activity www.w3.org/2001/sw/ Tutkimusmaailman portaali www.semanticweb.org EU:n yhteistyöverkosto www.ontoweb.org Semantic Web in Finland www.cs.helsinki.fi/u/eahyvone/stes/semanticweb/ 27-Mar-02 96