OWL 2 -profiilit. Antti Hietasaari. Helsinki HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Samankaltaiset tiedostot
The OWL-S are not what they seem

arvostelija OSDA ja UDDI palveluhakemistoina.

Luento 12: XML ja metatieto

Ontologiat merkitysten mallintamisessa: OWL. Eeva Ahonen

Semanttinen Web. Ossi Nykänen. Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), Hypermedialaboratorio W3C Suomen toimisto

Semanttinen Web. Ossi Nykänen. Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto

Semanttinen Web. Ossi Nykänen Tampereen teknillinen yliopisto (TTY), DMI / Hypermedialaboratorio W3C Suomen toimisto

Eero Hyvönen. Semanttinen web. Linkitetyn avoimen datan käsikirja

Paikkatiedot ja Web-standardit

Selainpelien pelimoottorit

Tiedon mallintaminen ja esillesaanti. Web Ontology Language OWL Daniel Lillqvist

standardit (W3C, ISO) Semanttisen laskennan tutkimusryhmä Teknillinen korkeakoulu

Aika/Datum Month and year Kesäkuu 2012

Työn laji Arbetets art Level Aika Datum Month and year Sivumäärä Sidoantal Number of pages

Sisällönhallinnan menetelmiä

Automaattinen semanttinen annotointi

Maailman muutosta tallentamassa Marko Vuokolan The Seventh Wave -valokuvasarja avauksena taidevalokuvan aikaan

W3C-teknologiat ja yhteensopivuus

Paikannimirekisteri linkitettynä tietona

Pro gradu -tutkielma Meteorologia SUOMESSA ESIINTYVIEN LÄMPÖTILAN ÄÄRIARVOJEN MALLINTAMINEN YKSIDIMENSIOISILLA ILMAKEHÄMALLEILLA. Karoliina Ljungberg

Luonnontieteiden popularisointi ja sen ideologia

FORMAALI SYSTEEMI (in Nutshell): aakkosto: alkeismerkkien joukko kieliopin määräämä syntaksi: sallittujen merkkijonojen rakenne, formaali kuvaus

on rekursiivisesti numeroituva, mutta ei rekursiivinen.

Ohjelmistojen mallintaminen, mallintaminen ja UML

Internet jolla on merkitystä

ONKI-projekti tuo ontologiat käyttöön sisällönkuvailussa

Muita vaativuusluokkia

! #! %! & #!!!!! ()) +

SAT-ongelman rajoitetut muodot

Koht dialogia? Organisaation toimintaympäristön teemojen hallinta dynaamisessa julkisuudessa tarkastelussa toiminta sosiaalisessa mediassa

Lisää pysähtymisaiheisia ongelmia

ONKI SKOS Sanastojen ja ontologioiden julkaiseminen ja käyttö Asiasanaston muuntaminen SKOS muotoon: case YSA

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys

SPARQL-workshop. Sini Pessala Kirjastoverkkopäivät KANSALLISKIRJASTO - Kirjastoverkkopalvelut

Toinen muotoilu. {A 1,A 2,...,A n,b } 0, Edellinen sääntö toisin: Lause 2.5.{A 1,A 2,...,A n } B täsmälleen silloin kun 1 / 13

Katsaus korruption vaikutuksesta Venäjän alueelliseen talouskasvuun ja suoriin ulkomaisiin investointeihin

Miksi asiasanastot eivät riitä vaan tarvitaan ontologioita?

3. Laskennan vaativuusteoriaa

Kombinatorinen optimointi

Dominointianalyysi. Teppo Niinimäki. Helsinki Approksimointialgoritmit HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

UML-kielen formalisointi Object-Z:lla

Luonnollisen päättelyn luotettavuus

Concurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo

SÄHKE-hanke. Abstrakti mallintaminen Tietomallin (graafi) lukuohje

Logiikka 1/5 Sisältö ESITIEDOT:

MALog-projekti kehittää oppimateriaalia matemaattiseen logiikkaan. Insinöörikoulutuksen foorumi

Logiikan kertausta. TIE303 Formaalit menetelmät, kevät Antti-Juhani Kaijanaho. Jyväskylän yliopisto Tietotekniikan laitos.

Resource Description Framework (RDF) -konsepti. Lauri Antikainen

Semanttisen webin käsikirja (luonnos)

Rajoittamattomat kieliopit (Unrestricted Grammars)

Laskennallinen yhteiskuntatiede

Laskennan vaativuus ja NP-täydelliset ongelmat

Tiedekunta/Osasto Fakultet/Sektion Faculty Valtiotieteellinen tiedekunta

Ontologiat merkitysten mallintamisessa: OWL Web Ontology Language

811120P Diskreetit rakenteet

Mikä on semanttinen web?

Seitsemän syytä semanttiseen webiin. Eero Hyvönen Aalto-yliopisto ja HY Semanttisen laskennan tutkimusryhmä (SeCo)

Tietokannan suunnittelu

Hallintomallit Suomen valtionhallinnon tietohallintostrategioissa

RDF ja RDFS. 8 RDF ja RDFS

FI3 Tiedon ja todellisuuden filosofia LOGIIKKA. 1.1 Logiikan ymmärtämiseksi on tärkeää osata erottaa muoto ja sisältö toisistaan:

Visio tulevaisuuden Webistä. Semantic Web - kohti uutta merkitysten Internetiä. Ratkaisumalli 1: Älykkäämmät sovellukset. Vision este Webissä

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas

SKOS. Osma Suominen ONKI-hankkeen laajennettu projektiryhmä

A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.

Metatiedot organisaatioiden sisällönhallinnassa

Matematiikan tukikurssi

Predikaattilogiikkaa

Matematiikan tukikurssi

TKT20005 Laskennan mallit (syksy 2018) Kurssikoe, malliratkaisut

Pikapaketti logiikkaan

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

Säännöllisen kielen tunnistavat Turingin koneet

Hahmon etsiminen syotteesta (johdatteleva esimerkki)

3 Verkkosaavutettavuuden tekniset perusteet

!"#$%&'$("#)*+,!!,"*--.$*#,&--#"*/".,,%0

811120P Diskreetit rakenteet

Tiedonsiirto- ja rajapintastandardit

Äärellisten automaattien ja säännöllisten kielten ekvivalenssi

Yhtälönratkaisusta. Johanna Rämö, Helsingin yliopisto. 22. syyskuuta 2014

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 8. syyskuuta 2016

Tietokantasuunnittelun pääperiaatteena on tiedon toiston välttäminen. Tiedon toistumiseen liittyy monenlaisia ongelmia.

W3C ja alueellinen standardointi


Matematiikan tukikurssi, kurssikerta 3

811120P Diskreetit rakenteet

Olio-ohjelmoinnissa luokat voidaan järjestää siten, että ne pystyvät jakamaan yhteisiä tietoja ja aliohjelmia.

W3C ja Web-teknologiat

Algoritmit 1. Luento 2 Ke Timo Männikkö

= k 0 NTIME(n k + k) Siis polynomisessa ajassa epädeterministisellä Turingin koneella tunnistettavien kielten joukko

Semanttinen Web. Ossi Nykänen. Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto

Rekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä

Agentit ja semanttinen web. Pekka Halonen

Tapahtumankäsittely Semanttisen Webin Menetelmillä

Julian graafinen annotointityökalu ja erityisontologioiden editori. Jaason Haapakoski P Kansanterveyslaitos , 28.3.

Todistusteoriaa. Kun kielen syntaksi on tarkasti määritelty, voidaan myös määritellä täsmällisesti, mitä pätevällä päättelyllä tarkoitetaan.

Yhteentoimivuusalusta: Miten saadaan ihmiset ja koneet ymmärtämään toisiaan paremmin?

Transkriptio:

OWL 2 -profiilit Antti Hietasaari Helsinki 27.10.2013 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta Fakultet Faculty Laitos Institution Department Matemaattis-luonnontieteellinen tiedekunta Tekijä Författare Author Tietojenkäsittelytieteen laitos Antti Hietasaari Työn nimi Arbetets titel Title OWL 2 -profiilit Oppiaine Läroämne Subject Tietojenkäsittelytiede Työn laji Arbetets art Level Seminaariraportti Tiivistelmä Referat Abstract Aika Datum Month and year 28.10.2013 Sivumäärä Sidoantal Number of pages 12 sivua OWL-ontologiakieli tarjoaa erittäin paljon ilmaisuvoimaa mielivaltaisten käsitteiden ja niiden välisten suhteiden kuvaamiseen, mutta sama ilmaisuvoima hankaloittaa sen käyttöä monissa käytännön sovelluksissa estämällä joidenkin päättelyiden laskemisen järkevässä ajassa tai lainkaan. Tämän vuoksi kielestä on johdettu erilaisia profiileja, jotka rajoittavat kielen ilmaisuvoimaa ja tarjoavat parempaa käytännön suorituskykyä. Tässä seminaariraportissa tutustutaan kolmeen W3C:n standardoimaan OWL 2 -profiiliin (OWL 2 EL, OWL 2 QL, OWL 2 RL) ja esitellään näiden toimintaperiaatteita ja sovellusaluieita. Avainsanat Nyckelord Keywords OWL, Semanttinen Web, päättely Säilytyspaikka Förvaringställe Where deposited Muita tietoja Övriga uppgifter Additional information

ii Sisältö 1 Johdanto 1 2 OWL 1 2.1 Periaatteet...2 2.2 Päättely...2 2.3 OWL:n alikielet...3 3 OWL 2 EL 4 3.1 EL++-kuvauslogiikka...4 3.2 Rajoitukset ja sovellukset...5 4 OWL 2 QL 6 4.1 Tietokantayhteensopivuus...6 4.2 Rajoitukset ja sovellukset...6 5 OWL 2 RL 7 5.1 OWL 2 RL/RDF Rules...7 5.2 OWL 2 RL Direct Semantics...8 5.3 Sovellukset...9 6 Laskennallisten ominaisuuksien vertailua 9 7 Yhteenveto 10 Lähteet 12

1 1 Johdanto Semanttisen webin ehkä keskeisin käsite ovat ontologiat: graafit, jotka mallintavat eri kohdealueiden käsitteistöä sekä käsitteiden välisiä yhteyksiä siten, että niitä voidaan käsitellä algoritmisesti ja niistä voidaan hakea, paitsi eksplisiittistä, myös implisiittistä tietoa. Yleisin ontologioiden kuvauskieli on W3C:n standardoima OWL. On kuitenkin osoittautunut, ettei OWL ole kaikkine ominaisuuksineen kovin käytännöllinen monissa sovelluksissa kieli on niin ilmaisuvoimainen, että monia hyödyllisiä päättelyitä ei voida laskea käytännön sovellusten vaatimalla nopeudella, mikäli ne ovat edes ylipäätään laskettavissa. Ongelman ratkaisemiseksi OWL:stä on jalostettu alikieliä, jotka rajoittavat kielen ilmaisuvoimaa suorituskyvyn saavuttamiseksi. Alkuperäisen OWL-standardin pohjalta luotiin OWL DL ja OWL Lite, kun taas uudemman 2. version spesifikaatioon sisällytettiin kolme profiilia, OWL EL, OWL QL ja OWL RL, jotka on suunniteltu erityisesti tiettyjä ominaispiirteitä sisältäville sovellusalueille. Tämän raportin luvussa 2 esitellään yleisesti itse OWL-kieltä. Luvussa 3 tarkastellaan erityisesti paljon luokkia ja ominaisuuksia sisältäville ontologioille suunniteltua OWL EL-profiilia, luvussa 4 on vuorossa paljon tietoa sisältäville tai relaatiotietokantapohjaisille ontologioille soveltuva OWL QL ja luvussa 5 tarkastelun kohteena on hyvää suorituskyvyn ja ilmaisuvoiman kompromissia tarjoava, RDF-pohjaisille sovelluksille tarkoitettu OWL RL. Luvussa 6 vertaillaan eri profiilien laskennallista kompleksisuutta. 2 OWL OWL (Web Ontology Language) on ontologiakieli, josta tuli W3C:n suositus vuonna 2004. Kielen nykyversio on OWL 2, jonka spesifikaatio ilmestyi vuonna 2009. Kielen tavoitteena on antaa työkalut, joilla voidaan kuvata mitä tahansa mielivaltaista käsitteitä ja niiden välisiä yhteyksiä tavalla, joka on tietokoneen käsiteltävissä. Se on suunniteltu toimimaan yhdessä muiden W3C:n semanttiseen webiin liittyvien suositusten, kuten XML:n, RDF:n ja RDF Scheman kanssa, ja tarjoaa näihin verrattuna laajemman sanaston luokkien ja ominaisuuksien kuvaamiseen; se lisää muun muassa luokkien väliset suhteet (yhdiste, leikkaus jne.) sekä ominaisuuksien kardinaalisuusra-

2 joitteet ja ominaispiirteet (symmetria, transitiivisuus jne.). [W3C04] 2.1 Periaatteet Vaikka OWL:n esittämiseen on muitakin formaatteja, sen kehityksen lähtökohtana ovat toimineet RDF (Resource Description Framework) ja RDF Schema, joten RDF:n tavoin sen tietomallin pohjana ovat subjekti-predikaatti-objekti-kolmikot. Kuten RDF:ssä, subjektin ja predikaatin tulee OWL:ssä olla URI, kun taas objekti saa myös olla jokin literaali. Subjektina ja objektina voi olla joko luokka tai sen ilmentymä eli yksilö, kun taas predikaatteina toimivat ominaisuudet. Itse asiassa OWL ei periaatteessa erota näitä käsitteitä toisistaan, vaan esimerkiksi luokan ilmentymä voi itsekin olla luokka, mutta laskettavuuden vuoksi tätä ei sallita kielen alikielissä (ks. luku 2.3). [W3C04] Edellä mainitut rakenteet ovat esitettävissä pelkällä RDF:llä ja RDF Schemalla, mutta OWL tarjoaa näihin verrattuna paljon ilmaisuvoimaisemman sanaston, jonka avulla luokkia ja ominaisuuksia pystytään muodostamaan ja rajoittamaan erilaisilla loogisilla rakenteilla. Tämä mahdollistaa paljon täsmällisemmän kuvauksen muodostamisen ontologian kohdealueesta. OWL:ssä pystytään esimerkiksi määrittelemään, että kaikkiruokainen-luokka on lihansyöjä- ja kasvissyöjä-luokkien leikkaus, aikuinen-luokka koostuu kaikista niistä henkilö-luokan yksilöistä, joiden ikä-ominaisuuden arvo on suurempi kuin 18 tai että jos henkilö A on B:n esivanhempi ja B on C:n esivanhempi, niin A on C:n esivanhempi. [W3C04] 2.2 Päättely Kaikki dokumentit sisältävät kahdenlaista tietoa: eksplisiittistä (se, mitä dokumentissa sanotaan suoraan) sekä implisiittistä (se, mikä on pääteltävissä dokumentin sisältämästä tiedosta, vaikkei sitä sanota suoraan). Jos dokumentissa on esimerkiksi eksplisiittisesti kerrottu, että henkilö A:n isä on C ja henkilön B isä on myös C, niin lukija voi päätellä sen implisiittisen tiedon, että A ja B ovat sisaruksia. Yleensä implisiittisen tiedon löytämiseen vaaditaan ihmisymmärrystä, mutta koska OWL kuvaa resursseja niiden loogisten ominaisuuksien kautta, OWL-ontologioiden sisältämää implisiittistä tietoa voidaan käsitellä myös koneellisesti. Implisiittisestä tiedosta on kahdenlaista hyötyä. Ensinnäkin, kun kaikkea ei tarvitse kir-

3 joittaa eksplisiittisesti esille, dokumentit säilyvät pienempinä, jolloin niitä on helpompi säilyttää, siirtää ja laatia. Toinen, paljon kiinnostavampi ja merkittävämpi hyöty on se, että ontologioista ja niiden yhdistelmistä kyetään löytämään tietoa ja yhteyksiä, joita edes ontologian laatija ei tiedostanut. Esimerkiksi edellä mainitussa henkilöiden A, B ja C tapauksessa dokumentin laatijan ei tarvitse tietää eikä tajuta A:n ja B:n välistä yhteyttä sukulaisuussuhteet voivat olla peräisin vaikkapa väestörekisteristä, jonne ne on kirjattu täysin eri vuosina. Tällöin sisarussuhde tulee esille vasta dokumentin implisiittistä tietoa tarkastellessa. Erityisen kiinnostavaksi asia käy, kun yhdistellään eri lähteistä peräisin olevia ontologioita, jolloin eri näkökulmat samaan käsitteeseen saattavat nostaa esiin yllättäviäkin yhteyksiä. Jotta implisiittistä tietoa voidaan käsitellä, se on kuitenkin ensin tuotava eksplisiittiseksi. Tämä onnistuu päättelijän (reasoner) avulla. Päättelijä on ohjelma, joka saa syötteekseen joukon aksioomia (ontologiaan eksplisiittisesti kirjoitetut lauseet) ja laskee niistä joukon seurauksia (ontologian sisältämä implisiittinen tieto) käyttäen apunaan tiettyjä päättelysääntöjä (ontologiakielen tarjoama semantiikka). Päättelyn vaikeus ja siihen kuluva aika vaihtelevat paljon ontologian monimutkaisuuden ja siinä käytettyjen loogisten rakenteiden mukaan. Pahimmassa tapauksessa saattaa olla, ettei joitakin asioita kyetä laskemaan lainkaan, vaan päättelyketju jatkuu ikuisesti. 2.3 OWL:n alikielet OWL suunniteltiin erittäin ilmaisuvoimaiseksi kieleksi, mutta tämä osoittautui myös ongelmaksi. Kielen ilmaisuvoiman vuoksi sillä on mahdollista luoda ontologioita, joista on mahdotonta laskea monia hyödyllisiä päätelmiä, kuten ontologian ristiriidattomuutta tai luokkien keskinäistä sisältyvyyttä [W3C09]. Jotta kieltä voitaisiin hyödyntää paremmin käytännössä, sille kehitettiin kaksi syntaktisesti rajoitettua alikieltä. OWL DL (Web Ontology Language Description Logic) on alikieli, joka on suunniteltu tarjoamaan suurin mahdollinen ilmaisuvoima uhraamatta laskettavuutta; kaikki päätelmät, jotka kielessä voidaan esittää, ovat myös laskettavissa ja kaikki laskelmat päättyvät äärellisessä ajassa. Laskettavuuteen on päästy kieltämällä esimerkiksi kardinaalisuusrajoitteet transitiivisilta ominaisuuksilta ja se, että luokka olisi itse jonkin toisen luokan ilmentymä.[w3c04]

4 Vaikka OWL DL on täysin pääteltävissä, monien sen päätelmien laskeminen vie aikaa ontologian kokoon nähden eksponentiaalisesti, minkä vuoksi sekään ei sovellu moniin käytännön sovelluksiin. Tämän vuoksi siitä kehitettiin vieläkin rajoittuneempi alikieli, OWL Lite, jossa muun muassa kiellettiin muut kardinaalisuusrajoitteet kuin 0 ja 1 sekä luokkien määrittely toisten luokkien yhdisteinä tai komplementteina. Ikävä kyllä osoittautui, että osa alikielestä poistetuista OWL DL:n ominaisuuksista oli todellisuudessa edelleen käytettävissä yhdistelemällä kieleen jätettyjä ominaisuuksia, minkä vuoksi sen kompleksisuus oli haluttua suurempi, sitä oli käytännössä hankala käyttää ja sen menestys jäi vähäiseksi.[ghm08] Näiden alikielten lisäksi puhutaan usein OWL Full:sta tällä viitataan kokonaiseen, rajoittamattomaan OWL-kieleen. Termiä käytetään yleensä selventämään, että puhutaan nimenomaan kielen ilmaisuvoimaisimmasta versiosta eikä vain kielestä yleensä. Koska käytännöllisemmälle OWL-versiolle oli edelleen tarvetta, OWL2:n mukana esiteltiin kolme profiileiksi kutsuttua OWL DL:n alikieltä, OWL EL, OWL QL ja OWL RL. Näissä suunnittelun lähtökohtana ei ollut pelkkä laskettavuus, vaan jokainen profiili on suunniteltu ja optimoitu erilaisiin käytännön sovelluksiin [W3C09]. Vaikka nämä kolme profiilia ovat W3C:n standardoimia, periaatteessa kuka tahansa voi luoda käytännön lähtökohdista kehitetyn OWL-alikielen ja kutsua sitä OWL-profiiliksi [GHM08]. 3 OWL 2 EL OWL 2 EL (Web Ontology Language 2 Existential Logic) on OWL 2 -profiili, joka on syntaksiltaan OWL 2 DL:n alikieli. Se on suunnattu erityisesti ontologioille, jotka sisältävät erittäin suuria määriä luokkia ja ominaisuuksia, ja pohjautuu EL++kuvauslogiikkaan. [W3C09] 3.1 EL++-kuvauslogiikka Kuvauslogiikat (Description Logics) ovat logiikkajärjestelmiä, joissa pyritään mallintamaan ja päättelemään käsitteitä, rooleja, yksilöitä ja näiden välisiä suhteita. Se, mitä kuvauslogiikalla voi ilmaista ja kuinka nopeasti siihen pohjautuvalla päättelijällä voidaan laskea tiettyjä päätelmiä, riippuu siitä mitä eri ominaisuuksia (esimerkiksi universaali- tai eksistenssikvanttorit, käsitteiden leikkaukset ja yhdisteet tai kardinaali-

5 suusrajoitteet) käytössä olevaan logiikkaan on otettu mukaan. 90-luvun puolivälissä uskottiin, ettei luokkien keskinäistä sisältyvyyttä pystyttäisi laskemaan enintään polynomisessa ajassa ja kuvauslogiikoiden tutkimus keskittyi etsimään ja optimoimaan käytännöllisiä algoritmeja, jotka ratkaisisivat ongelman pahimmassa tapauksessa eksponentiaalisessa ajassa, mutta toimisivat käytännössä yleensä nopeammin. 2000-luvun alussa kuitenkin huomattiin, että luokkien leikkaukset ja eksistenssirajoitteet salliva EL-kuvauslogiikka mahdollisti sisältyvyyden laskemisen pahimmassa tapauksessa polynomisessa ajassa ja tarjosi lisäksi tarpeeksi ilmaisuvoimaa monien jo käytössä olevien ontologioiden, kuten lääketieteellisen SNOMED CT-ontologian, esittämiseen. [BBL05] Koska EL-kuvauslogiikka osoittautui käytännölliseksi, sille lähdettiin kehittämään laajennosta, joka tarjoaisi vielä enemmän ilmaisuvoimaa menettämättä hyödyllisiä laskettavuusominaisuuksia. Tuloksena syntyi EL++-kuvauslogiikka, joka sallii EL:n tarjoamien ominaisuuksien lisäksi muun muassa refleksiiviset ominaisuudet sekä luetellut olioarvorajoitteet (esimerkiksi ominaisuuden kohteena on jokin näistä yksilöistä ) [BBl05]. EL++:aa käytettiin lähtökohtana, kun OWL 2:een haluttiin lisätä profiili, joka tarjoaisi tarpeelliset työkalut monien käytössä olevien ontologioiden esittämiseen, mutta olisi kuitenkin laskettavissa järkevässä ajassa tuloksena oli OWL 2 EL. [W3C09] 3.2 Rajoitukset ja sovellukset OWL 2 EL on OWL 2 DL:n syntaktisesti rajoitettu alikieli sitä tulkitaan samoin kuin ilmaisuvoimaisempiakin OWL-variantteja, mutta se kieltää joidenkin OWL:n rakenteiden käytön. Huomattavimpia näistä ovat universaalikvantifiointi, kardinaalisuusrajoitteet, symmetriset ja asymmetriset ominaisuudet, luokkayhdisteet ja luokan komplementti. [W3C12a] OWL 2 EL suunniteltiin erityisesti olemassa olevia suuria biotiede- ja terveysontolgioita (SNOMED-CT, NCI Thesaurus, Galen) silmällä pitäen ja sisältää tarpeeksi ilmaisuvoimaa näiden esittämiseen [BBL05]. Profiili soveltuu tämän vuoksi erityisen hyvin aloille, joissa esiintyy paljon rakenteellisesti monimutkaisia käsitteitä ja yksilöitä, valtavia luokkamääriä ja paljon käsitteiden luokittelua [W3C12b]. Kieli myös takaa, että useat hyödylliset päättelyt kuten ontologian ristiriidattomuus ja luokkien keskinäinen sisältyvyys ovat laskettavissa enintään polynomisessa ajassa, mikä on hyödyllistä monille

6 järkevää laskentanopeutta vaativille sovelluksille [W3C09]. 4 OWL 2 QL OWL 2 QL (Web Ontology Language 2 Query Language) on, kuten OWL 2 EL, syntaksiltaan OWL 2 DL:n alikieli. Se on suunniteltu erityisesti relaatiotietokantoihin pohjautuvia sovelluksia varten ja mahdollistaa sillä toteutettuihin ontologioihin kohdistettavien kyselyiden muuntamisen normaaleiksi relaatiotietokantakyselyiksi. [W3C09] 4.1 Tietokantayhteensopivuus OWL 2 QL on suunniteltu siten, että sitä hyödyntävät ontologiat ovat toteutettavissa relaatiotietokantojen avulla: vaikka ontologia näyttää ulkoa päin OWL:lla toteutetulta ja siitä voidaan hakea tietoa normaaleilla ontologiakyselykielillä kuten SPARQL, kaikki sen tieto on tosiasiassa tallennettuna relaatiotietokantaan. Käytännössä tämä tehdään toteuttamalla tietokannalle rajapinta, joka ottaa vastaan ontologiakyselyitä ja kirjoittaa ne uudelleen SQL:ksi. Rajapinta ajaa SQL-kyselyt tietokannassa ja muuntaa vastauksen oikeaan muotoon, jolloin järjestelmän ulkopuolelta näyttää, että kyseessä olisi normaali OWL-dokumentti. [W3C09] OWL 2 QL on rajattu siten, että kaikilla siihen kohdistetuilla kyselyillä on pahimmassa tapauksessa logaritminen tilavaativuus ontologian sisältämään tietomäärään nähden [W3C09]. Tämä mahdollistaa tehokkaan tietokantatoteutuksen myös erittäin suurten ontologioiden tapauksessa. Lisäksi profiili on tarpeeksi ilmaisuvoimainen, jotta sillä voidaan ilmaista UML- ja ER-kaavioiden tärkeimmät ominaisuudet [W3C09] koska näitä kaaviotyyppejä käytetään usein tietokantojen suunnittelussa, tämän avulla voidaan yhdistää sekä ontologian käsitemallin että käytännön toteutuksen suunnittelu. 4.2 Rajoitukset ja sovellukset Jotta ontologia voidaan toteuttaa relaatiotietokannalla, OWL:n ilmaisuvoimaa joudutaan rajoittamaan huomattavasti. OWL 2 QL:ssä kielletään muun muassa eksistentiaali- ja universaalikvantifiointi, kardinaalisuurajoitteet, luokkayhdisteet, avaimet sekä funktionaaliset ja transitiiviset ominaisuudet. Myöskään kahden eri yksilön määrittäminen samaksi yksilöksi (owl:sameindividual) ei ole tuettu). [W3C12b]

7 Koska OWL 2 QL:n ilmaisuvoima on rajoittunut, se ei sovi erityisen hyvin monimutkaisia luokka- ja ominaisuusrakenteita vaativiin sovelluksiin. Se on kuitenkin riittävän voimakas mallintamaan monia yksinkertaisia ontologioita kuten tesauruksia [W3C12a]. Profiilin tiukan tietokantasidonnaisuuden vuoksi kyselyiden suorittaminen on nopeaa ja se soveltuukin parhaiten tilanteisiin, joissa ontologia sisältää erittäin suuria yksilömääriä ja joissa tietoa pitää kyetä käsittelemään ja muokkaamaan suoraan [W3C12a]. Tietokantapohjaisuus tarjoaa OWL 2 QL:n päälle rakennetuille sovelluksille myös muita profiileja paremmat vikasietoisuus- ja useiden käyttäjien yhteiskäyttöominaisuudet. [W3C12b] 5 OWL 2 RL W3C:n spesifikaatio määrittelee itse asiassa kaksi eri kieltä, joihin molempiin viitataan nimellä OWL 2 RL (Web Ontology Language 2 Rule Language). OWL 2 RL Direct Semantics on OWL 2 DL:n syntaktisesti rajoitettu alikieli. OWL 2 RL/RDF Rules puolestaan on kokoelma ensimmäisen logiikan päättelysääntöjä, joiden avulla voidaan laskea päättelyitä mielivaltaisista RDF-graafeista. [W3C00] Kielistä ensimmäistä ei juurikaan hyödynnetä käytännön sovelluksissa, joten tästä eteenpäin nimellä OWL 2 RL tarkoitetaan OWL 2 RL/RDF Rulesia, ellei toisin mainita. 5.1 OWL 2 RL/RDF Rules Kaikki aiemmissa luvuissa esitellyt OWL:n alikielet ovat olleet syntaktisesti rajoitettuja versioita OWL-kielestä. Tämä tarkoittaa, että kielissä on kielletty tai rajoitettu tiettyjen OWL:n tarjoamien rakenteiden käyttöä. OWL 2 RL on puolestaan OWL:n semanttisesti rajoitettu versio se antaa ontologian laatijan käyttää mitä tahansa OWL:n rakenteita, mutta rajoittaa sitä päättelysääntöjen joukkoa, jonka perusteella päättelijä etsii ontologiasta implisiittistä tietoa. Nopeaa laskettavuutta ei RL:ssä saavuteta kieltämällä hankalasti laskettavien ominaisuuksien käyttö, vaan yksinkertaisesti jättämällä ne laskematta. W3C:n suosituksessa OWL 2 RL on määritelty joukkona päättelysääntöjä, jotka muodostuvat RDF-kolmikkoina esitetyistä if- ja then-osista. If-osassa on kaksi tai useampi ontologian aksioomaa ja then-osassa on johtopäätös, joka näistä aksioomista on päätel-

8 tävissä. Esimerkiksi ominaisuuden transitiivisuus on määritelty seuraavasti: If T(?p,rdf:type, owl:transitiveproperty) T(?x,?p,?y) T(?y,?p,?z) Then T(?x,?p,?z) Taulukossa kysymysmerkillä alkavat nimet ovat kiinnittämättömiä muuttujia, muut määrättyjä nimiä. Taulukon sääntö siis määrittelee, että jos ontologiassa ominaisuudella p on rdf:type-ominaisuus, jonka arvo on owl:transitiveproperty, yksilöllä x on ominaisuus p, jonka arvona on yksilö y ja yksilöllä y on ominaisuus p, jonka arvona on yksilö z, niin tällöin yksilöllä x on implisiittisesti myös ominaisuus p, jonka arvona on z. [W3C09] Koska OWL 2 RL on OWL:n semanttinen, ei syntaktinen, alikieli, se ei aseta rajoitteita sille, mitä OWL Full:n määrittelemiä rakenteita dokumenteissa saa esiintyä. Itse asiassa OWL 2 RL ei periaatteessa vaadi OWL:ää lainkaan, vaan sen avulla voidaan laskea päättelyitä mielivaltaisista RDF-graafeista. Käytännössä suurin osa OWL 2 RL:n päättelysäännöistä kuitenkin perustuu nimenomaan OWL:n määrittelemiin rakenteisiin ja luokkiin, joten ontologioista jotka eivät sisällä OWL:ää ei kyetä laskemaan sen enempää päätelmiä kuin RDF:llä ja RDF Schemalla. [W3C09] 5.2 OWL 2 RL Direct Semantics OWL 2 RL Direct Semantics on OWL 2 DL:n syntaktisesti rajoitettu alikieli, joka toimii kumppanina OWL 2 RL/RDF Rulesille. Kielen tekemät rajoitukset ovat muita profiileja tiukempia ja osittain epäsymmetrisiä esimerkiksi määriteltäessä luokkaa toisen aliluokaksi, luokkayhdisteitä voi käyttää vain aliluokan määrittelyssä ja kardinaliteettirajoituksia yläluokan määrittelyssä [W3C09]. Profiilin rajoitusten vuoksi sitä on hankala soveltaa käytännössä, eikä sitä todellisuudessa juurikaan käytetä [Sch12]. OWL 2 RL Direct Semanticsin ja OWL 2 RL/RDF Rulesin välinen yhteys on esitetty W3C:n suositukseen kirjatussa teoreemassa: Olkoot O 1 ja O 2 OWL 2 RL Direct Semanticsin mukaisia ontologioita, joille pätee: kumpikaan ei sisällä URIa, joka on useampaa kuin yhtä OWL-käsitetyyppiä (esim. luokka, yksilö tai ominaisuus)

9 O 1 ei sisällä aksioomia SubAnnotationPropertyOf, AnnotationPropertyDomain tai AnnotationPropertyRange jokainen O 2 :n aksiooma määrittelee joko yksilön olevan luokan ilmentymä, yksilöllä olevan olio- tai tieto-ominaisuuden, tai että kaksi yksilöä ovat samat Tällöin O 1 saadaan pääteltyä O 2 jos ja vain jos O 1 :n RDF-muotoisesta esityksestä saadaan pääteltyä O 2 :n RDF-muotoinen esitys noudattamalla OWL 2 RL/RDF Rulesin päättelysääntöjä. Toisin sanoen, vaikka toinen kielistä on saatu rajoittamalla syntaksia ja toinen semantiikkaa, niillä on sama ilmaisuvoima. [W3C09] 5.3 Sovellukset OWL 2 RL on suunnattu sovelluksille, jotka tarvitsevat nopeaa ja sovellusta varten kustomoitua päättelyä profiili sallii itse määrittelemiensä päättelysääntöjen lisäksi minkä tahansa OWL 2 Full -päättelyiden laskemisen, minkä vuoksi jokaiselle sovellukselle voidaan valita juuri sen tarvitsema ilmaisuvoima. OWL-Full-päättelyiden laskeminen tietenkin heikentää tietenkin suorituskykyä, mutta sovelluksesta riippuen tämä voi olla välttämätön kompromissi. Kieli sopii myös sellaisiin sovelluksiin, joissa käytetään ennestään RDF-pohjaisia dokumentteja ja ontologioita, koska RDF Rules -semantiikkaa voidaan soveltaa näihin sellaisenaan.[w3c09] Päättelysääntöjen kevyen laskettavuuden ja helpon toteutettavuuden vuoksi profiili soveltuu myös hyvin sovelluksiin, joissa on ennestään käytetty pelkästään RDF:ää ja RDF Schemaa ja joihin halutaan tuoda lisäksi hiukan enemmän OWL:n tarjoamaa ilmaisuvoimaa [GHM08]. 6 Laskennallisten ominaisuuksien vertailua Taulukossa 1 on vertailtu eri OWL-alikielten laskennallisia ominaisuuksia. Muiden kuin kyselykompleksisuuden tapauksessa tarkasteltavat päättelyt ovat ontologian ristiriidattomuus, onko luokassa yksilöitä, luokkien sisältyvyys ja kuuluuko tietty yksilö tiettyyn luokkaan. Taksonominen kompleksisuus on päättelyn kompleksisuus suhteessa ontologian luokkien ja ominaisuuksien määrään, tietokompleksisuus on kompleksisuus suhteessa yksilöiden määrään ja yhdistetty kompleksisuus on kompleksisuus suhteessa molempiin. Kyselykompleksisuus on konjunktiivisiin kyselyihin vastaamisen vaativuus

10 suhteessa kyselyn pituuteen. Kieli Taksonominen kompleksisuus Tietokompleksisuus Kyselykompleksisuus Yhdistetty kompleksisuus OWL 2 Full Ei pääteltävissä Ei pääteltävissä Ei pääteltävissä Ei pääteltävissä OWL 2 EL Polynominen Polynominen NP-täydellinen Polynominen OWL 2 QL NLogSpace Logaritminen tilavaativuus NP-täydellinen NLogSpace OWL 2 RL Polynominen Polynominen NP-täydellinen Co-NPtäydellinen (polynominen atomisten luokkien tapauksessa) OWL 1 DL Eksponentiaalinen Pääteltävissä, mutta tuntematon kompleksisuus Taulukko 1: OWL:n alikielten kompleksisuus [W3C09] Tuntematon Tuntematon Taulukon kompleksisuudet ovat aikavaativuuksia, ellei toisin mainita. NLogSpace tarkoittaa logaritmista tilavaativuutta epädeterministisellä algoritmilla ja atomisilla luokilla viitataan luokkiin, joita ei ole muodostettu rajoittamalla tai yhdistämällä muita luokkia. 7 Yhteenveto OWL (Web Ontology Language) on ontologiakieli kieli, jolla voidaan mallintaa periaatteessa mitä tahansa mielivaltaisia käsitteitä ja niiden välisiä yhteyksiä. OWLdokumentit sisältävät usein implisiittistä tietoa, jonka esille tuominen on hyödyllistä, koska se voi tarjota ontologian kuvaamista käsitteistä ja yksilöistä tietoa, jota edes ontologian laatija ei ole tiedostanut. Implisiittinen tieto voidaan etsiä päättelijällä, mutta OWL:n valtavan ilmaisuvoiman vuoksi on mahdollista luoda ontologioita, joissa osa päättelyistä on vaikeaa tai jopa mahdotonta laskea. Koska nämä päättelyt ovat hyödyllisiä monille käytännön sovelluksille, OWL:stä jalostettiin rajoittuneemmat alikielet OWL DL ja OWL Lite, jotka tarjosivat rajoitetun ilmaisuvoiman kautta parempaa käytännön suorituskykyä. Nämä alikieletkään eivät sopineet kaikkien sovellusten tarpeisiin, joten OWL:n 2. version yhteydessä määriteltiin kolme nimenomaan käytännön sovellusten tarpeisiin alikieltä, joita kutsutaan profiileiksi.

11 OWL 2 EL on erityisesti laajoille, paljon erilaisia luokkia ja ominaisuuksia sekä monimutkaisia rakenteellisia yhteyksiä sisältäville ontologioille soveltuva profiili, joka takaa, että monet hyödylliset päätelmät kuten ontologian ristiriidattomuus ja luokkien keskinäinen sisältyvyys voidaan laskea enintään polynomisessa ajassa. Se tarjoaa siis riittävän laskentanopeuden moniin käytännön sovelluksiin ja tarpeeksi ilmaisuvoimaa monien merkittävien ontologioiden kuten SNOMED-CT:n mallintamiseksi. OWL 2 QL on kevyille ontologioille kuten tesauruksille soveltuva profiili. Se mahdollistaa relaatiotietokantapohjaisen toteutuksen, jonka avulla ontologiasta kyetään hakemaan tietoa tavallista nopeammin. Relaatiotietokantatoteutus tarjoaa sovellukselle myös monia muita hyödyllisiä ominaisuuksia, kuten vikasietoisuuden ja usean käyttäjän samanaikaisen yhteiskäytön. OWL 2 RL on kevyt profiili erityisesti RDF-pohjaisille sovelluksille. Se tarjoaa kevyen semantiikan, jonka avulla voidaan lisätä mihin tahansa RDF-pohjaiseen ontologiaan OWL-ominaisuuksia ja mahdollistaa semantiikan ja suorituskyvyn skaalaamisen juuri sovelluksen vaatimalle tasolle.

12 Lähteet BBL05 Baader, F., Brandt, S., Lutz, C., Pushing the EL Envelope. Proceedings of tje 19th Joint Int. Conf. on Artificial Intelligence, 2005. http://lat.inf.tu-dresden.de/research/papers/2005/baaderbrandtlutz-ijcai-05.pdf [24.10.2013] GHM08 Grau, B. C., Horrocks, I., Motik, B., Parsia, B., Patel-Schneider, P., & Sattler, U., OWL 2: The next step for OWL. Web Semantics: Science, Services and Agents on the World Wide Web, 6(4), 2008, sivut 309-322. http://www.sciencedirect.com/science/article/pii/s1570826808000413 [16.10.2013] Sch12 Schneider, M., Answer to OWL2 RL vs. OWL2 RL/RDF Rules. 2012. http://answers.semanticweb.com/questions/13690/owl2-rl-vs-owl2-rlrdf-rules [24.10.2013] W3C04 W3C, OWL Web Ontology Language Overview. 2004. http://www.w3.org/tr/2004/rec-owl-features-20040210/ [16.10.2013] W3C09 W3C, OWL 2 Web Ontology Language Profiles. 2009. http://www.w3.org/2007/owl/draft/ed-owl2-profiles- 20090420/all.pdf[16.10.2013] W3C12a W3C, OWL 2 Web Ontology Language New Features and Rationale. 2012. http://www.w3.org/tr/2012/rec-owl2-new-features-20121211/ [24.10.2013] W3C12b W3C, OWL 2 Web Ontology Language Primer (Second Edition). 2012. http://www.w3.org/tr/2012/rec-owl2-primer-20121211/ [24.10.2013]