A Szemantikus háló A szemantikus háló a Web funkcionalitására épülő új réteg, adatai alkalmasak gépi feldolgozásra, automatizálásra is. BME VIK TMIT MeR 1
Mi kell hozzá? A hálózati tartalom egyértelmű címkézése. Gépi intelligencia számára is használható adatmodell(ek), amit ember által olvashatóan kell tárolni. Szabványos szótárak (a leírt adatok megértéséhez). Következtetés-logika. Bizonyítási szint: a többi rendszerkomponens felé megjeleníti az eredményt. Bizalmi szint: a hálón sok adat rossz, hiteltelen, bizonytalan. BME VIK TMIT MeR 2
szabványosítás: W3C Technology and Society Domain Semantic Web activities RDF Core WG, Web Ontology WG, RDF Interest Group, Semantic Web Coordination Group, stb. RDF Model and Syntax Specification RDF Concepts and Abstract Data Model RDF Model Theory (and graph syntax) Az RDF szemantika formális definíciója RDF/XML syntax Az XML ábrázolás definíciója RDF Schema (and data types) A Vocabulary Definition Language BME VIK TMIT MeR 3
A szemantikus háló rétegei BME VIK TMIT MeR 4
URI Uniform Resource Identifier Az RDF-ben: minősített URI használatos. (URI és egy opcionális részletazonosító: #szöveg) A részletazonosító az URI-val megadott adat jellemzésére szolgál. BME VIK TMIT MeR 5
Metaadatok Metaadat : adat az adatról (minden adat, ami más adatról szól, pl. katalógusadat) A metaadatok természetesen önmaguk is adatok, így róluk is lehetnek további metaadatok. Alapvető kategorizálás : leíró és szemantikus metaadatok. BME VIK TMIT MeR 6
Alapvető kategorizálás Leíró metaadatok (descriptive metadata): olyan metaadatok, amelyek jelentése nem közvetlenül kapcsolódik a dokumentum jelentéséhez, hanem a dokumentum keletkezésének és/vagy módosításának a körülményeit írják le. Például: a dokumentum szerzője, a dokumentum hossza, az utolsó módosítás dátuma stb. BME VIK TMIT MeR 7
Alapvető kategorizálás Szemantikus metaadat: olyan metaadat, amely a dokumentum jelentéséről hordoz információt. Például: a dokumentum jellegzetes kulcsszavai, témaköre. A szemantikus metaadatok főleg strukturálatlan és félstrukturált adatok esetében hasznosak, ahol az adatok információtartalma csak külön feldolgozás árán nyerhető ki az adatok reprezentációjából. BME VIK TMIT MeR 8
Metaadat típusok Adminsztratív metaadat: információs erőforrás adminsztrációjához, menedzseléséhez (pl. jogok, hozzáférés, digitalizáláshoz szelektálási kritérium) Leíró metaadat: információs erőforrás azonosításához és jellemzéséhez (pl. katalógus, keresési segítség, index, hyperlink erőforrások között) BME VIK TMIT MeR 9
Metaadat típusok (2) Megőrzési metaadat: információ megőrzési tevékenységhez (pl. az erőforrás fizikai állapotának leírása, adatfrissítési előírás) Műszaki metaadat: rendszerműködési jellemzők (pl. hw, sw, digitalizálási adat, formátum, kódkulcs, jelszó) Felhasználási metaadat: erőforrás felhasználásának szintje, típusa (pl. kiállítási adat, felhasználó regisztrátum, újrahasznosítás) BME VIK TMIT MeR 10
Példa: EBU/SMPTE metaadatok A korszerű médiainformációs rendszerek felépítésének egyik pillére. Az Európai Műsorszóró Egyesület (EBU) az audiovizuális tartalmat (content) a következő összetevőkre bontja: Video Essence - videóesszencia Audio Essence - audióesszencia Data Essence - adatesszencia Metadata - metaadat BME VIK TMIT MeR 11
content = essence + metadata A tartalmat csomagokba rendezik. A csomagokra így külön-külön sokféle funkció és jellemzés alkalmazható. (Pl. Access Control, Identifiers & Labels, Version Control, IPR Management, Data Access, Essence Tracking, Contribution/Distribution Information, Data Base Management, Play-list-Essence Matching) BME VIK TMIT MeR 12
Példa: MPEG-7 multimédia tartalmak szabványos leírására, szolgáló szabványos - deszkriptorokat, leíró sémákat, deszkriptor-leíró nyelvet tartalmazó keretrendszer BME VIK TMIT MeR 13
Data (a leírni kívánt audiovizuális információ) Feature (a Data valamilyen megkülönböztető sajátossága) Descriptor (egy Feature reprezentációja, szemantikai és szintaktikai szabályok révén) Descriptor Value (egy Descriptor konkrét értéke, előfordulása) Description Scheme - DS (DSs) (meghatározza a Descriptor-ok és a Description Scheme-k viszonyrendszerének, szerkezetének szemantikáját és szintaktikáját) Description - D (Ds) (egy DS-ből, azaz struktúrából és Description Value-k egy adott készletéből áll) Coded Description ("külső" követelményeknek - pl. tömörség, véletlen elérés - megfelelő Description) Description Definition Language - DDL (Descriptor-ok és DS-ek létrehozására, módosítására alkalmas nyelv) BME VIK TMIT MeR 14
Példa: Dublin Core az internetes forrásfeltárási munka megkönnyítése, a források bibliográfiai leírásának egységesítése, a hozzáférés és az egységes értelmezés szabványosítása. 15 leíró egység: title - cím, creator - alkotó, subject - tárgyszavas leírás, description - leírás, publisher - kiadó, contributor - hozzájáruló, date - dátum, type - típus, format - formátum, identifier - egyedi azonosító, source - forrás, language nyelv, relation forráshivatkozás, coverage - téridő-helyzet, rights - jogok A Dublin Core szabvány specifikációja: Internet RFC 2413 (The Dublin Core Metadata for Simple Resource Discovery). BME VIK TMIT MeR 15
Metaadat és Web Több kezdeményezés: metaadatokkal ellátni a Webet. Felhasználási területek: Katalogizálás (pl. BibTeX) Tartalmi rangsorolás Szellemi tulajdon védelme Személyességi szintek (hozzáférés) e-kereskedelem BME VIK TMIT MeR 16
MDC Open Information Model Metaadat Koalíció (Meta Data Coalition - MDC). Célja: a metaadatok egységes kezelése. Nyílt információs modell (Open Information Model - OIM), komponens-alapú, újrahasznosítható alkalmazásfejlesztés támogatása. UML modellező nyelv alkalmazása. BME VIK TMIT MeR 17
Alkotó elemei Analysis and Design Model (UML Extensions, Common Data Types, Generic Elements) Object and Component Model (Component Description Model) Database and Warehousing Model (Database Schema, OLAP Schema, Data Transformations, Record Oriented Legacy Databases, Report Definitions) Business Engineering Model (Business Goal Model, Organizational Model, Business Rule Model, Business Process Model) Knowledge Management Model (Knowledge Description Format, Semantic Definitions) BME VIK TMIT MeR 18
Implementációs eszközei Unified Modeling Language (UML) - az OIM formális specifikációs nyelve extensible Markup Language (XML) - az OIM szabványos csere formátum nyelve a Structured Query Language (SQL) - az OIM lekérdező nyelve. BME VIK TMIT MeR 19
UML Model Object Model Interface Def. Repository Formal Specification XML Document Type Definition XML Transfer Documentation Test, etc. SQL Schema Definition Query View BME VIK TMIT MeR 20
Az információkereső-nyelvi szótár fogalma Információkereső-nyelvi szótáron, illetve szókészleten természetes és mesterséges nyelven alapuló szótárakat, illetve szókészletet értünk: osztályozási rendszert, tárgyszójegyzéket, tezauruszt és ún. szabad tárgyszavakat BME VIK TMIT MeR 21
Tezauruszok A metaadat akkor (a leg)hasznos(abb), ha jelentése jól definiált. Megállapodások, szabványok szükségesek: az egyértelműség (értelmezésbeli különbségek elkerülésére: pl. szerző, utolsó módosítás dátuma), és a (mező)formátumok egységesítésére (pl. mindig az ISO szerinti dátumformátumot használjuk) BME VIK TMIT MeR 22
Tezauruszok Szemantikus metaadat esetében ez bonyolultabb (a mezők tartalmának a jelentése sem feltétlen világos - pl. kulcsszavak esetén). Tipikus megoldás: a felhasználható kulcsszavak körét egy ún. kontrollált szótárral (controlled vocabulary) adjuk meg (az adott témakör összes lehetséges kifejezését, azok magyarázatát és a köztük levő kapcsolatot tartalmazza). Ezzel a kulcsszavak jelentése a rendszeren belül egyértelműen rögzíthető. BME VIK TMIT MeR 23
Tezaurusz Ennek egyik megvalósítási módja a tezaurusz: adott szakterület kulcsszavait és azok közti (nyelvtani) kapcsolatokat tartalmazza. Tipikusak egy tezauruszon belül a szinonima (synonim), az általánosabb kifejezés (broader term, BT), a specifikusabb kifejezés (narrower term, NT), és az általános kapcsolatos fogalom (related term, RT) relációk. BME VIK TMIT MeR 24
Tezaurusz szabványok Nemzetközi : ISO 2788:1986 Documentation -- Guidelines for the establishment and development of monolingual thesauri ISO 5964:1985 Documentation -- Guidelines for the establishment and development of multilingual thesauri Magyar szabvány: MSZ 3418-87 BME VIK TMIT MeR 25
A tezaurusz és más osztályozási rendszerek A tezauruszban ún. lexikai egységek és a köztük levő relációk vannak. Többféle reláció lehet két lexikai egység között - > ezáltal egy tezaurusz több irányú barangolást tesz lehetővé (mint egy klasszikus osztályozási rendszer, pl. könyvtári osztályozó rendszer). Ez nagyobb kifejező erőt ad, de karbantarthatósága, kezelhetősége nehezebb. BME VIK TMIT MeR 26
a reláció rövid jele szakmai megnevezése laikusok számára történő F generikus fölérendelt (nemfogalom) megnevezése általánosabb kifejezése T partitív fölérendelt (egész) átfogóbb kifejezése, egésze R eredménye, következménye rendeltetése/oka A fajtája generikus alárendelt (faj-fogalom) P partitív alárendelt (rész) része E eredete, kiindulása eszköze/okozata X egyéb rokonsága, átfedése rokon kifejezés L deszkriptor lásd LV vagylagos deszkriptorok lásd vagy H nemdeszkriptor helyettesített HV vagylagos nemdeszkriptorok vagylagosan helyettesített BME VIK TMIT MeR 27
ADATBÁZIS M: Adatok elektronikus hordozó rögzített, keresésre alkalmas és forgalmazott, szervezett, összessége F Műszaki dokumentum X Cd-rom ADATHORDOZÓ M: Olyan tároló közeg, amelyen vagy amelyben egy meghatározott fizikai változó adatokat ábrázolhat [MSZ 7788/1] A Filmanyag Hanglemez Hangszalag Képlemez Képszalag Mágneses adathordozó Optikai adathordozó Papírlap T Dokumentum BME VIK TMIT MeR 28
DIPLOMA M: Szakképzettséget vagy (cím)adományozást igazoló (díszes) oklevél F Bizonyítvány Diplomamunka L Szakdolgozat DISSZERTÁCIÓ M: Felsőoktatási vagy egyéb keretben tudományos fokozat ill. cím elnyeréséért készített értekezés [MSZ 3424/6] H Doktori értekezés F Tanulmány X Szakdolgozat Tézis BME VIK TMIT MeR 29
Ének M: Emberi hanggal megszólaltatott zene L Vokális zene ÉNEKESKÖNYV M: Énekszövegeket és hangjegyírással lejegyzett énekeket tartalmazó gyűjtemény [VILIRLEX] F Gyűjteményes könyv Hangjegyes tartalmú dokumentum A Daloskönyv Egyházi énekeskönyv Táncdalgyűjtemény X Énektankönyv Népdalgyűjtemény ÉNEKTANKÖNYV H Oktatási énekeskönyv F Zenei tankönyv A Szolfézskönyv X Énekeskönyv BME VIK TMIT MeR 30
Ismert tezauruszok The Art and Architecture Thesaurus, Getty Institute http://www.getty.edu/research/conducting_research/vocabular ies/aat/ Union List of Artist's Names, Getty Institute http://www.getty.edu/research/conducting_research/vocabular ies/ulan/ British Museum Object Names Thesaurus http://www.mda.org.uk/bmobj/objintro.htm NASA Thesaurus http://www.sti.nasa.gov/thesfrm1.htm USA kongresszusi könyvtár http://www.loc.gov/lexico/servlet/lexico/ BME VIK TMIT MeR 31
Az információtípusok jellemzése Jelölő (markup) nyelvek (SGML, HTM, XML) Szöveg. Szövegformátum, természetes nyelv, hasonlósági modellezés. Multimédia. Formátumok, leíró adatok, tartalom-jellemzés. BME VIK TMIT MeR 32
Ontológiák (Tudásreprezentáció) BME VIK TMIT MeR 33
Ontolológia a filozófiában a létről szóló tan ontosz (lenni, létezni) + logosz (tudomány) Arisztotelész, Aquinói Szent Tamás (istenérvek) XX. Század: Husserl, Hartmann, Heidegger, Érzékfeletti irracionális intuíció útján felfogott lét legáltalánosabb fogalmainak rendszere (Filozófiai kislexikon) Az ontológia a legfontosabb fogalmak és viszonyaik leírása. BME VIK TMIT MeR 34
Fogalmak viszonya Taxonómia A fogalmak felosztása, hierarchiába szervezése valamilyen megkülönböztetési szabály alapján. Amit felosztunk: nemek (genus) Az alárendelt fogalmak: fajok (species) A fajok között kölcsönös kizárás van Természetesen mindkettő relatív Tartalmazási reláció Emlősök Fogalmak, melyeknek vannak példányai Fa struktúra (létezik a legfelsőbb nem) Halak Állatok BME VIK TMIT MeR 35 Stb.
Kategóriák Általában a világ egy kis részének leírásához is kevés egy fa. (pl. a kecskebéka és a gyűlölet nehezen illeszthető össze nincs közös ősük) A fa helyett tehát erdő alkalmazható. A különböző kategóriák független taxonómiát alkotnak, de közöttük kapcsolatok lehetnek. Nem párosítható minden fogalom mindennel. Az egyik fa egy fogalmához a másik fa mely nemének leszármazottjai kapcsolódhatnak (alma-gömb). Egy fogalom mely másik fogalmak használatát zárja ki (alma-kék). Példa: Arisztotelészi kategóriák BME VIK TMIT MeR 36
Az ontológia egyezményes terminológiát állít fel egy közös érdeklődésű közösség tagjai között. A tagok lehetnek emberek vagy gépi ügynökök. BME VIK TMIT MeR 37
Az ontológia = egy konceptualizáció specifikációja. A konceptualizáció (C) a tudás készítőjének fejében kialakuló fogalmi séma vagy sémák. Megjelenítéséhez nyelvre (L) van szükségünk. (tárgynyelv) A fogalmi séma és reprezentációja között ontológiai elkötelezettség (ontological commitment) (K) teremt kapcsolatot. C ontológiai elkötelezettség L nyelv modelljei K O N T O L Ó G I A BME VIK TMIT MeR 38
Ontológia vs. tezaurusz FONTOS! Fogalmakról van szó, nem kifejezésekről, mint a tezauruszban. Az ontológiákban a nyelvi megjelenés csak egy címke. absztakció felidézés Dolog Fogalom Kifejezés ontológia tezaurusz BME VIK TMIT MeR 39
Ontológia az informatikában Gruber: egy adott felhasználói csoport által egy adott témakörben közösen használt világkép formális leírása Tehát már nem akarja senki a teljes tudást leírni, részterületeket kell megcélozni (dokumentum típusok, algebra). Elemei: Fogalmak (concepts) Kapcsolatok (relation) Axiómák (axioms) BME VIK TMIT MeR 40
Fogalom felidéz vonatkozik Jaguár Szimbólum Dolog BME VIK TMIT MeR 41
Miért címkézünk, építünk tezauruszt, ontológiát? Mert a tipikus felhasználó nem képes jól leképezni igényét az információs rendszer által megkövetelt módra. (Különösen ma, az Internet korában: sok ember keres, intézi ügyeit speciális előképzettség nélkül, a modellek, a struktúrák, a konvenciók ismerete nélkül, hétköznapi logikával.) BME VIK TMIT MeR 42
A megoldandó probléma Információ kereső képesség javítása Recall (több jó találatunk legyen) Precision (kevesebb rossz találatunk legyen) Lehetőleg közelítsünk a természetes nyelvhez, az emberi gondolkodáshoz! (Kérdés: milyen kapcsolatban van ez a kettő?) BME VIK TMIT MeR 43
A keresés nyelvi nehézségei 1. Azonos (hasonló) jelentésű kifejezések - Példa: Egy felest szeretnék! Ide gyorsan egy kupicával! 5 cl pálinkát kérek! Egy indexelő kereső nem tekinti egyformának! Szinonimák: feles, 5 cl, kupica Szórend: (Ide-kérek), (5cl, kupica) BME VIK TMIT MeR 44
A keresés nyelvi nehézségei 2. Azonosnak látszó kifejezések - Példa: A mag, amelyik a földbe került, kicsírázott. A Föld magjának anyaga vas és nikkel keveréke. Egy indexelő kereső azonosnak tekinti! hominimák: Föld, föld kontextus tévesztés: mag, mag BME VIK TMIT MeR 45
Nyelvi kompetencia Honnan tudja az ember a jó megoldást? Szinonimák ismerete, szórend értelmezése Önmagában még nem magyaráz meg mindent Ha rosszul beszélünk egy nyelvet, akkor is boldogulunk Egy-egy szó is óriási információtöbbletet tud adni ( heuréka élmény ) Felülemelkedünk a nyelv szintaktikáján A kék alma felszáll a bánya mélyébe Nyelvileg (szintaktikailag) tökéletes, értelme nincs. Nem elég önmagában a nyelv logikája! (bár az is nagyon sokat segíthet, és különösen magyarul még nagyon sok megoldatlan probléma van) BME VIK TMIT MeR 46
Háttértudás Ha a számítógépek is rendelkeznének az ember háttértudásával, sokkal ügyesebben dolgoznának. Probléma: Hogyan tehetjük a számítógép számára is érthetővé? Hogyan használjuk fel a háttértudást? BME VIK TMIT MeR 47
Mire jó, ha ontológiát készítünk? Az információ szerkezete definiálható emberek és szoftver ügynökök számára A szakterület tudásanyagát újrafelhasználhatóvá teszi A kiinduló feltételeket kiemeli (axiómák, hipotézisek, posztulátumok, fikciók) A mindennapi fogalomrendszert megkülönbözteti a logikaitól Elemezhető általa a tudás teljessége BME VIK TMIT MeR 48
Szabványos szintakszis Ma: XML alapú leíró nyelvek (hogy egyszerűbb legyen parsert készíteni). Példák: SHOE, XOL (Ontology Exchange Language), OML (Ontology Markup Language), RDFS, OIL (Ontology Intechange Language), DAML+OIL Ontológia és metaadat szerkesztő szoftverek (Protégé, Webonto, OilEd, stb.) BME VIK TMIT MeR 49
Az RDF Az RDF általános és absztrakt modell amely bármilyen típusú metaadat leírására alkalmas, bármilyen olyan dologról, avagy erőforrásról (resource), amely egyedi, webes azonosítóval (URI) rendelkezik. Az RDF az alapja a Szemantikus Világhálónak, az összes felhasználható adat ebben az adatmodellben jelenik meg. Az RDF W3C ajánlás. BME VIK TMIT MeR 50
Miért nem elég az XML? miért nem elég XML-ben leírni az adatokat, hiszen az XML általános, rendszerfüggetlen nyelv, amelyben minden leírható? Az XML csak egy adatcsere formátum, és a különböző XML séma nyelvek is csak az adatok struktúráját, megjelenését korlátozzák, de az adatok szemantikáját nem definiálják. BME VIK TMIT MeR 51
Az N3 (Notation3) oktatási nyelvet alkalmazom az alábbiakban. primer - getting into the semantic web and rdf using n3.htm BME VIK TMIT MeR 52
RDF Az RDF-ben az információ állítások együttese, mindegyik alannyal, állítmánnyal és tárggyal - és semmi mással. Példa: <#pat> <#knows> <#jo>. Az angol nyelvű RDF irodalomban használatos kategóriák: Alany - Subject Állítmány - Verb / Predicate / Property Tárgy - Object BME VIK TMIT MeR 53
Alany állítmány és tárgy Egy mondat: <#pat> <#knows> <#jo>. Minden egyes elemet (alany, állítmány, tárgy) egy URI azonosít. A tárgy lehet egy érték(string) is. <#pat> <#age> 34". Az állítmány ( RDF-ül : tulajdonság) a másik két elem kapcsolatát fejezi ki. <#pat> <#child> <#al>. <#pat> has <#child> <#al>. <#al> is <#child> of <#pat>. BME VIK TMIT MeR 54
rövidítéskonvenció ha egy állítmányhoz több állítást kapcsolunk: a pontosvessző (;) másik állítmányt kapcsol ugyanahhoz az alanyhoz, a vessző (,) ugyazon alany-állítmány párhoz másik tárgyat kapcsol. <#pat> <#child> <#al>, <#chaz>, <#mo>; <#age> 34" ; <#eyecolor> "blue". BME VIK TMIT MeR 55
Másképp age eyecolor pat 34 blue al 3 green jo 5 green <#pat> <#age> 34"; <#eyecolor> "blue". <#al> <#age> "3"; <#eyecolor> "green". <#jo> <#age> "5"; <#eyecolor> "green". BME VIK TMIT MeR 56
<#pat><#child>[<#age> "4"],[<#age> "3"]. Itt a tárgyat nem azonosítottuk. A [ ] -ben található elemek egy létező objektumra utalnak, de nem szándékozunk - se itt, se más dokumentumban hivatkozni rá. Pontosabban: a [ ] deklarálja, hogy valami létezik az adott tulajdonsággal, de nem ad módot arra, hogy hivatkozzunk rá. Ha meg akarom nevezni, akkor: [ <#name> "Pat"; <#age> "24"; <#eyecolor> "blue" ]. [ <#name> "Al" ; <#age> "3"; <#eyecolor> "green" ]. [ <#name> "Jo" ; <#age> "5"; <#eyecolor> "green" ]. BME VIK TMIT MeR 57
A pat, child és age karakterek URI-k, a gép számára semmi jelentést nem hordoznak ezen kívül! - amíg azt nem állítjuk: <#pat> <#name> "Pat". BME VIK TMIT MeR 58
Közös fogalom A szemantikus web valójában nem képes megadni valamiről, hogy mit jelent. A cím (pl. könyvtári katalógusban, weboldalon) egy fogalom, s ha több forrás, dokumentum szeretné ezt használni: ugyanazt kell érteni rajta ugyanazt a szótári elemet kell használni az azonosítására. <> <#title> "Az N3 egyszerű példája". (Az üres <> a kurrens dokumentumot jelenti. A példában a #title olyan fogalomra vonatkozik, amit maga a dokumentum definiál.) BME VIK TMIT MeR 59
Közös fogalom A Dublin Core (DC)-ban is van elképzelés a cím fogalomról. Ezt használva jobban definiált állítást tehetünk (e tananyag címéről): <> http://purl.org/dc/elements/1.1/title szematikus háló". Ez túl hosszú, ezért az N3 megengedi az egyszerűsítést: @prefix dc: <http://purl.org/dc/elements/1.1/>. <> dc:title szemantikus háló". BME VIK TMIT MeR 60
Prefix használata esetén : jel a # helyett (a dc és a cím között), nem használ <>-t. A megadott prefix a dokumentum további részében használható. Az RDF honlapról sok fogalom meghivatkozható, és bárki megadhat újakat, készíthet névteret. @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntaxns#>. @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>. @prefix ont: <http://www.daml.org/2001/03/daml-ont#>. BME VIK TMIT MeR 61
Legyen @prefix : <#>. Ezzel :pat :child [ :age "4" ], [ :age "3" ]. BME VIK TMIT MeR 62
Szótárkészítés dc:title = tulajdonság Új szótár vagy ontológia: új osztályok és tulajdonságok megadása. Osztálybasorolás: milyen tipusú az a valami rdf:type amit N3-ban így rövidítünk: a Adjuk meg így személyek egy osztályát:: :Person a rdfs:class. A dokumentumban aztán: :Pat a :Person. BME VIK TMIT MeR 63
Egy objektum több osztályban lehet. Közöttük nem kell hierarchikus viszonynak lenni. Az alany osztálya: domain (Minek lehet ilyen típusú értéke) A tárgy osztálya: range (Milyen típusu értékeket vehet fel) Konvenció (nem szabvány, nem kötelező): Osztály azonosítót nagy kezdőbetűvel Tulajdonságot kis kezdőbetűvel BME VIK TMIT MeR 64
Megfelelőség :Woman = foo:femaleadult. :Title a rdf:property; = dc:title. Célszerű, ahol lehet már létező szótárakra hivatkozni Megőrzi a rugalmasságot Névtér Az RDF szótár azonosítója Azonosító Ami egyedi Ami a kezünkben van Ami változatlan, perzisztens Message-ID Egy helyi path URI (pl. purl.org) BME VIK TMIT MeR 65
Formulák Egy RDF dokumentum, illetve séma állítások (statements, mondatok) halmaza. Formula= egy állítás, ami állítások halmaza Egymástó független állítások (bármelyik kiemelhető) Tetszőleges sorrendben Egymást nem fedik át (teljesen) igaz a saját környezetében (context) Tehát egy Dokumentum: formulák halmaza <x.rdf> :says { :pat a :Person. }. Itt az alany nem pat, hanem x.rdf BME VIK TMIT MeR 66
Szabályok Szabály = Egy olyan állítás, ami szerint valami egy előfeltétel következménye Ezt az állítást aztán valamely mechanizmus feldolgozhatja Logikai szabályok definíciója: @prefix log: <http://www.w3.org/2000/10/swap/log#>. Példa: { sensor:thermostat math:greaterthan "30". } log:implies { control:furnace control:setto "1". }. this log:forall :x, :y. {:x :parent :y} log:implies {:y :child :x}. :parent ont:inverse :child. this log:forall :p, :q. { :p ont:inverse :q. } log:implies { this log:forall :x, :y. { :x :p :y. } log:implies { :y :q :x. } }. BME VIK TMIT MeR 67
Szabályok @prefix : <#uncle>. :Fred is :father of :Joe. :Bob is :brother of :Fred. @prefix log: <http://www.w3.org/2000/10/swap/log#>. this log:forall :who1, :who2. { :who1 :father [ :brother :who2 ] } log:implies { :who1 :uncle :who2 }. BME VIK TMIT MeR 68
Alany, állítmány és tárgy Resource (=forrás) Bármi, amit egy URI azonosíthat PropertyType Egy olyan forrás, ami egy másik forrás jellemzésére használható egy kapcsolat típus Property Egy forrás vagy egy érték Statement A három kombinációja Az RDF állítások leírhatók XML formátumban BME VIK TMIT MeR 69
Elem-hármas és gráf http://vhol.org/dc/creator http://tmit.bme.hu/index.html mailto::netuddki@bme.hu http://vhol.org/dc/creator http://tmit.bme.hu/index.html mailto::netuddki@bme.hu http://vhol.org/dc/creator http://vhol.org/sema/tartalmaz http://tmit.bme.hu/photo.html http://vhol.org/sema/egyuttdolgozik mailto::nekem@bme.hu BME VIK TMIT MeR 70
Szemantikus gráf Gráfstruktúra: amelyben a csomópontok az egyes fogalmakat, az élek a csomópontok közti (bináris) kapcsolatokat jelzik. Mind a csomópontok, mind az élek címkézettek. BME VIK TMIT MeR 71
Az RDF gráfban két típusú csomópont van: - erőforrás (resource) - szövegfüzér (literal). Az erőforrás csomópontok az erőforrás URI-jával címkézettek, a szövegfüzér csomópontok a szövegfüzér tartamával. A csomópontokat összekötő éleket tulajdonságoknak (property) nevezik. A gráf irányított (a tulajdonság irányítása lényeges). BME VIK TMIT MeR 72
A gráfstruktúra egyszerű logikai állításokat kódol. Ha A csomóponttól egy másik B csomóponthoz vezet egy P tulajdonság él: az A csomópont P tulajdonsága B. Az állítást egy (P,A,B) hármasként reprezentálhatjuk. ahol P a tulajdonságot, az állítás állítmányát jelöli, A az alany és B az állítás tárgya. Az állítmány két erőforrás között létesít kapcsolatot. BME VIK TMIT MeR 73
Elem-hármas és gráf http://tmit.bme.hu/index.html http://vhol.org/dc/creator mailto::netuddki@bme.hu TÁRGY ÁLLÍTMÁNY ALANY http://vhol.org/dc/creator http://tmit.bme.hu/index.html mailto::netuddki@bme.hu http://vhol.org/dc/creator http://vhol.org/sema/tartalmaz http://tmit.bme.hu/photo.html http://vhol.org/sema/egyuttdolgozik mailto::nekem@bme.hu BME VIK TMIT MeR 74
Elem-hármas és gráf http://tmit.bme.hu/index.html http://vhol.org/dc/creator mailto::netuddki@bme.hu TÁRGY ÁLLÍTMÁNY ALANY OBJECT PREDICATE SUBJECT Az index.html létrehozója netuddki. BME VIK TMIT MeR 75
Elem-hármas és gráf http://vhol.org/dc/creator http://tmit.bme.hu/index.html mailto::netuddki@bme.hu http://vhol.org/dc/creator http://vhol.org/sema/tartalmaz http://tmit.bme.hu/photo.html http://vhol.org/sema/egyuttdolgozik mailto::nekem@bme.hu Az index.html létrehozója netuddki és nekem (akik együtt dolgoznak). Az index.html tartalmazza photo.html-t. BME VIK TMIT MeR 76
További lehetőségek RDF-ben Az egyszerű gráf modellen kívül: kollekciók (bag, sequence) megadása, állításokról való állítás ( Kati azt mondta, hogy... ), stb. Ezeket speciális szemantikával rendelkező tulajdonságok segítségével valósították meg, az adatmodell lényegét nem érintik. Az RDF alapú ontológiákban lehet újabb, rögzített szemantikájú tulajdonságokat és csomópontokat definiálni, így tetszőleges bonyolultságú adatokat RDFben megjeleníteni. BME VIK TMIT MeR 77
Miért nem egyszerűen XML? Az RDF: Független (bárki implementálhat szótárakat, típusokat, stb és ha ezt közzéteszi akárki hivatkozhat is rá nem egy felülről definiált szótáron alapszik) Egyszerűen cserélhető, platform, nyelv, stb független (XML szerializáció) Skálázható világszerte tetszőleges számú XML kifejezés láncolható össze. Miért nem egyszerűen XML (önmagában)? XML elemek esetében számít a sorrend, míg az RDF egyszerűen állítások halmaza Az XML elemek megengednek kevert típusokat, ahol egy elemnek mind szöveges, mind struktúrált információt tartalmaz Az RDF egy XML alkalmazás, XML Schema-val leírható. BME VIK TMIT MeR 78
RDF Séma Az RDF szabványhoz szorosan kapcsolódik az RDF Schema (RDFS) nyelv, amellyel egyszerű ontológiákat (csomópontok és tulajdonságok előre definiált halmazát) definiálhatunk. BME VIK TMIT MeR 79
RDF Séma A szabvány csak a legegyszerűbb konstrukciókat tartalmazza, lehetőséget adva osztályhierarchiák megalkotására (subclass alosztály és subproperty altulajdonság reláció), az adott osztályba tartozás kifejezésére (type típus reláció), egy adott tulajdonság értelmezési tartományának (domain) és értékkészletének (range) a megadására. BME VIK TMIT MeR 80
Az RDFS ontológia maga is egy RDF dokumentum. W3C filozófia: (lásd XML és XML Schema) a sémák létrehozására és szerkesztésére legyenek használhatók ugyanazok az eszközök, amelyeket az alap adatmodell kezelésére hoztak létre. BME VIK TMIT MeR 81
DAML+OIL Az RDFS-re épülő ontológia leíró nyelvek egyik példája a DAML+OIL ontológia leíró nyelv. Két korábbi projekt, a DARPA Agent Markup Language (DAML) és az Ontology Inference Layer (OIL) eredményeit egyesíti. Felhasználja az RDFS konstrukcióit, és további elemekkel bővíti azt. Ilyen bővítések például: BME VIK TMIT MeR 82
A szövegfüzérek felé és erőforrások felé mutató tulajdonságok explicit megkülönböztetése, a tisztább fogalmi modellezés érdekében. Halmazműveletek definiálása osztályhoz: pl. osztályok uniója, metszete Annak megadása, hogy egy osztály ugyanaz mint egy másik, ill. egy osztály példányai biztosan különböznek egy másikétól. Inverz tulajdonságok, tranzitív tulajdonságok specifikálása. A tulajdonságok értékkészlet és értéktartomány definíciójának adott osztályra való megszorítása. XML Schema adattípusok használata az egyszerű literálok helyett. BME VIK TMIT MeR 83
DAML+OIL A DAML+OIL nyelv teljes értékű ontológia specifikációs nyelv, kifejezőereje elegendő a gyakorlatban is alkalmazható ontológiák specifikálásához. BME VIK TMIT MeR 84
Példa: DAML dokumentum ontológia Communications (communicator, recipient) Speech Software (SoftwareDocumentation, SoftwareVersion) Document (Title, Subject, Author, Publisher) Lecture Publication Book Thesis Article Periodical Homepage Osztályok Abstract PhoneCall DocumentRepresentation ElectronicDocument PaperDocument Kategóriák Tulajdonságok BME VIK TMIT MeR 85
Példa: Dokumentum RDF séma 1. <rdf:rdf xmlns="http://www.daml.org/2001/03/daml+oil#"> <Ontology about=""> <versioninfo>document-ont, v.1.0</versioninfo> <comment>an ontology that models documents, particularly publications</comment> <imports resource="http://www.cs.umd.edu/projects/plus/daml/onts/base1.0.daml"/> </Ontology> <Class ID="Communication"> <subclassof resource="http://www.cs.umd.edu/projects/plus/daml/onts/general1.0.daml#event"/> </Class> <Property ID="communicator"> <label>is communicated by</label> <domain resource="#communication"/> <range resource="http://www.cs.umd.edu/projects/plus/daml/onts/general1.0.daml#agent"/> </Property>.. Névterek használata Ontológia definíciója Példa osztály Példa tulajdonság BME VIK TMIT MeR 86
Példa: Dokumentum RDF séma 2.. <Class ID="Communication"> <subclassof resource="http://www.cs.umd.edu/projects/plus/daml/onts/general1.0.daml#event"/ > </Class> <Class ID="DocumentRepresentation"> <subclassof resource="http://www.cs.umd.edu/projects/plus/daml/onts/general1.0.daml#artifact" /> </Class> <Class ID="PaperDocument"><subClassOf resource="#documentrepresentation"/></class> <Class ID="ElectronicDocument"><subClassOf resource="#documentrepresentation"/></class>.. Osztályok (kategóriák) Alosztályok BME VIK TMIT MeR 87
Példa: Dokumentum RDF séma 3.. <Class ID="Document"><subClassOf resource="#communication"/></class> <Property ID="subject"> <label>has subject</label> <domain resource="#document"/> <range resource="http://www.cs.umd.edu/projects/plus/daml/onts/base1.0.daml#shoeentity"/> </Property> <Property ID="author"> <label>is written by</label> <domain resource="#document"/> <range resource="http://www.cs.umd.edu/projects/plus/daml/onts/general1.0.daml#person"/> </Property> <Property ID="title"> <label>is titled</label> <domain resource="#document"/> </Property>.. Tulajdonságok Címke (label) Osztály, amiben értelmezve van (domain) Kitöltési korlátozások (range) BME VIK TMIT MeR 88
Példa: Dokumentum RDF séma 4.. <Class ID="Software"><subClassOf resource="#communication"/></class> <Property ID="softwareVersion"> <label>is version</label> <domain resource="#software"/> </Property> <Property ID="softwareDocumentation"> <label>is documented in</label> <domain resource="#software"/> <range resource="#publication"/> </Property>.. Rekurzió (a szoftver dokumentáció Publikáció típusú lehet) BME VIK TMIT MeR 89
Szemantikus háló összefoglalás BME VIK TMIT MeR 90
Információk a hálózaton: természetes nyelveken írt szöveges állományok adatállományok (szemantikus jelentőségű szerkezetben) multimédia állományok vegyes állományok Emberek számára mindez értelmes lehet, de gép számára általában nem. BME VIK TMIT MeR 91
Emberi és gépi felhasználhatóság önleíró (adat)források metaadatok használata a metaadatot gép által is olvasható formában (pl. XML) reprezentáljuk a metaadathoz definiálni kell a használt szókészletet is gépi (pl. ágensek) következtetési képesség A szemantikus háló kiterjeszti a web jelenlegi lehetőségeit ( globálisan összefüggő adatbázis ) BME VIK TMIT MeR 92
Alapszabályok Minden elemet (erőforrást) URI-val azonosíthatunk Erőforrásoknak és linkeknek lehet típusa Részleges információ is elfogadható a szemantikus web határtalan, bárki bármit állíthat bárkiről Nem cél a teljes bizalom ; bizalmi láncok Bővíthető A szabványosítás körének minimalizálása BME VIK TMIT MeR 93
A szemantikus háló rétegei BME VIK TMIT MeR 94
URI, Unicode réteg URI és Unicode réteg: lehetővé teszik, hogy (nemzetközi karakterkészlettel) egyedi azonosítókat rendelhessünk az objektumainkhoz A forrásokat egyértelműen azonosítjuk ez nélkülözhetetlen a konzisztens állításokhoz Az URI-k lehetnek Protokoll függőek (http://, mailto:) Protokoll/hely függetlenek (URN-s, PURL) BME VIK TMIT MeR 95
XML réteg lehetővé teszi hogy a felhasználó tetszőleges struktúrába szervezze a dokumentumait, de nem mond semmit arról, hogy mi mit jelent BME VIK TMIT MeR 96
RDF réteg a jelentés-réteg : hármasok csoportja, minden hármas: alany, ige és tárgy az állításokban BME VIK TMIT MeR 97
RDF Sémák Az RDF még nem elég, mert az RDF-ben nincs kapcsolat a (szokásos) adattípusokkal meg kell egyeznünk egy adott szókészletben RDF Sémák használata : milyen kapcsolatok használhatók? mely forrásokra érvényesek a kapcsolatok? BME VIK TMIT MeR 98
Ontológia réteg A szemantikus hálónak szüksége van ontológiák felépítésére és használatára Az RDF sémák csak az alapmechanizmust adják (nem lehet következtetéseket levonni a szókészlet elemeiről) ha ez az állítás igaz, akkor az az állítás is igaz ha ez az állítás igaz, akkor az az állítás nem igaz Nincs megfeleltetés a különböző szókészletek között Nincsenek többszörös szülőosztályok, komplex megszorítások, feltételek... BME VIK TMIT MeR 99
Ontológia réteg Az ontológia kifejezéseket és összefüggéseket határoz meg egy adott tudásterület leírásához A cél: Webontológia nyelv ( Web Ontologies Language ), amely a következőkön alapszik: RDF és RDF Sémák korábbi munkák: DAML (DARPA projekt), OIL (EU projekt) DAML+OIL (DAMN és OIL egyesítése) a logika, tudásreprezentáció, stb., gyakorlati eredményeinek felhasználása BME VIK TMIT MeR 100
Logikai réteg Általános célú szabály nyelvek, amelyek képesek lekérdezni és szűrni A lekérdezések hasonlóak az SQL-hez Van, aki külön rétegnek tekinti (az ontológia és a logika között). BME VIK TMIT MeR 101
Logikai réteg Következtetés-gép (inference engine) : a szematikus hálón található tudás gépi gyarapítására. A már specifikált tudásból új tudást vezet le. Két megközelítés: általános logikai következtetés-gép specializált problémamegoldó algoritmus BME VIK TMIT MeR 102
Bizonyosság réteg Általános célú értelmező a szemantikus hálóhoz. A műveletek (kérdés, ellenőrzés, átalakítás, szűrés, stb.) értelmének feldolgozására. Proof language? A HTTP GET tartalmazhat-e bizonyítékot arra, hogy a felhasználónak joga van megkapni a dokumentumot? A hitelesítési technológián (pl. digitális aláírás) kívül kell e más, kontextusfüggő információ a bizonyossághoz? Pl. Closed World Machine (CWM): Perl implementáció N3 szabályok bizonyítására. BME VIK TMIT MeR 103
Bizalmi réteg Az állítások valamilyen kontextusban fordulnak elő a weben. Az alkalmazásoknak szüksége van a kontextusra, hogy megállapítsák egy állítás megbízhatóságát. A szematikus háló szerkezete nem garantálja hogy minden állítás igaz a weben. BME VIK TMIT MeR 104