250 likes | 493 Views
Praktilisi metoodilisi näpunäiteid ontoloogia loomiseks. SF programm „Infoühiskonna teadlikkuse tõstmine“. Hele-Mai Haav Küberneetika Instituut 26. august 2010 a.
E N D
Praktilisi metoodilisi näpunäiteid ontoloogia loomiseks SF programm „Infoühiskonna teadlikkuse tõstmine“ Hele-Mai Haav Küberneetika Instituut 26. august 2010 a Koolitused ja infopäevad toimuvad Euroopa Liidu struktuurifondide programmi „Infoühiskonna teadlikkuse tõstmine“ raames, mida rahastab Euroopa Regionaalarengu Fond. Koolituste ja infopäevade tellija on Riigi Infosüsteemide Arenduskeskus ja koolitused viib läbi BCS Koolitus AS
Näpunäited baseeruvad äriregistri ontoloogia loomisel Äriregister • Omab üle 70 x-tee teenuse • WSDL dokumendis on üle 1000 sisend-väljund andmevälja Vaata [Leive Turi magistritöö “Ontoloogiate loomine Eesti äriregistri näitel”]
Kontseptualiseerimise starteegia • Kasutati keskelt üles ja alla lähenemist. • Võttes arvesse, et ontoloogiat hakkavad tegema valdkonda tundvad inimesed olemasoleva andmebaasi põhjal, on kesksetest mõistetest struktuuri ehitamine kõige loomulikum. • Keskseteks mõisteteks on igapäevaselt kasutatavad sõnad, mida kasutatakse kui räägitakse infosüsteemi andmetest. • Ülevalt alla meetodit kasutades võib tee teenuste sisend- ja väljundandmete tasemele olla suhteliselt pikk. • Samas alt üles meetodi korral on keeruline näha ülemise astme mõisteid. Selle tulemusena on tunduvalt aeganõudvam eristada mõisteid ja atribuute, mis tähendab, et korrektse ontoloogiani jõudmiseks kulub rohkem aega.
Äriregistri ontoloogia loomise metoodika Vastavalt veebiteenuste sisend/väjundile Alguses kesksed mõisted [Leive Turi magistritöö “Ontoloogiate loomine äriregistri näitel”]
Spetsifitseerimine • Spetsifitseerimise etapis määratakse ontoloogia eesmärk ja skoop, kirjeldatakse kasutusvõimalusi ja andmeallikaid. • Arendusetapis aitab spetsifikatsioon kitsendada ülesannet ning edaspidi annab kolmandatele isikutele esmase ülevaate ontoloogiast.
Mõistete kogumine • Infosüsteemi andmed, millest kõige rohkem räägitakse • WSDL • Milliseid andmeid soovitakse päringutena kõige rohkem • Milliseid andmeid kasutatakse statistikaks
Kesksete mõistete leidmine • Keskseid mõisteid võiks olla esialgu 7-10 • Kesksete mõistete leidmiseks tuleks läbi mõelda, mis eesmärgil infosüsteem on loodud, millistest andmetest räägitakse, kui teemaks on andmebaasi sisu, ja analüüsida X-tee andmete esinemissagedust. • Sellise lähenemisega on võimalik leida enamkasutatavad mõisted, millest moodustub ontoloogia tuumik.
Esimene mõistete kogum Juriidiline isik, piirkond, majandusaasta aruanne, dokument, õiguslik vorm, äriregistrikood, kanne, kaart, määrus, päevik, ärinimi, kapital
Mõistete detailiseerimine ja üldistamine Alguses liigume üks tase üles/alla • Andmete organiseerimine taksonoomiasse • Lisaandmete blokk andmete jaoks, mis kuuluvad mõnda teise ontoloogiasse (andmekogu mittepõhiandmed kuuluvad teise ontoloogiasse) • Nt füüsiliste isikute andmed pärinevad rahvastikuregistrist ning neid andmeid äriregistri ontoloogias detailselt lahti ei kirjuta • Tuleb meeles pidada mõistete taksonoomiasse korraldamise reegleid • Alamklassil on kõik ülemklassi omadused • Alamklass on ülemklassi alamhulk • Vältida lõikuvaid alamklasse • Klass või atribuut? Kui atribuudil on omakord atribuudid siis on tegu klassiga.
Näide • Klassi Juriidiline isik hüpoteetilised atribuudid • Juriidiline isik atribuutid: äriregistrikood, ärinimi, kapital, õiguslik vorm, kaart Kuna ärinimel, kapitalil, õiguslikul vormil on omakorda atribuudid alguse ja lõppkuupäev ning kaardil tüüp ja kehtivuse tunnus, siis on tegu klassidega Seega ontoloogiasse tekivad klassid: • Juriidiline isik atribuut: Äriregistrikood • Ärinimi • Kapital • Õiguslik_vorm • Kaart
Alamklassid • Alamklasse on reeglina rohkem kui 1 • Kõigi alamklasside kohta peab saama öelda lause konstruktsiooniga ‘alamklass on ülemklass’ • Näide, olgu klass Dokument: • Dokument • Majandusaasta aruanne -> Majandusaasta aruanne on dokument • Kandeavaldus -> Kandeavaldus on dokument • Muu dokument -> ‘Muu dokument on dokument’ see pole korrektne, kuna sellist dokumenti ei eksisteeri. Võib kasutada kui sellel on omakorda alamklassid
Kõik üldistavad ja detailiseerivad mõisted ei pea kuuluma X-tee sisend-väljund andmete hulka, nende eesmärgiks võib olla ka valdkonna arusaadavuse parandamine kolmandate isikute jaoks. • Samas tuleks siiski silmas pidada skoopi ning piirduda vähima vajaliku hulga lisamõistetega.
Peamised seosed • Kui tuumikmõisted koos võimalike üldistuste ja detailidega on olemas, võib lisada mõned peamised seosed või alustada kohe implementeerimist. • Varajase kodeerimise eeliseks on loogikavigade avastamine. • Masinloetava ontoloogia loomise vahenditel on reeglina olemas sisseehitatud või lisatavad moodulid, mis kasutades kirjeldusloogikat, võimaldavad avastada loogilisi vastuolusid (näiteks Pellet).
Nimetamine kodeerimisel • Semantika juhishttp://www.riso.ee/et/files/Semantika_juhis_v1.1.pdf • Kasuta: alakriipsud sõnade vahel • Ei kasuta: spetsiifilised lühendid, liitsõna sees suurtäht, täpitähed • Seosed – moodustuks lause nt ‘kandeavaldus_registreeritakse_registripaevikus’ • Atribuudid – algab klassinimega ning siis atribuudi nimi nt ‘Juriidiline_isik_ariregistrikood’ • Kasu: Protege järjestab tähestiku järjekorda ning siis on kõik ühe klassi kohta käivad atribuudid või seosed järjest
Äriregistri ontoloogia nimetamise põhimõtted: • mõisted on kirjutatud suure algustähega ning täppitähtede asemel kirjutatakse vastav täht ilma täppideta (ä -> a) . Mitmest sõnast koosnevad nimetused kirjutatakse alakriipsuga (majandusaasta_aruanne) • seosed kirjutatakse väikese algustähega ning moodustatakse lihtlause (eraoiguslik_juriidiline_isik_esitab_majandusaasta_aruande). Seoseks on siin tegelikult sõna ’esitab’, kuid märkides terve lause, on hiljem lihtne ka masinloetavast ontoloogiast aru saada ning seda täiendada. • atribuudid kirjutatakse suure algustähega ning kõigepealt kirjutatakse klassi nimi, mille juurde atribuut kuulub või selle klassi ülemklassi nimi. Eesmärgiks on loogiliselt grupeerida sama klassi atribuudid või ülemklassi alamklasside atribuudid. Näiteks klassil Hoiatus on atribuut ’id’. Sellest tulenevalt on atribuudi nimetus ontoloogias Hoiatus_id. Näiteks klass ’Kaardivalise_isiku_andmed’ omab alamklasse ’Osaniku_andmed’ ja ’Aktisonari_andmed’ kõigi nende atribuudid (nt id) on nimetusega ’Kaardivalise_isiku_andmed_id’
Iteratiivne arendus • Tuleb uuesti üle vaadata X-tee sisend- ja väljundandmed. • Märgistada tasub andmeväljad, mis on kaetud juba olemasolevate mõistetega või edaspidises etapis lisatavate mõiste atribuutidega. Selle tulemusena saab uute mõistete otsimisel keskenduda kasutamata andmeväljade analüüsile ning samas on see teetähiseks tehtud tööle. • X-tee andmete analüüsi tulemusena on mõistlik korraga ontoloogiasse lisada ja implementeerida umbes 5 mõistet ning nende seosed. See tagab, et kogu protsess on pidevalt kontrolli all ning tõenäoliselt ei teki mõisteid, mis kuskile alamklassi või seosesse ei kuulu. • Iteratiivse arendamise tulemusena jääb uute mõistete hulk järjest väiksemaks ja seda vähem on vaja lisada neid eraldi kontseptuaalsele mudelile, st võib piirduda vaid implementeerimisega.
Mõistete atribuutide lisamine • Mõistete atribuudid vastavad nendele andmeväljadele X-tee teenuste kirjeldustest, millele ei ole otsest vastet mõistete hulgas.
Dokumenteerimine • Kui kõik komponendid, mõisted, seosed ja atribuudid, on ontoloogias kirjas ning automaatsed kontrollid loogilisi vigu ei tuvasta, on vaja lisada masinloetavasse ontoloogiasse kõigi komponentide inimkeelsed kirjeldused (nn annotatsioonid). • Kirjeldused peavad olema vastavuses semantika juhise nõuetega. • Kui ontoloogia on masinloetaval kujul valmis, on kasutajasõbralik lisada ka inimloetaval kujul dokumentatsioon.
Dokumenteerimine (visualiseerimise näide) Seose esitus Taksonoomia esitus Joonised on tehtud IHMC COE abil
Hindamine ja parendamine ... on kõigi etappide lahutamatuks osaks. • Loogilisi vigu aitavad leida tarkvara automaatsed loogikakontrollid. • Sisuliste vigade avastamiseks on tarvilik konsulteerida soovitavalt mitme valdkonda tundva spetsialistiga. • Mida varasemas faasis vead leitakse, seda vähem mõjutab nende parandamine kogu ontoloogia struktuuri.
Kasutatud vahendid OWL fail - Protege 4.0 http://protege.stanford.edu/ Kooskõlakontrolliks lisaks Protege’le tuletusmootori Pellet plug-in Klassidiagrammi joonistamine Protege’s OWLViz http://www.co-ode.org/downloads/owlviz/ OWL fail graafiliselt - IHMC COE http://www.ihmc.us/groups/coe/
Tänan Teid! Lisainfo:Rica Semjonovaprojektijuhtrica.semjonova@ria.ee6630295