Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

RDF a gyakorlatban. Ontológia  Filozófiai jelentés lételmélet lételmélet  Mérnöki jelentés sokféle meghatározás sokféle meghatározás sokszor egymásnak.

Hasonló előadás


Az előadások a következő témára: "RDF a gyakorlatban. Ontológia  Filozófiai jelentés lételmélet lételmélet  Mérnöki jelentés sokféle meghatározás sokféle meghatározás sokszor egymásnak."— Előadás másolata:

1 RDF a gyakorlatban

2 Ontológia  Filozófiai jelentés lételmélet lételmélet  Mérnöki jelentés sokféle meghatározás sokféle meghatározás sokszor egymásnak ellentmondó sokszor egymásnak ellentmondó

3 Ontológia – mérnöki jelentés(ek)  Dolgok és kapcsolataik pontos, formális leírása  Olyan fogalmi modell, mely absztrakt és leegyszerűsített képe egy világnak  Egy fogalmi rendszer konszenzuson alapuló, explicit, részletes leírása.  Egy adott tárgyterülethez tartozó fogalmak explicit, formális specifikációja

4 Példák ontológiákra  Yahoo: taxonómia honlapok kategorizálására  Amazon: termékek és tulajdonságaik kategorizálása  Orvostudomány: hatalmas, strukturált szótárak (SNOMED)  WordNet: általános célú fogalomtár az angol nyelvhez

5 Miért készítünk ontológiákat? 1. Az információ strukturájáról való tudás megosztása  Az egyik leggyakoribb ok  Pl.  sok honlap szól orvosi eszközökről  ugyanazt a mögöttes ontológiát használják  Computer ágensek információt tudnak kinyerni és össze tudják rakni

6 Miért készítünk ontológiákat? 1. Tudás újrafelhasználása  Ugyanazon dolgok (fogalmak, egyedek) fontosak lehetnek más csoportoknak is  Nagy, általános ontológia összerakható már elkészült apróbb ontológiákból  Általános ontológia kiegészíthető a saját tárgyterület leírására

7 Miért készítünk ontológiákat? 1. A tárgyterület feltételezéseinek explicitté tétele  Új felhasználók könnyebben tanulnak  Könnyű megváltoztatni  Nincs belekódolva a programba, az is változtathat, aki nem tud programozni

8 Miért készítünk ontológiákat? 1. A tárgyterületre és a végrehajtásra vonatkozó tudás szétválasztása  Készítünk egy ontológiát PC komponensekről.  Készítünk egy algoritmust, mely ez alapján eladásra kész PC-ket rak össze.  Az algoritmus lifteket is össze tud rakni, ha lecseréljük a PC komponens ontológiát lift komponens ontológiára.

9 Miért készítünk ontológiákat? 1. Tágyterület tudás analizálása  Hibák, ellentmondások felderítése  Újrafelhasználás  Továbbfejlesztés

10 Miért készítünk ontológiákat? 1. Ontológiákat általában nem önmagukért készítjük  Különféle problémamegoldó módszerek, tárgyterület független alakalmazások, program ágensek használnak ontológiákat.

11 RDF használata a keresés támogatására  Milyen formátum?  Hol érik el a keresők az RDF leírást?  RDF források lekérdezése  Következtetési feladatok

12 RDF források formátuma  XML Már úgyis elterjedt a weben Már úgyis elterjedt a weben Keresők fel vannak készülve az RDF leírások szintaktikai elemzésére Keresők fel vannak készülve az RDF leírások szintaktikai elemzésére

13 RDF források elhelyezése  Metainformáció logikai elhelyezése Bárhol lehet bármi vagy csak az adott forrásról Bárhol lehet bármi vagy csak az adott forrásról Keresőknek mindegy, ők a sok pici RDF gráfot összekapcsolják URI-k segítségével Keresőknek mindegy, ők a sok pici RDF gráfot összekapcsolják URI-k segítségével  Fizikai elhelyezés Honlapba ágyazva vagy honlaphoz csatolva? Honlapba ágyazva vagy honlaphoz csatolva? Nincs általánosan elfogadott válasz Nincs általánosan elfogadott válasz

14 RDF forrás HTML oldalba ágyazva  Szemléletes és kényelmes: metainformáció közel az információhoz  Böngésző megjelenít metaadatokat is 

15 RDF forrás HTML oldalba ágyazva: RDFa  RDF leírás attribútumok segítségével  Közvetlenül a honlapon megjelenő elemek köré tesszük a metainformációt  Nem kell kétszer leírni ugyanazt  XHTML kompatibilis  Keresők már támogatják!

16 RDFa egy egyszerű honlap

17 RDFa forráskód <html xmlns="http://www.w3.org/1999/xhtml" xmlns:cal="http://www.w3.org/2002/12/cal/icaltzd#" xmlns:cal="http://www.w3.org/2002/12/cal/icaltzd#" xmlns:xs="http://www.w3.org/2001/XMLSchema#"> xmlns:xs="http://www.w3.org/2001/XMLSchema#"> Hétvége a Balatonnál : Hétvége a Balatonnál : 2011-02-25 2011-02-25 -től -től 2011-02-28 2011-02-28 -ig. -ig. További információ a További információ a Balaton ról a cégünk Balaton ról a cégünk balatoni honlapján. balatoni honlapján. </html>

18 RDFa séma információ <html xmlns="http://www.w3.org/1999/xhtml" xmlns:cal="http://www.w3.org/2002/12/cal/icaltzd#" xmlns:cal="http://www.w3.org/2002/12/cal/icaltzd#" xmlns:xs="http://www.w3.org/2001/XMLSchema#"> xmlns:xs="http://www.w3.org/2001/XMLSchema#"> Hétvége a Balatonnál : Hétvége a Balatonnál : 2011-02-25 2011-02-25 -től -től 2011-02-28 2011-02-28 -ig. -ig. További információ a További információ a Balaton ról a cégünk Balaton ról a cégünk balatoni honlapján. balatoni honlapján. </html>

19 RDFa amit az olvasó lát <html xmlns="http://www.w3.org/1999/xhtml" xmlns:cal="http://www.w3.org/2002/12/cal/idaltzd#" xmlns:cal="http://www.w3.org/2002/12/cal/idaltzd#" xmlns:xs="http://www.w3.org/2001/XMLSchema#"> xmlns:xs="http://www.w3.org/2001/XMLSchema#"> Hétvége a Balatonnál : Hétvége a Balatonnál : 2011-02-25 2011-02-25 -től -től 2011-02-28 2011-02-28 -ig. -ig. További információ a További információ a Balaton ról a cégünk Balaton ról a cégünk balatoni honlapján. balatoni honlapján. </html>

20 RDFa amit az RDF elemző lát <html xmlns="http://www.w3.org/1999/xhtml" xmlns:cal="http://www.w3.org/2002/12/cal/idaltzd#" xmlns:cal="http://www.w3.org/2002/12/cal/idaltzd#" xmlns:xs="http://www.w3.org/2001/XMLSchema#"> xmlns:xs="http://www.w3.org/2001/XMLSchema#"> Hétvége a Balatonnál : Hétvége a Balatonnál : 2011-02-25 2011-02-25 -től -től 2011-02-28 2011-02-28 -ig. -ig. További információ a További információ a Balaton ról a cégünk Balaton ról a cégünk balatoni honlapján. balatoni honlapján. </html>

21 RDFa amit mindketten látnak <html xmlns="http://www.w3.org/1999/xhtml" xmlns:cal="http://www.w3.org/2002/12/cal/idaltzd#" xmlns:cal="http://www.w3.org/2002/12/cal/idaltzd#" xmlns:xs="http://www.w3.org/2001/XMLSchema#"> xmlns:xs="http://www.w3.org/2001/XMLSchema#"> Hétvége a Balatonnál : Hétvége a Balatonnál : 2011-02-25 2011-02-25 -től -től 2011-02-28 2011-02-28 -ig. -ig. További információ a További információ a Balaton ról a cégünk Balaton ról a cégünk balatoni honlapján. balatoni honlapján. </html>

22 RDFa amit az RDF elmező tud #event1 isA cal:Vevent #event1 cal:summary “Hétvége a Balatonnál” #event1 cal:dtstart “2011-02-25”^^xs:date #event1 cal:dtend “2011-02-28”^^xs:date #event1 cal:location “Balaton” #event1 cal:url http://www.balaton.hu/ http://www.balaton.hu/http://www.balaton.hu/

23 RDF adatok külön állományban  Link mutat a honlapról a metaadatokra <head> A világ legjobb honlapja A világ legjobb honlapja

24 RDF adatok külön állományban  Kényelmesen szétválik az információ és a metainformáció  Háttértudás leírására kényelmes  Ha nem html oldal az adatforrás, akkor csak ez van  Modellezés független az elhelyezéstől!

25 RDF lekérdezők  Azért van RDF leírásunk, hogy kérdéseket tudjunk feltenni Kik a gazdagok? Kik a gazdagok? Kik Ádám testvérei? Kik Ádám testvérei? Milyen kapcsolat van Ádám és Éva között? Milyen kapcsolat van Ádám és Éva között?  Válaszként az RDF leírás megfelelő részét szeretnénk visszakapni

26 XML alapú lekérdezők  Többnyire úgyis XML alakban jelenik meg a leírás   túlságosan elérési útvonal orientáltak: azt fogalmazzuk meg, hogy milyen úton jutunk el a kérdéses elemhez az XML fában   RDF gráfhoz sokféle XML alak tartozik, melyek logikailag ekvivalensek

27 XML dokumentum lekérdezése Az XQuery nyelv  Funkcionális nyelv  Útkifejezésekkel kiegészített általános programozási nyelv  Az útkifejezések csomópontokat azonosítanak az XML fában Elemet (gyerekeivel együtt) Elemet (gyerekeivel együtt) Attribútumot Attribútumot

28 XQuery útkifejezések 1. 1. 2. 2. 3. 3. 4. 4. 5. 5. 6. 6. 7. 7. 8. 8. 9. 9. 10. 10. 11. 11. 12. 12. 13. 13. 14. 14. 15. 15. 16. 16. /AAA1 Abszolút út /AAA/CCC/DDD10 //BBB4, 5, 11, 12 Az összes BBB elem //CCC/DDD/BBB11, 12 //AAA/CCC/DDD/*11, 12, 13 Jokerelem //*minden elem /AAA/XXX/DDD/BBB[1]4 Csak az első találat //BBB[last()]5, 12 Elemcsoportonként az utolsó //@id5, 6 attribútumokat választ //*[@name]10 //*[@id=“b1”]5

29 Modell alapú lekérdezők  Logikailag ekvivalens leírások között nem tesz különbséget  RDF gráfon dolgozunk  Keresés: navigálás az RDF gráfban

30 Modell alapú lekérdezők  Precíz kérdések Igaz-e, hogy Gipsz Jakab egy ember? Igaz-e, hogy Gipsz Jakab egy ember?  Általánosabb kérdésnél bizonyos cimkék elhanyagolhatóak Kik vannak valamilyen kapcsolatban macskákkal? Kik vannak valamilyen kapcsolatban macskákkal?  Kérdés: gráfminta változókkal  Válaszkeresés: részgráfillesztés behelyettesítéssel

31 Meddig tart mindez?  Részgráfillesztés NP teljes feladat  Lekérdezés megválaszolás, következtetés sajnos bonyolult feladat  Nagy méreteknél gondok vannak  Gyakorlatban heurisztikákkal próbáljuk kitolni a kritikus méretet

32 RDQL nyelv SELECT Változók FROM Dokumentumok WHERE Minta AND Szűrők USING Névterek

33 RDQL nyelv egy egyszerű gráfminta változókkal SELECT ?x ?n FROM FROM WHERE (?x,, ?n) http://www.deep.hu/util/#neve

34 RDQL nyelv egy egyszerű gráfminta változókkal SELECT ?c FROM FROM WHERE (?x,, ?p), http://www.deep.hu/util#publikációjahttp://www.deep.hu/util#publikációja (?p,, ?c) http://www.deep.hu/util#címehttp://www.deep.hu/util#címe

35 RDQL nyelv névterek a lekérdezés olvashatóbbá tételére SELECT ?c FROM FROM WHERE (?x, t:publikációja, ?p) (?p, t:címe, ?c) USING t for USING t for http://www.deep.hu/util#

36 RDQL nyelv aritmetikai korlátozások SELECT ?n FROM FROM WHERE (?x, t:kora, ?k) (?x, t:neve, ?n) AND ?k + 1 < 25 USING t for USING t for http://www.deep.hu/util#

37 RDQL nyelv string-ek összehasonlítása SELECT ?br, ?bs FROM FROM WHERE (?x, t:neve, ?n) (?x, t:barátja, ?br) (?br, t:beosztása, ?bs) AND ?n EQ “Gipsz Jakab” ?bs NE t:asztalos USING t for USING t for http://www.deep.hu/util#

38 RDQL nyelv logikai operátorok a szűrőkön SELECT ?br, ?fiz FROM FROM WHERE (?x, t:neve, ?n) (?x, t:barátja, ?br) (?br, t:fizetése, ?fiz) AND ((?n EQ “Jakab”) && (?fiz <= 100)) || ! (?fiz > 1000) USING t for USING t for http://www.deep.hu/util#

39 Következtetés </rdf:Property> </rdf:Property> </t:Ember>

40 Következtetés  Sémakövetkeztetés: osztályok, tulajdonságok kapcsolatrendszerének felderítése  Adatkövetkeztetés: konkrét entitások tulajdonságait vizsgáljuk

41 Sémakövetkeztetés  Osztályhierarchia alapján egyszerűsítünk: </rdf:Property>  Tulajdonsághierarchia alapján korlátokat örökítünk: </rdf:Property>

42 Adatkövetkeztetés  Osztályhierarchia alapján: Ági nő, tehát ember Ági nő, tehát ember  Tulajdonsághierarchia alapján: Ági ismerőseit keresve visszaadjuk Ági barátait is Ági ismerőseit keresve visszaadjuk Ági barátait is  Tulajdonságkorlátozások alapján: </rdf:Property> Ha kiderül, hogy az Aranyembert Jókai írta, akkor biztos, hogy az Aranyember könyv és Jókai ember. Ha kiderül, hogy az Aranyembert Jókai írta, akkor biztos, hogy az Aranyember könyv és Jókai ember.

43 Adatkövetkeztetés  A különféle következtetési feladatokat általában kombinálva használjuk: Cél: olyan egyedek, akiknek van ember ismerősük Cél: olyan egyedek, akiknek van ember ismerősük Tudjuk: Feri barátja Kati, Kati egy nő. Tudjuk: Feri barátja Kati, Kati egy nő. Tehát Feri egy jó válasz a kérdésre Tehát Feri egy jó válasz a kérdésre

44 Következtetés…  Ha a világ apróbb árnyalatait is le tudnánk írni, akkor bonyolultabb következtetési feladatokra is képesek lennénk. Például: Mindenkinek van szülője. Mindenkinek van szülője. Mindenkinek van okos gyereke. Mindenkinek van okos gyereke. Mindenkinek legfeljebb 1 magas gyereke van. Mindenkinek legfeljebb 1 magas gyereke van. Mindenkinek legfeljebb 1 erős gyereke van. Mindenkinek legfeljebb 1 erős gyereke van. Mindenki vagy magas vagy erős. Mindenki vagy magas vagy erős. Góliát magas és erős is. Mit lehet még tudni róla? Góliát magas és erős is. Mit lehet még tudni róla?


Letölteni ppt "RDF a gyakorlatban. Ontológia  Filozófiai jelentés lételmélet lételmélet  Mérnöki jelentés sokféle meghatározás sokféle meghatározás sokszor egymásnak."

Hasonló előadás


Google Hirdetések