Ontologiat merkitysten mallintamisessa: OWL Eeva Ahonen 1.11.2004
Semanttinen tieto käsitemallit ihmisillä sisäiset mallit maailmantieto tarvitaan tekstin tulkitsemiseen tietokoneelle esim. sanat vain symboleja, sisäinen käsitemalli puuttuu
Semanttinen tieto käsitemalli: käsitteet ja niitä edustavat yksilöt käsitteiden / yksilöiden ominaisuudet käsitteiden väliset suhteet > Ontologia Tom Gruber: Specification of conseptualization
Ontologia
Ontologia Käsitteiden väliset suhteet voivat olla moninaisia > ei puu vaan verkko Ontologian formaali esitys tietokoneelle > ontologiakielet
Ontologiakielet RDF/S DAML+OIL DARPA OWL W3C Semantic Webin standardiksi DAML+OIL:in pohjalta
Ontologian peruskäsitteitä Luokka hierarkia Luokka Fish on luokan Animal aliluokka Kaikki kalat ovat myös eläimiä
Ontologian peruskäsitteitä Yksilö Luokka on kokoelma siihen kuuluvia yksilöitä Repe on kala luokan Fish edustaja luokkaan kuuluva yksilö Fish Repe
Ontologian peruskäsitteitä Property lisätietoa luokkiin kuuluvista yksilöistä eläimillä on aistielimiä kuten silmät myös propertyt voivat muodostaa hierarkioita Animal luokalla property numsensoryorgans ja sillä aliluokka numeyes
Ontologian peruskäsitteitä Repe on kala > Repellä voi olla aistielimiä, joista osa voi olla silmiä Repellä numeyes=2 ja numsensoryorgans=2 > Repellä on kaksi silmää eikä muita aistielimiä Repellä on ominaisuus numeyes > Repe on eläin
Luokkien väliset suhteet Yläluokka alaluokka Propertyn arvoalueena toinen luokka Yhdiste, leikkaus, komplementti
OWL Web Ontology Language W3C Semantic Web hanke lähtökohta DAML+OIL rakentuu RDF standardin päälle
OWL Web Ontology Language 3 alalajia: OWL Lite OWL DL OWL Full laskennan helppous ilmaisuvoima
OWL Web Ontology Language OWL Lite yksinkertaisin kardinaalisuus 0 tai 1 ei joukko-opillisia luokkailmaisuja ei luokan määritystä propertyn arvon perusteella (hasvalue) ei toisensa poissulkevia luokkia helpoin implementoida sovellustasolla
OWL Web Ontology Language OWL DL (description logic) OWL Lite + kardinaalisuus muu kuin 0 tai 1 yhdiste, leikkaus, komplementtiluokat hasvalue toisensa poissulkevat luokat laskennalliset takuut
OWL Web Ontology Language OWL Full OWL DL + instanssi voi olla samaan aikaan yksilö ja luokka ei laskennallisia takuita
OWL Web Ontology Language OWL Lite OWL DL OWL Full validi OWL Lite ilmaus myös validi OWL DL ei välttämättä toisinpäin
OWL: Luokat kaikki luokat luokan owl:thing alaluokkia kaikki määritellyn maailman oliot kuuluvat luokkaan owl:thing tämän alle ontologiakohtaiset juuriluokat Animal, Region, Plant,
OWL: Luokat Määritellään <owl:class> elementillä <owl:class rdf:id= GoldFish > <rdfs:subclassof rdf:resource= #Fish /> </owl:class> Ainakin nimi Lisäksi joukko rajoituksia
OWL: Luokat Esiteltäessä uusi nimi rdf:id Myöhemmin määritelmää laajennettaessa rdf:about <owl:class rdf:id= GoldFish /> <owl:class rdf:about= #GoldFish > <rdfs:subclassof rdf:resource= #Fish /> </owl:class>
OWL: Yksilöt Luokan jäsen <owl:thing rdf:id= Repe > <rdf:type rdf:resource= #GoldFish /> </owl:thing> tai lyhyemmin <GoldFish rdf:id= Repe />
OWL: Property Luokan yksilöiden ominaisuuksia domain range Datatype property Object property
OWL: esimerkki Meritieteellinen akvaario Fish Person GoldFish Employee Repe Matti
OWL: Property <owl:objectproperty rdf:id= hascarer > <rdfs:domain rdf:resource= #GoldFish /> <rdfs:range rdf:resource= #Employee /> </owl:objectproperty> <owl:datatypeproperty rdf:id= numeyes > <rdfs:domain rdf:resource= #GoldFish /> <rdfs:range rdf:datatype= &xsd;nonnegativeinteger /> </owl:datatypeproperty>
OWL: Property <GoldFish rdf:about= #Repe > <hascarer rdf:resource= #Matti /> <numeyes rdf:datatype= &xsd;nonnegativeinteger>2 </numeyes> </GoldFish>
Ontologioiden hajauttaminen Kattavan ontologian rakentaminen suuritöistä Osien uudelleenkäyttö Rakentaminen kerroksittain ja hajautetusti > tarvitaan mekanismit toisiin ontologioihin viittaamiseksi
Ontologioiden hajauttaminen Import sisällyttää toisen ontologian kokonaisuudessaan määritellään ontologian header elementissä <owl:ontology rdf:about= > <owl:imports rdf:resource= /> </owl:ontology>
Ontologian hajauttaminen Toisessa ontologiassa määriteltyyn luokkaan voidaan lisätä ominaisuuksia, alaluokkia, yksilöitä Määrityksiä voidaan vain laajentaa mitään ei voi poistaa Eri ontologioiden nimet pidetään erillään XML Namespace määrityksillä
Ontologian hajauttaminen Myös pelkkä namespace määritys viittaus toisen ontologian nimiin Ero lähinnä pragmaattinen (?) import tuo myös toisen ontologian importit!
Versiohallinta Ontologioiden mahdollisimman laaja käytettävyys levittäminen tietoverkossa Useita sovelluksia + muita ontologioita linkitettynä luonteeltaan muuttuvaa ja päivitystä vaativaa > versiohallinta!
OWL: Versiohallinta owl:ontology elementissä owl:priorversion owl:backwardcompatiblewith owl:incompatiblewith jos yhteensopivuutta ei ole määritetty, sitä ei pidä olettaa
OWL: Versiohallinta Versiotieto owl:versioninfo koko ontologialle yksittäiselle määritykselle Versiohallintaa tarjoavien sovellusten hyödynnettäväksi
Soveltaminen Ontologia-työkalut, esim. Protégé ontologian tekijä ei tarvitse yksityskohtaista tietoa ontologiakielestä Jena Semantic Web Framework for Java Java kirjastot RDF, RDFS ja OWL
Soveltaminen: Hakukoneet Hakujen laajentaminen vrt. taksonomiat Haku merkityksillä kyselykieli (Jena: RDQL) luonnolliskielinen kysely
Lopuksi formaali esitys kiinnostuksen kohteena olevasta maailmasta specification of conseptualization sovellus ihmisen käsitteelliselle tasolle, eikä toisinpäin esitysmuoto jokin ontologiakieli: Semantic Webissä RDF/S ja OWL
Lopuksi Koostuu luokista, yksilöistä, niiden ominaisuuksista ja välisistä suhteista OWL Web Ontology Language OWL Lite, DL, Full laskettavuus ilmaisuvoima