1 / 44

Web Ontology Language

Web Ontology Language. OWL. RDF eml ékeztető. Nagyon egyszer ű ontológialeíró nyelv Erőforrások közötti kapcsolatrendszer leírására Jelentés a kapcsolatrendszerből ered (szemantika). xyz. pql. frt. alosztálya. pql. frt. RDF kiterjesztése - RDFS.

Download Presentation

Web Ontology Language

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Web Ontology Language OWL

  2. RDF emlékeztető • Nagyon egyszerű ontológialeíró nyelv • Erőforrások közötti kapcsolatrendszer leírására • Jelentés a kapcsolatrendszerből ered (szemantika)

  3. xyz pql frt alosztálya pql frt RDF kiterjesztése - RDFS • Bizonyos erőforrások jelentése rögzítve • Eddig: • Ezután: • Még mindig elég egyszerű ontológianyelv • Fogalom- és szerephierarchia építhető

  4. Komplex nyelvi elemek • Leíró logikákkal több minden kifejezhető • Egy DL nyelvhez többféle szintaxis • Hangsúly a jelentésen, nem a szintaxison • OWL nyelv tekinthető egy konkrét szintaxisának

  5. Miért pont ilyen lett a világháló ontológia nyelve? • Ugyanaz motiválta, mint az RDF-et • XML alapú • Weben kényelmesen elhelyezhető • Jelenlegi webes keresők támogatják az XML dokumentumok feldolgozását • Adatcsere formátum alkalmazások között • DL háttér biztosítja a következtetést

  6. Mi az OWL? • Egy OWL dokumentum egy érvényes RDF leírás • OWL bevezet egy erőforrás halmazt és rögzíti a jelentését • Ugyanúgy, mint az RDFS

  7. <?xml version=“1.0” encoding=“ISO-8859-1”?> <rdf:RDF xml:base=http://ww.cs.bme.hu/vima9000# xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns# xmlns:rdfs=http://www.w3.org/2000/01/rdf-schema# xmlns:owl=http://www.w3.org/2002/07/owl#> <owl:Class rdf:ID=“Ember” /> <owl:Class rdf:ID=“Nő”> <rdfs:subClassOf rdf:resource=“#Ember”/> </owl:Class> <owl:ObjectProperty rdf:ID=“gyereke”> <rdfs:domain rdf:resource=“#Ember”/> <rdfs:range rdf:resource=“#Ember”/> </owl:ObjectProperty> <owl:Class rdf:ID=“LányosApa”> <owl:intersectionOf rdf:parseType=“Collection”> <owl:Class rdf:about:”#Ember”/> <owl:Class> <owl:complementOf rdf:resource=“#Nő”/> </owl:Class> <owl:Restriction> <owl:onProperty rdf:resource=“#gyereke” /> <owl:allValuesFrom rdf:resource=“#Nő” /> </owl:Restriction> </owl:interectionOf> </owl:Class> </rdf:RDF>

  8. OWL résznyelvei • OWL Full • Minden RDF konstrukció használható • Nem ágyazható semmilyen DL nyelvbe • Probléma: magasabbrendű kijelentések • OWL DL • Közvetlenül fordítható DL-re -> SHOIN(D) • Erőforrásoknak meghatározott típusa van: • Egyed, konkrét érték, osztály, konkrét osztály, absztrakt tulajdonság, konkrét tulajdonság

  9. OWL résznyelvei • OWL Lite • Leegyszerűsített OWL DL • Megfelel a SHIF(D) nyelvnek • Átmenet az RDFS és az OWL DL között • Nagyon hatékony következtetés

  10. OWL osztályok • Elnevezett osztály • Enumerációs osztály • Tulajdonságkorlátozásos osztály • Metszet osztály • Unió osztály • Komplementer osztály

  11. OWL osztályok • Elnevezett osztály • DL: atomi fogalom • 2 beépített elnevezett osztály: • owl:Thing • owl:Nothing <owl:Class rdf:ID=“Ember”/>

  12. OWL osztályok • Enumerációs osztály • DL: nominálisok uniója • Nem megengedett OWL Lite-ban <owl:Class> <owl:oneof rdf:parseType=“Collection”> <owl:Thing rdf:about=“#Hétfő”/> <owl:Thing rdf:about=“#Kedd”/> … </owl:oneof> </owl:Class>

  13. OWL osztályok • Tulajdonságkorlátozásos osztály • Értékkorlátozás • Számosságkorlátozás <owl:Restriction> <owl:onProperty rdf:resource=“P”/> {korlátozás} </owl:Restriction>

  14. OWL osztályok Tulajdonságkorlátozás: értékkorlátozás • DL: ( R.C), ( R.C), ( R.{a}) <owl:Restriction> <owl:onProperty rdf:resource=“#gyereke”/> <owl:allValuesFrom rdf:resource=“#Szőke”/> <owl:someValuesFrom rdf:resource=“#Nő”/> <owl:hasValue rdf:resource=“#Judit”/> </owl:Restriction>

  15. OWL osztályok Tulajdonságkorlátozás: számosságkorlátozás • DL: (n R), (n R), (=n R) <owl:Restriction> <owl:onProperty rdf:resource=“#alkalmazottja”/> <owl:minCardinality rdf:datatype=“&xsd;nonnegativeInteger”> 3 </owl:minCardinality> <owl:maxCardinality rdf:datatype=“&xsd;nonnegativeInteger”> 50 </owl:maxCardinality> </owl:Restriction>

  16. OWL osztályok • Metszet osztály <owl:Class> <owl:intersectionOf rdf:parsetype=“Collection”> <owl:Class rdf:resource=“#Magas”/> <owl:Class rdf:resource=“#Barna”/> </owl:intersectionOf> </owl:Class>

  17. OWL osztályok • Unió osztály <owl:Class> <owl:unionOf rdf:parseType=“Collection”> <owl:Class rdf:about=“#Nő”/> <owl:Restriction> <owl:onProperty rdf:resource=“#hajszíne”/> <owl:hasValue>Barna</owl:hasValue> </owl:Restriction> </owl:unionOf> </owl:Class>

  18. OWL osztályok • Komplementer osztály <owl:Class> <owl:complementOf> <owl:Class rdf:about=“#Szőke”/> </owl:complementOf> </owl:Class>

  19. OWL axiómák • Fogalomtartalmazási axiómák • rdfs:subClassOf • Fogalomazonossági axiómák • owl:equivalentClass • Diszjunkció • owl:disjointWith

  20. Fogalomtartalmazási axiómák <owl:Class rdf:about=“#Ház”> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource=“#ablaka”/> <owl:minCardinality rdf:datatype=“&xsd;nonnegativeInteger> 3 </owl:minCardinality> </owl:Restriction> </rdfs:subClassOf> </owl:Class>

  21. Fogalomazonossági axiómák <owl:Class rdf:about=“#Hétvége”> <owl:equivalentClass> <owl:Class> <owl:oneof rdf:parseType=“Collection”> <owl:Thing rdf:about=“#szombat”/> <owl:Thing rdf:about=“#vasárnap”/> </owl:oneof> </owl:Class> </owl:equivalentClass> </owl:Class>

  22. Diszjunkció <owl:Class rdf:about=“#Férfi”> <owl:disjointWith rdf:resource=“#Nő”/> </owl:Class>

  23. OWL szerepek • Nincsenek szerepkonstruktorok • Kijelenthetjük, hogy egy szerep létezik <owl:ObjectProperty rdf:ID=“gyereke”/> <owl:DatatypeProperty rdf:ID=“mérete”/>

  24. Szerepállítások • RDF séma lehetőségek <owl:ObjectProperty rdf:ID=“apja”> <rdfs:subPropertyOf rdf:resource=“#szülője”/> </owl:ObjectProperty> <owl:ObjectProperty rdf:ID=“kedvencItala”> <rdfs:domain rdf:resource=“#Ember”/> <rdfs:range rdf:resource=“#Ital”/> </owl:ObjectProperty>

  25. Szerepállítások • Szerepazonosság, inverz szerepek <owl:ObjectProperty rdf:about=“#gyereke”> <owl:equivalentProperty rdf:resource=“#kölyke”/> <owl:inverseOf rdf:resource=“#szülője”/> </owl:ObjectProperty>

  26. Szerepállítások • Funkcionális, inverz funkcionális szerep <owl:ObjectProperty rdf:ID=“felesége”> <rdf:type rdf:resource=“&owl;FunctionalProperty”/> <rdf:type rdf:resource=“&owl;InverseFunctionalProperty”/> </owl:ObjectProperty>

  27. Szerepállítások • Tranzitivitás, szimmetria <owl:SymmetricProperty rdf:ID=“testvére”/> <owl:ObjectProperty rdf:ID=“része”> <rdf:type rdf:resource=“#owl;TransitiveProperty/> </owl:ObjectProperty>

  28. OWL egyedek • Nincs UNA • Fontos, hogy egyedekről kijelenthessük, hogy • azonosak • különbözőek

  29. OWL egyedek • Egyedek azonossága <rdf:Description rdf:about=“#Rudi”> <owl:sameAs rdf:resource=“#Rudolf”/> </rdf:Description>

  30. OWL egyedek • Egyedek különbözősége <t:Film rdf:ID=“Ötödik_Elem”> <owl:differentFrom rdf:resource=“Ponyvaregény”/> </t:Film>

  31. OWL egyedek • Egyedek különbözősége <owl:AllDifferent> <owl:distinctMembers rdf:parseType=“Collection”> <t:Film rdf:about=“#Ötödik_Elem”/> <t:Film rdf:about=“#Ponyvaregény”/> <t:Film rdf:about=“#Kill_Bill”/> </owl:distinctMembers> </owl:Alldifferent>

  32. OWL 2 - újdonságok • Szinaktikus édesítőszerek • Nyelvi kiterjesztés – SROIQ(D) • Kiterjesztett konkrét adattípusok • Metamodellezés

  33. Szintaktikus édesítőszerek • DisjointUnion diszjunkt unióból előálló osztály • DisjointClasses megadott osztályok diszjunktak • NegativeObjectPropertyAssertion -gyereke(a,b) • NegativeDataPropertyAssertion -mérete(a,42)

  34. Nyelvi kiterjesztés: SROIQ(D) • Önkorlátozás • R.Self • Minősített számosságkorlátozás • n R.C, n R.C, =n R.C • Reflexív szerep • x R(x,x) • Irreflexív szerep • x -R(x,x) • Antiszimmetrikus szerep • x,y R(x,y)  -R(y,x)

  35. Nyelvi kiterjesztés: SROIQ(D) • Diszjunkt szerepek • R(x,y)  -S(x,y) • Komplex szerephierarchia • R1R2…Rn R • Kulcsok • hasKey(Diák, neptunkódja) Minden diákot azonosít a neptun kódja. • hasKey(Verseny, sportága, ideje, helye) Minden versenyt azonosít a sportág, idő, hely hármas.

  36. Kiterjesztett konkrét adattípusok • OWL-ben csak integer és string adattípusok támogatottak • OWL 2-ben új adattípusok (pl. double, float, decimal) • OWL 2-ben lehetőség van felhasználói adattípusok definiálására, pl: • {18-nál nagyobb egészek} • {18-nál kisebb, vagy 32-nél nagyobb egészek} • {legalább 3 hosszú stringek}

  37. Metamodellezés • OWL-ben az erőforrásoknak jól meghatározott típusa van • OWL 2-ben egy erőforrás lehet egyszer egyed, egyszer osztály • Sas: sasok halmaza • Sas: egyed, mely egy fajt azonosít • Konkrét egyedek és osztályok, valamint tulajdonságok továbbra is csak egy szerepben fordulhatnak elő

  38. Példa Adottak az Ember és Robot fogalmak,melyek részei a Lények fogalomnak. Az Emberfogalmon belül létezik egy Kimek nevû részfogalom. Definiáltak továbbá a következő szerepek: gyűlöli, felettese és ismeri. Tudjuk, hogy ember nem lehet robot felettese, valamint egy robot nem gyűlöl senkit. Azt is tudjuk, hogy mindenki ismeri a feletteseit és viszont, továbbá mindenki ismeri azt, akit gyűlöl. Zsarnoknak nevezünk egy embert, ha ő kimek, legalább két nemkimek-ember gyűlöli őt, valamint van robot felettese.

  39. Adottak az Ember és Robot fogalmak,melyek részei a Lények fogalomnak. Az Emberfogalmon belül létezik egy Kimek nevû részfogalom. <owl:Class rdf:about="#Lény"/> <owl:Class rdf:about="#Robot"> <rdfs:subClassOf rdf:resource="#Lény"/> </owl:Class> <owl:Class rdf:about="#Ember"> <rdfs:subClassOf rdf:resource="#Lény"/> </owl:Class> <owl:Class rdf:about="#Kimek"> <rdfs:subClassOf rdf:resource="#Ember"/> </owl:Class>

  40. Definiáltak továbbá a következő szerepek: gyűlöli, felettese és ismeri. <owl:ObjectProperty rdf:about=“#gyűlöli”/> <owl:ObjectProperty rdf:about=“#felettese”/> <owl:ObjectProperty rdf:about=“#ismeri”/>

  41. Tudjuk, hogy ember nem lehet robot felettese,… <owl:Description rdf:about="#Ember"> <owl:disjointWith> <owl:Restriction> <owl:onProperty> <owl:ObjectProperty> <owl:inverseOf rdf:resource="#felettese"/> </owl:ObjectProperty> </owl:onProperty> <owl:someValuesFrom rdf:resource="#Robot"/> </owl:Restriction> </owl:disjointWith> </owl:Description>

  42. …valamint egy robot nem gyűlöl senkit. <owl:Description rdf:about=“#Robot”> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource=“#gyűlöli”/> <owl:allValuesFrom rdf:resource=“owl:Nothing”/> </owl:Restriction> </rdfs:subClassOf> </owl:Description>

  43. Azt is tudjuk, hogy mindenki ismeri a feletteseit és viszont, továbbá mindenki ismeri azt, akit gyűlöl. <owl:ObjectProperty rdf:about="#felettese"> <owl:inverseOf rdf:resource="#beosztottja"/> <rdfs:subPropertyOf rdf:resource="#ismeri"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#beosztottja"> <rdfs:subPropertyOf rdf:resource="#ismeri"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#gyűlöli"> <rdfs:subPropertyOf rdf:resource="#ismeri"/> </owl:ObjectProperty>

  44. Zsarnoknak nevezünk egy embert, ha ő kimek, legalább két nemkimek-ember gyűlöli őt, valamint van robot felettese. <owl:Class rdf:about="#Zsarnok"> <rdfs:subClassOf rdf:resource="#Ember"/> <rdfs:subClassOf rdf:resource="#Kimek"/> <rdfs:subClassOf><owl:Restriction> <owl:onProperty rdf:resource="#felettese"/> <owl:someValuesFrom rdf:resource="#Robot"/> </owl:Restriction></rdfs:subClassOf> <rdfs:subClassOf><owl:Restriction> <owl:onProperty><owl:ObjectProperty> <owl:inverseOf rdf:resource="#gyűlöli"/> </owl:ObjectProperty></owl:onProperty> <owl:onClass><owl:Class> <owl:complementOf rdf:resource="#Kimek"/> </owl:Class></owl:onClass> <owl:minQualifiedCardinality rdf:datatype="&xsd;nonNegativeInteger"> 2 </owl:minQualifiedCardinality> </owl:Restriction></rdfs:subClassOf> </owl:Class>

More Related