55
SVEUČILIŠTE U SPLITU PRIRODOSLOVNO-MATEMATIČKI FAKULTET Diplomski rad Pristup oblikovanju ontološki utemeljenog područnog znanja Student: Šime Iglić Mentor: doc.dr.sc. Ani Grubišić Split, listopad 2013.

Pristup oblikovanju ontološki utemeljenog podru čnog znanjamapmf.pmfst.unist.hr/~ani/radovi/diplomski/Iglic_Sime_2013.pdf · 3.3 Povijest ontologije ... Ontologije se zapisuju pomoću

  • Upload
    leminh

  • View
    229

  • Download
    3

Embed Size (px)

Citation preview

  • SVEUILITE U SPLITU

    PRIRODOSLOVNO-MATEMATIKI FAKULTET

    Diplomski rad

    Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    Student: ime Igli

    Mentor: doc.dr.sc. Ani Grubii

    Split, listopad 2013.

  • Sadraj

    1 Uvod ................................................................................................................................................ 1

    2 Inteligentni tutorski sustavi ............................................................................................................. 2

    2.1 Definicija inteligentnih tutorskih sustava i podrunog znanja ................................................ 2

    2.2 AC-ware Tutor ......................................................................................................................... 3

    3 Ontologija ........................................................................................................................................ 6

    3.1 Primjena ontologije ................................................................................................................. 7

    3.2 Elementi ontologije ................................................................................................................. 9

    3.3 Povijest ontologije ................................................................................................................. 10

    3.4 Uenje ontologije .................................................................................................................. 11

    3.4.1 Otvoreni problemi u uenju ontologije ......................................................................... 12

    3.5 Ontologija i konceptualne mape ........................................................................................... 13

    3.6 OWL ....................................................................................................................................... 15

    3.6.1 Opis OWL jezika ............................................................................................................. 17

    3.7 XML ........................................................................................................................................ 19

    3.8 Alati za konstruiranje ontologija ........................................................................................... 23

    3.8.1 Protg .......................................................................................................................... 24

    3.8.2 Altova SemanticWorks .................................................................................................. 24

    3.8.3 SMORE / SWOOP ........................................................................................................... 25

    3.8.4 TopBraid Composer ....................................................................................................... 26

    4 Programski modul za oblikovanje ontoloki utemeljenog podrunog znanja .............................. 28

    4.1 Oblikovanje ontologije podrunog znanja............................................................................. 30

    4.2 Prikaz mape koncepata u XML datoteci ................................................................................ 31

    4.3 Spajanje na XML datoteku ..................................................................................................... 33

    4.4 Uitavanje podataka iz XML-datoteke .................................................................................. 33

    4.5 Izdvajanje duplih podataka ................................................................................................... 35

    4.6 Spajanje na bazu AC-ware Tutora ......................................................................................... 36

    4.7 Spremanje podataka u bazu .................................................................................................. 39

    4.8 Arhitektura modula za oblikovanje ontoloki utemeljenog podrunog znanja .................... 40

    5 Zakljuak ........................................................................................................................................ 44

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    6 Literatura ....................................................................................................................................... 45

    7 Prilozi ............................................................................................................................................. 47

    7.1 Prikaz koda aplikacije ............................................................................................................ 47

    7.2 Izgled aplikacije prilikom pokretanja ..................................................................................... 52

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    1

    1 Uvod

    U posljednje vrijeme uenici se susreu s mnotvom informacija koje moraju nauiti. Obujam gradiva

    koje uenici moraju savladati postaje sve vei, te se javlja problem kako uenik to sve moe nauiti i

    na koje naine. Jedan od zanimljivijih naina na koji se ovaj problem moe rijeiti je primjena

    konceptualnih mapa koje na jedan sasvim drugaiji, to jest slikovitiji, nain pomau ueniku da naui i

    zapamti velik broj informacija.

    Posljednjih desetljea ubrzani razvoj tehnologija i weba doveo je do razvoja sustava e-uenja.

    Svakodnevno se ti sustavi razvijaju i usavravaju da bi se uenicima osiguralo to bolje uenje i

    pouavanje.

    Sustavi e-uenja su se toliko razvili da su postali i inteligentni te mogu uenika pouavati kao to ga

    pouava stvarni uitelj u uionici, komunicirajui s uenikom tijekom cijelog procesa. Neki sustavi e-

    uenja imaju mogunost prilagoavati se znanju uenika, te njegovu napretku.

    Meutim, koliko god sustavi e-uenja bili napredni i inteligentni, ti sustavi moraju sadravati neko

    podruno znanje koje e uenik uiti i koje sustav e-uenja kao onaj koji pouava mora znati.

    Veinom je to podruno znanje u obliku podataka uneseno u bazu podatka sustava e-uenja koja je

    neizostavni dio svakog sustava e-uenja. Kod podrunog se znanja susreemo s problemima: kojom je

    brzinom mogue unijeti podruno znanje u bazu podataka sustava e-uenja, koje tehnologije i

    programske alate koristiti kako bi se to ostvarilo, koji se koraci moraju poduzeti da bi to bilo mogue,

    kolika je strunost potrebna onoga koji to radi, te koliko je sve to mogue automatizirati i ubrzati

    koristei neku od tehnologija i programskih alata. U elji za boljim razumijevanjem problema i

    eventualnom napretku u rjeavanju istih pristupit e se rjeavanju problema na najbolji nain, ovisno

    fizikoj izvedivosti i dostupnosti materijala i tehnologija.

    Izvedivost projekta, kao i potencijalni rezultati otkrit e nam o koliko sloenim problemima je rije, a

    u sluaju pozitivnih rezultata govorimo o stvaranju izvrsne podloge za daljnja istraivanja i pokuaje

    unaprjeenja izvravanja zadataka.

    Struktura ovog diplomskog rada je sljedea: u prvom poglavlju upoznajemo se s problematikom ovog

    rada. U drugom poglavlju se opisuju inteligentni tutorski sustavi kao i sam problem podrunog

    znanja, to jest problem njegova unosa u inteligentni tutorski sustav. U treem poglavlju se opisuje

    ontologija, primjena ontologije, alati za kreiranje ontologije, naini uenja ontologije, problemi u

    uenju ontologije te jezik ontologije. U etvrtom poglavlju se opisuje praktini dio diplomskog rada te

    njegova realizacija kroz korake od poetka do kraja. U petom poglavlju se daje zakljuak, to jest osvrt

    na rad i ono to se u radu postiglo.

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    2

    2 Inteligentni tutorski sustavi

    Napretkom tehnologija napredovali su i sustavi e-uenja i to u na nain da ti sustavi vie ne koriste

    samo za uenje nego su postali toliko razvijeni da su u mogunosti i pouavati uenike. Takvi sustavi

    se nazivaju inteligentni tutorski sustavi. to su to inteligentni tutorski sustavi te koji se problemi

    javljaju kod rada sustava moe se vidjeti u sljedeim poglavljima.

    2.1 Definicija inteligentnih tutorskih sustava i podrunog znanja

    Matt Lewis: Inteligentni tutorski sustav je sustav koji minimalno sadri mogunost simulacije

    ovjekovog nainima rjeavanja problema u danom podrunom znanju te poput ivog tutora ima

    sposobnost odvajanja podrunog znanja od pedagogijskog (Stankov, 2010) . Inteligentni tutorski

    sustav se sastoje od sljedeih komponenti (Stankov, 2010):

    Modul strunjaka (podruno znanje) nosilac podrunog znanja s kojim e uenik tijekom uenja i pouavanja komunicirati.

    Modul uenika (znanje uenika) obuhvaa sve aspekte stjecanja uenikova znanja i vjetina u danom podrunom znanju.

    Modul uitelja (tutorsko znanje) je modul koji je nositelj scenarija pouavanja i pedagogijskih znanja s kojima raspolae ivi uitelj.

    Okruenje nastavnog procesa i suelja uenika (modul komunikacije) koji sadri elemente inteligentnog tutorskog sustava koji podrava uenikov rad u raznim situacijama te razliite

    programske alate koji mu olakavaju proces uenja i pouavanja.

    Modul strunjaka je najvaniji modul inteligentnog tutorskog sustava esto nazivan i kraljenica

    inteligentnog tutorskog sustava. Da bi ovaj modul bio to bolje napravljen, a samim time i inteligentni

    tutorski sustav na to veoj razini zadovoljavao svoju namjenu, potrebno je to bolje oblikovanje i

    predstavljanje podrunog znanja. Podruno znanje je znanje o podruju koje je ueniku namijenjeno

    za uenje i pouavanje (Stankov, 2010) . Siromano, slabo oblikovanje i prikazivanje podrunog

    znanja dovodi do potekoa u koritenju inteligentnih tutorskih sustava te samim time i do slabog

    znanja uenika, meutim nijedan sustav ne moe posjedovati sve znanje iz nekog podruja zbog

    velikog obujma znanja ak i kod nekog ogranienog podruja. Bilo koji oblik predstavljanja znanja

    mora zadovoljiti sljedee uvjete:

    Izravno modeliranje tehnika koje bi strunjak primijenio u rjeavanju problema s tog podruja, ak i pod uvjetom siromanije baze znanja jer je pouavanje jedino ovjekov nain

    i tehnika rjeavanja problema.

    Eksplicitno predstaviti strategije i tehnike rjeavanja problema. Sustav mora predstaviti sve vjerojatne strategije ak i one koje su pogrene da bi tutor mogao prepoznati to uenik

    pokuava uiniti.

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    3

    Tri su pristupa za strukturiranje znanja u modulu strunjaka inteligentnog tutorskog sustava (Stankov,

    2010):

    Model crne kutije Model prozirne kutije Kognitivni ili spoznajni model

    Kod modela crne kutije strunjak crne kutije generira korektno ulazno silazno ponaanje preko

    zadataka u podrunom znanju i tako omoguava besprijekornu prosudbu. Meutim problem je to je

    njen mehanizam nepristupaan (Stankov, 2010).

    Kod modela prozirne kutije temeljna metodologija u izgradnji modula strunjaka zahtijeva inenjera

    znanja i strunjaka podrunog znanja koji je u stanju identificirati problemsko podruje te iterativno

    testirati i unaprijediti sustav. Sustave temeljene na modelu prozirne kutije karakterizira obimnost i

    posebno izraena priroda znanja poput ljudskog razmiljanja (Stankov, 2010).

    Kognitivni model je model koji je mnogo djelotvorniji u simulaciji ovjekovog naina rjeavanja

    problema jer omoguava da modul strunjaka oponaa ovjekovo razmiljanje i nain upotrebe

    znanja. Vrijednost ovog pristupa se ogleda u mnogo prihvatljivijem nainu komuniciranja uenika i

    modula strunjaka ali ovakav pristup ima i nedostataka. Razvoj kognitivnog modela je mnogo

    ogranienja i vremenski zahtjevnija zadaa nego li jednostavan razvoj ekspertnog sustava. Pokretanje

    raunanja kognitivnih modela moe biti izrazito raunalno skupo. Jedan od problema je u tomu kolika

    koliina detalja koje je potrebna unijeti u kognitivni model (Stankov, 2010).

    Kao to je u poglavlju naglaeno kod modula strunjaka javlja se problem oblikovanja podrunog

    znanja meutim to nije jedini problem koji se moe javiti. Jedan od vanijih problema koji se javlja

    kod podrunog znanja je kako to podruno znanje unijeti u odreeni sustav. Konkretni primjer

    problematike moe se vidjeti kod sustava AC-ware Tutor-a.

    2.2 AC-ware Tutor

    AC-ware Tutor (Grubii, 2012) (Slika 1) je model sustava za automatsko i dinamiko generiranje

    raunalom oblikovanog nastavnog sadraja, koji se prilagoava trenutnom znanju uenika. Ontoloki

    pristup u opisivanju podrunog znanja omoguava jednostavnu formalizaciju deklarativnog znanja

    koritenjem razliitih alata koji podravaju rad s konceptima i relacijama. Uenje na sustavu se odvija

    tako da sustav najprije preko inicijalnog testa provjeri znanje uenika te ueniku na osnovu

    pokazanog znanja pridrui stereotip. Stereotip moe biti (Grubii, 2012): poetnik, novak, osrednji,

    napredni, strunjak.

    Stereotip koji je pridruen uenikovom znanju ovisi o njegovom pokazanom znanju na inicijalnom

    testu. Nakon to je uenik dobio stereotip uenik odreeno vrijeme ui te nakon toga ponovno na isti

    nain slijedi provjera znanja. U sluaju da uenik pokae znanje on napreduje to se tie stereotipa i

    automatski mu se koliina gradiva za nauiti prilagoava njegovom stereotipu to jest poveava,

    ukoliko uenikovo znanje ostaje nepromijenjeno stereotip takoer ostaje nepromijenjen, ukoliko se

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    4

    uenikovo znanje pogoralo uenik dobiva stereotip nie razine te mu se automatski gradivo

    prilagoava i postaje lake. Uenik sam odabire vrijeme koje e provoditi u uenju i do kojeg

    stereotipa eli ii.

    Slika 1: Prikaz korisnikog suelja AC-ware Tutor-a

    U nastavku e ukratko biti objanjena problematika unosa podrunog znanja u sustav AC-ware Tutor.

    Kao prvo vano je napomenuti da bi se podruno znanje moglo unijeti u neki sustav taj sustav mora

    imati bazu podataka (Slika 2) koja se kod ovakvih sustava naziva i baza znanja u koju je to podruno

    znanje pohranjeno i iji se obujam moe poveavati to znai da se baza sustava moe nadopunjavati

    s novim znanjem.

    Slika 2: Prikaz baze podataka podrunog znanja

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    5

    Jedan od problema unosa podrunog znanja u sustav AC-ware Tutor je taj to je to vrlo dugotrajan

    proces koji zahtijeva mnogo vremena zato to se podruno znanje unosi runo koristei MS Excel

    alat. Da bi se podaci unijeli u bazu podataka u MS Excel-u se svi podaci i naredbe za unos podataka u

    bazu trebaju unijeti runo kao to je prikazano na slici ispod.

    Slika 3: Primjer unosa podataka u tablicu trojke koristei MS Excel

    Na (Slika 3) je mogue vidjeti primjer runog unosa podataka u tablicu trojki koristei MS Excel. Baza

    podataka podrunog znanja AC-ware Tutora napravljena je u SQL programskom alatu. Da bi se

    problem unosa podrunog znanja u sustav AC-ware Tutor olakao i da bi se skratilo vrijeme samog

    unosa podrunog znanja u sustav potrebno je ovaj proces automatizirati i ubrzati koristei razne

    programske alate. Automatizacija unosa podrunog znanja u sustav Ac-ware Tutor te naini ubrzanja

    njegovog unosa biti e objanjeni u nekom od narednih poglavlja.

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    6

    3 Ontologija

    Ontologija (engl. ontology) u raunarskim znanostima podrazumijeva nain predstavljanja znanja

    kojim se oblikuje promatrana domena imenovanjem koncepata u domeni i formiranjem relacija

    meu njima na nain da budu razumljivi i ovjeku i raunalu (Prcela, 2010).

    Ontologije se smatraju idealnim rjeenjem za mnoge aplikacije kao npr. integracija baza podataka,

    peer-to-peer sustavi, elektroniko poslovanje, usluge weba. U raunalnoj znanosti postoje razni

    podatkovni i pojmovni modeli koji se smatraju ontologijama (npr. UML modeli, XML sheme, formalne

    ontologije, itd.). Ontologije se zapisuju pomou jezika za zapisivanje ontologija.

    Za ontologiju moemo rei da se sastoji od:

    - Skupa koncepata - Skupa relacija ili veza - Skupa instanci dodijeljenih pojedinom konceptu

    Sloene (engl. heavyweight) i jednostavne (engl. lightweight) ontologije su ontologije koje se mogu

    konstruirati razliitim tehnikama modeliranja. Za ovakve ontologije je vano rei da mogu biti

    implementirane u razliitim jezicima. Ontologije mogu prezentirati visoku razinu informacija (engl.

    highly informal) koje su korisne korisnicima ako su zapisane u prirodnom jeziku. Ontologije mogu biti

    ogranieno informativne (engl. semi-informal) ako se zapisuju u restriktivnoj i strukturiranoj formi

    prirodnog jezika. Polu-formalne (engl. semi-formal) ontologije su zapisane u umjetnom jeziku ili u

    nekom formalno definiranom jeziku kao to je OWL (engl. Ontology Web Language). Ontologije koje

    su zapisane u prirodnom jeziku nisu itljive od strane raunala.

    Razliite tehnike koje se upotrebljavaju u pojedinim podrujima kao to su: programsko inenjerstvo i

    baza podataka u svrhu modeliranja koncepata te veza izmeu koncepata mogu posluiti za izgradnju

    jednostavnijih ontologija (Uschold & Gruninger, 1996, str. 12). Postoji nekoliko klasifikacija

    ontologija.

    Guarino (Guarino, 1998) predlae jednostavnu klasifikaciju tipova ontologija prema stupnju njihove

    ovisnosti o zadatku i tako razlikuje ope ontologije, domenske ontologije, ontologije za specifine

    zadatke i aplikacijske ontologije.

    Ope ontologije su ve dobro razraene i postoji nekoliko opih ontologija koje se esto koriste u

    istraivanjima, ali takve ontologije su obino neupotrebljive za neke konkretne zadatke koje zahtjeva

    odreena domena ili aplikacija (Guarino, 1998).

    Domenske ontologije su ontologije koje se mogu iznova upotrebljavati samo u domeni koju

    obuhvaaju. Domenske ontologije sadre vokabulare s konceptima iz domene i relacije koje postoje

    izmeu njih, informacije o aktivnostima koje se odvijaju u domeni, te elementarna pravila koja

    vladaju u istoj. Razlika izmeu domenskih i opih ontologija je u tome to koncepti u domenskim

    ontologijama predstavljaju specijalizaciju koncepata definiranih u opim ontologijama (Guarino,

    1998).

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    7

    Ontologije zadataka sadre vokabulare vezane uz neki specifini zadatak ili aktivnost. Ovakve

    ontologije esto nastaju specijaliziranjem koncepata iz opih ontologija. Vokabular takvih ontologija

    sadri pojmove koji se upotrebljavaju pri rjeavanju problema vezanih uz neki zadatak koji ne mora

    biti u podruju samo jedne domene (Guarino, 1998).

    Aplikacijske ontologije ovise o aplikacijama koje ih upotrebljavaju. Aplikacijske ontologije sadre sve

    definicije potrebne za oblikovanje modela znanja nunog za odreenu aplikaciju, te ovakve ontologije

    esto proiruju ili specijaliziraju koncepte iz vokabulara domenskih ontologija ili ontologija specifinih

    zadataka (Guarino, 1998).

    S obzirom na podatke kojima se raspolae, uenje ontologije se moe podijeliti na nekoliko zadataka:

    fokus na uenje koncepata, fokus na uenje relacija izmeu koncepata, uenje i koncepata i relacija u

    isto vrijeme. Formalno reeno, proces uenja ontologije podrazumijeva mapiranja izmeu

    komponenti ontologije, gdje su neke komponente ve poznate, a neke nedostaju i njih elimo otkriti.

    Prednosti ontologija (urakovi & Veri, 2013):

    - Koherentna navigacija, omoguava kretanje od koncepta do koncepta u strukturi ontologije - Fleksibilne ulazne toke, jer svaka specifina perspektiva u ontologiji moe se pratiti i dovesti

    u vezu sa svim njegovim povezanim konceptima

    - Veze koje istiu relevantne informacije bez zahtjeva prethodnog znanja o domeni ili njezinoj terminologiji

    - Sposobnost da predstavi bilo koji oblik informacija, ukljuujui i nestrukturirane, polu-strukturirane i strukturirane podatke

    - Povezivanje koncepta - Integriranje sadraja pravilnim povezivanjem i mapiranjem koncepata

    Nedostatci ontologija (urakovi & Veri, 2013):

    - Koncept koji je nov nepoznat je za mnoge korisnike tako da se esto javljaju greke - Problem mapiranja dobivene ontologije sa postojeim domenskim ontologijama, - Problem gubitka semantike nakon transformacije

    3.1 Primjena ontologije

    Ontologije u informacijskim znanostima se ponajvie koriste u: semantikom webu, umjetnoj

    inteligenciji i programskom inenjerstvu.

    Semantiki web je nadopuna, ekstenzija World Wide Web-a koji je nastao u potrazi za efikasnijim

    rjeenjima za pronalaenje informacija. Semantiki web omoguuje bolju suradnju izmeu raunala i

    korisnika. Ideja semantikog weba je da se sve informacije koje se na web-u pojavljuju oznae

    posebnim oznakama tako da raunala mogu automatizirano povezivati podatke iz jednoga tipa

    informacija s nekim drugim tipom informacija.

    Semantiki web omoguava da webu dostupni izvori informacija mogu biti organizirani i koriteni

    semantikim, a ne sintaktikim ili strukturalnim metodama. Semantiki web predstavlja skup

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    8

    programa koji prikupljaju sadraj sa weba te: procesira informaciju, razmjenjuje rezultate sa drugim

    programima na globalnoj razini (Jovi, 2005, str. 4). Semantiki web je osmislio Tim Berners-Lee.

    Semantiki web e donijeti strukturu smislenom sadraju Web stranica gdje se ontologije izdvajaju

    kao kljuni mehanizam za predstavljanje znanja Semantikog web-a. Ontologija prua mogunost

    generiranja novih injenica na osnovu injenica koje su eksplicitno dane. Ontologije omoguavaju

    postizanje vieg stupnja funkcionalnosti Web-a. Razlozi sve ee primjene ontologija na Web-u su

    (urakovi & Veri, 2013):

    - Poveanje preciznosti u pretraivanju Web-a - Povezivanje informacija na stranicama sa pridruenim im strukturama znanja i pravilima

    zakljuivanja

    - Razmjenu znanja izmeu ljudi i programskih jezika - Dijeljeno razumijevanje domena - Pruanje strukture za prijenos informacija u Semantikom web-u - Mogunost nadograivanja i mijenjanja u skladu s potrebama

    Umjetna inteligencija (engl. Artificial Intelligence) je disciplina koja se bavi oblikovanjem inteligentnih

    sustava koji implementiraju ona svojstva ljudskog ponaanja koja se smatraju inteligentnim (Matei,

    2010). Podruja koja se bave istraivanjem umjetne inteligencije su: raunarstvo, matematika,

    ekonomija, psihologija, itd.

    Umjetnu inteligenciju dijelimo na slabu i jaku. Kod slabe umjetne inteligencije razvijaju se inteligentni

    sustavi kojima se dodaju smo neki oblici ljudskog ponaanja, dok kod jake umjetne inteligencije se

    razvijaju inteligentni sustavi kojima se u potpunosti dodaju sve inteligentne osobine ljudskog bia

    (Slika 4).

    Slika 4: Primjer umjetne inteligencije

    Programsko inenjerstvo primjena je sustavnog, discipliniranog i mjerljivog pristupa u razvoju,

    uporabi i odravanju programske podrke (IEEE, 2004, str. 24). Disciplina programskog inenjerstva

    obuhvaa: znanje, alate, metode za definiranje zahtjeva programske podrke koji omoguavaju

    obavljanja zadataka dizajna programske podrke, konstrukcije programske podrke, testiranja

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    9

    i odravanja programske podrke. Programsko inenjerstvo je disciplina koja posjeduje znanje iz

    razliitih polja kao to su: raunarstvo, menadment, matematika, upravljanje projektima, itd.

    Primjena ontologije u razvoju programske potpore moe doprinijeti optimiziranju procesa razvoja i

    koritenja programskog rjeenja, ontologija moe posluiti kao predloak za optimiranje oblikovanja

    novog sustava tako to se ponovno koristi znanje zapisano u strukturi ontologije. U koritenju

    programa ontologija moe biti komunikator meu agentima i na taj nain omoguiti njihovo bolje

    meudjelovanje.

    3.2 Elementi ontologije

    Gledajui iru sliku svijeta, to jest svemira u kojem se ivi moe se vidjeti da se cijeli svemir sastoji od

    elemenata koji se neophodni za njegovo postojanje. Takoer primjena elemenata kao neeg bitnog

    moe se nai u ontologiji koja te elemente opisuje.

    Osnovni elementi koje ontologije opisuju su (Slika 5):

    - Individue: osnovne objekte poetne razine - Klase: zbirke ili tipove objekata - Atribute: pripadajua svojstva, pojave, karakteristike ili parametre koje objekt moe imati ili

    distribuirati

    - Odnose: nain na koji se objekti odnose jedni prema drugima

    Individue su osnovna, poetna razina sastavnica ontologije koje u ontologiji mogu ukljuiti konkretne

    objekte poput ljudi, ivotinja, stolova, automobila, molekula i planeta. Ontologija ne mora ukljuiti

    individuu.

    Klase su apstraktne grupe, skupine ili zbirke objekata. Mogu sadravati individue, druge klase ili

    kombinaciju jednih i drugih.

    Svi objekti u ontologiji mogu biti opisani tako da im pridruujemo atribute. Svaki atribut ima barem

    ime i vrijednost. Atribut se koristi pohranu informacija koje su specifine za objekt na koji se oslanja.

    Moemo ih koristiti za opisivanje odnosa izmeu objekata u ontologiji. Relacija je atribut ija je

    vrijednost drugi atribut u ontologiji.

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    10

    Slika 5: Grafiki prikaz ontologije

    3.3 Povijest ontologije

    Ontologija potie iz filozofske discipline koja je se procjenjuje da je stara kao i sam Aristotel, smatra

    se sinonimom za metafiziku. U to doba je bila nazvana prva filozofija, a izvodi se od grke rijei ontos

    to u prijevodu znai biti to jest bie i logos to znai rije ili govor (Legg, 2007). Takozvana filozofska

    ontologija je znanost o onome to jest, o vrstama i strukturama objekata, svojstava ,dogaaja,

    postupaka i odnosa u svim podrujima stvarnosti (Smith & Welty, 2001). Materijalni objekt, Osoba,

    Vrijeme i Broj su neke od kategorija koje su predloili tradicionalni ontolozi. Aristotelovo djelo

    Kategorije predstavlja prvi pokuaj ovjeanstva da odredi sustavnu formalnu ontologiju. Ovo je

    djelo znaajno isprepleteno s Aristotelovom logikom. Razumijevanje pravila zakljuivanja po kojima

    znanje razvrstano u odreene kategorije moe biti pretvoreno u kategorizirano znanje koje je za

    Aristotela neodvojivo od razumijevanja samih kategorija. Iako kasniji filozofi tee nastaviti istraivanja

    s ontologijom i formalnom logikom kao odvojenim disciplinama, formalna ih je ontologija u

    aplikacijama informacijske tehnologije bila prisiljena ujediniti. Tijekom godina istraivanja filozofske

    ontologije postoje mnoga neodgovorena pitanja o kojima se raspravlja i danas:

    - Stupanj do kojeg se kategorije koje su smislili ljudi ontolozi mogu smatrati sveope primjenjivima ili objektivnima u opreci s artefaktima u odreenim kontekstima, kao to je

    kultura, vremensko razdoblje ...

    - Do koje mjere treba kategorije jednog ontologa smatrati valjanima za sva vremena, a do koje su mjere djeljive u svim zajednicama?

    - Mora li se sav ontoloki posao raditi lokalno i opetovano?

    Kasnih 50-tih godina ontologija svoju primjenu pronalazi u raunalnim znanostima. Razvoj baza

    podataka i njihova sloenost dovelo je do toga da su odreeni problemi koje oblikovatelji baza

    podataka susreu zapravo ontoloke naravi. Na primjer: to je osoba? Je li to entitet koji postoji kao

    cjelina u jednomu odreenom vremenu ili je to entitet koji pokriva itav ivot osobe. Nekakva opa

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    11

    standardizirana pojmovna shema smatra se poeljnom radi omoguavanja da se privremena rjeenja

    ontolokih problema zatite od raunalnih programera koji bi te probleme koristili u zlonamjerne

    svrhe. Prema Tomu Gruberu (Gruber, 1993) znaenje ontologije u kontekstu raunalnih znanosti

    jest opis koncepata i odnosa koji mogu postojati za agenta ili zajednicu agenata specificirajui da je

    ontologija openito reeno set definicija formalnog rjenika. Reprezentacija entiteta, ideja i dogaaja

    zajedno s njihovim svojstvima i odnosima s obzirom na sistem kategorija je ono to je zajedniko

    ontologiji u raunalnoj znanosti i filozofiji. Filozofi su manje zabrinuti oko utvrivanja fiksnih,

    kontroliranih pojmova negoli istraivai u raunalnim znanostima dok su raunalni znanstvenici

    manje ukljueni u raspravu o nekim nunim poetnim principima.

    Kao to je i ranije reena u to doba ontologija ima veliku primjenu i u umjetnoj inteligenciji. U kasnim

    1970-im i ranim 1980-im, intenzivni istraivaki napori bili su usmjereni u tzv. ekspertne sustave.

    Takvi sustavi su teili predstavljanju znanja neke domene tako da se na pitanja o toj domeni moglo

    odgovoriti na razini ljudskih strunjaka. Danas ontologija ima primjenu u mnogim znanstvenim

    disciplinama meu njima je najzanimljivija primjena ontologije u informatici.

    3.4 Uenje ontologije

    Uenje ontologije (engl. ontology learning) odnosi se na automatsko kreiranje i otkrivanje ontologija pomou tehnika iz podruja strojnog uenja ili otkrivanja znanja (Juri, 2013). Poluautomatske

    metode kreiranja ontologija za razliku od manualnih omoguavaju kreiranje ontologija na mnogo

    iroj razini sa znatno veom brzinom.

    Jezici za prezentacije ontologija nalaze se izmeu prirodnog jezika koji je razumljiv ljudima i

    formalnog jezika koji je razumljiv strojevima. Kako bi se taj problem rijeio potrebno je i dalje

    dopustiti ljudima koritenje prirodnog jezika na nain da se automatski mapiraju rijei i izrazi iz

    prirodnog jezika koji je razumljivi ljudima u ontoloke koncepte. Znanje pohranjeno u ontologijama je

    deklarativno, eksplicitno i vrlo strogo. Znanje koje se izraava ljudskih govornim i pisanim jezikom je:

    implicitno, esto nejasno ili ak nerazumljivo.

    Kod otkrivanja znanja ontologija predstavlja model kojeg je potrebno prikazati u nekom hipotetskom

    jeziku (Juri, 2013). S obzirom na podatke kojima se raspolae uenje ontologije se moe podijeliti na

    nekoliko zadataka:

    - Fokus na uenje koncepata, - Fokus na uenje relacija izmeu koncepata - Uenje i koncepata i relacija u isto vrijeme

    Metode iz podruja otkrivanja znanja usmjerene su na otkrivanje znanja pronalaenjem strukture

    unutar podataka. Metode iz podruja otkrivanja znanja koriste za mapiranje podataka koji su

    nestrukturirani kao na primjer velike kolekcije dokumenata u ontologiji. Sredinji problem u podruju

    otkrivanja znanja predstavlja skalabilnost prilikom ega je esto potrebno manipulirati velikim

    koliinama podataka. Koraci u ovom procesu su:

    - Kreiranje koncepata - Kreiranje relacija

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    12

    - Popunjavanje ontologije instancama - Konstruiranje ontologije - Proirivanje ontologije novim sadrajem

    Kod strojnog uenja tehnike su usmjerene na automatsko prepoznavanje i detekciju odreenih

    uzoraka i pravila unutar nekog skupa podataka. Proces strojnog uenja zasniva se na indukciji,

    odnosno na donoenju nekih generalnih zakljuaka nad nekim skupom podataka. Uenje nad takvim

    podacima moe biti nadzirano ili bez nadzora. S aspekta uenja ontologija, metode iz ovog podruja

    kao izvor imaju najee tekstualne dokumente. U podruju strojnog uenja ve je nastao velik broj

    smislenih tehnika za induktivno uenje iz skupa podataka, ali veina ih je osim par iznimki uglavnom

    suprotna ideji uenja ontologija.

    Tehnike strojnog uenja najprije pokuavaju razviti analitike modele koji objanjavaju podatke. Iz tog

    razloga se te tehnike najee koriste za potrebe predvianja, odnosno za klasifikaciju novih primjera.

    Veina radova koji koriste tehnike strojnog uenja koriste: segmentiranje, klasificiranje, memorijsko

    uenje ili induktivno zakljuivanje iz uzoraka unutar primjera.

    3.4.1 Otvoreni problemi u uenju ontologije

    Iako je u uenju ontologije napravljen velik pomak jo uvijek postoje problemi koje je bitno

    razmotriti, u nastavku e biti navedeni osnovni problemi s kojima se susreemo u uenju ontologije.

    Neki od problema u uenju ontologija su (Juri, 2013):

    - Uenje specifinih relacija - Uenje relacija vieg stupnja - Uenje definicija - Filtriranje pojmova - Kreiranje ontologija visokog stupnja - Vrednovanje, itd.

    Uenje specifinih relacija bazira se na uenju specifine vrste relacija. Za neke domene jako su vane

    manje prouavane vrste relacija poput relacije dio-cjelina (Juri, 2013).

    Uenje relacija vieg stupnja bazira se, kako i sam naziv kae, na relacije vieg stupnja kao to su na

    primjer relacija povjerenje (Juri, 2013).

    Uenje definicija bazira se na razliitim oblicima od identifikacije i ekstrakcije novih definicija,

    odabiranja alternativnih definicija ili slaganja definicija od dijelova informacija. Za uenje definicija

    esto se koriste relacije poput definira i odnosi se na (Juri, 2013).

    Filtriranje pojmova se odnosi na filtriranje nerelevantnih koncepata unutar teksta (Juri, 2013).

    Kreiranje ontologija visokog stupnja predstavlja proces kreiranja ontologija visokog stupnja iz

    podataka koje dobijemo koritenjem nekih od metoda uenja ostaje problematian. Povezivanje

    lingvistikih entiteta s konceptima u ontologiji moe se izvesti runo ili automatski. Takoer spajanje i

    integracija ontologija ostaje i dalje jako zahtjevan zadatak (Juri, 2013).

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    13

    Veina ontologija nastala tehnikama uenja ontologija vrednovana je od strane ljudi. Vano je

    napomenuti da se kod vrednovanja javlja problem pronalaska strunih ljudi za obavljanje ovog

    procesa te samim time vrednovanje predstavlja jako zahtjevan posao za ovjeka (Juri, 2013).

    3.5 Ontologija i konceptualne mape

    Konceptualne mape (engl. Conceptual Maps) predstavljaju alat za bre i uinkovitije uenje. Zapravo

    to je tehnika koja pomae da pojedinac zapamti to vie podataka koji mu za neto slue (Skokandi,

    2008).

    Velika primjena konceptualnih mapa se nalazi u obrazovanju. U obrazovanju konceptualne mape se

    koriste da bi uenici (Skokandi, 2008):

    - Zapamtili veliku koliinu gradiva - Skratili vrijeme uenja - Naueno pohranili u dugorono pamenje

    Konceptualne mape se jo nazivaju i kognitivne mape. Utemeljitelj modernih konceptualnih mapa je

    profesor Tony Buzan koji je prouavao naine uenja svojih studenata. Zakljuio je da uenici ne

    mogu dovoljno dobro uiti i nauiti samo iz svojih biljeki nego da bi konceptualne mape omoguile

    bolje i lake uenje velikih koliina gradiva. Konceptualnim mapama se potie fotografsko pamenje i

    vizualno razmiljanje jer na taj nain se moe postii da odreeni podatak moemo zapamtiti gdje se

    nalazi i koji je podatak. U suprotnom se moemo sjetiti samo mjesta gdje se podatak nalazi ali ne i

    koji je podatak, to se lako moe i provjeriti ako pojedinac napravi osobni pokus na nain da

    odreene podatke pamti na tradicionalni nain da buba ili ui na pamet gradivo i na nain da koristi

    konceptualne mape. Kod prvog naina se moe dogoditi da znamo mjesto gdje se sadraj nalazi ali ga

    se ne moemo sjetiti, a kod konceptualnih mapa uenik se prisjea podatka preko slika, zabiljeki i

    boja. Vrlo je bitno napomenuti da sav tekst, rijei, reenice koje su mogue, zamijenimo simbolima ili

    slikama.

    Postoje dvije vrste konceptualnih mapa (Skokandi, 2008):

    - Raunalne konceptualne mape - Rune konceptualne mape

    Kod stvaranja runih konceptualnih mapa potreban je samo: papir, olovka, boje i malo dobre volje za

    to sve nacrtati (Slika 6).

    Kod raunalnih konceptualnih mapa potrebno je raunalo i alat koji omoguava crtanje

    konceptualnih mapa, dok umijee u crtanju nije potrebno (Slika 7).

    Prilikom izrade konceptualnih mapa potrebno se pridravati sljedeih pravila (Skokandi, 2008):

    - Poetak ide od sredine i crta se crte koji karakterizira temu na kojoj se radi - Koritenje razliitih simbola i veliina slova u cijelom dijagramu - Odrediti i upisati kljune rijei - Koristiti razliite boje

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    14

    - Razvijati vlastiti stil izrade umne mape - Naglasiti najvanije dijelove i koristiti asocijacije - Svaka kljuna rije je samostalno zapisana

    Prilikom izrade konceptualnih mapa postoje stvari koje treba izbjegavati kao to su (Skokandi, 2008):

    - Previe boja(najmanje tri, najvie pet) - Toke meu linija - Nejasna sredinja tema - Teme udaljene od rijei na koje se odnose - Slova u razliitim bojama

    Slika 6: Primjer konceptualne mape nacrtane rukom (http://os-gjuro-ester-koprivnica.skole.hr/upload/os-gjuro-ester-

    koprivnica/images/static3/1405/attachment/primjer_umne_mape_2.JPG)

    Uiteljima u nastavi ovo je odlian alat za:

    - Mjeseno planiranje nastave - Obradu problematinih uenika - Voenje biljeaka

    Pri izradi konceptualnih mapa u razredu veinom se koristi Oluja ideja to jest stvaranje ideja i

    kreiranja konceptualnih mapa od strane grupe uenika gdje se ideje pojedinca ne kritiziraju ve se

    unaprjeuju, a cilj je istaknuti to vei broj ideja bez obzira na njihovu valjanost.

    Glavna razlika izmeu konceptualne mape i ontologije je to to konceptualna mapa odraava

    razmiljanje o jednom predmetu razgovora, a ontologije se sastoje od niza meusobno povezanih

    koncepata na temelju ega se moe zakljuiti kako za izradu ontologije treba izraditi barem onoliko

    konceptualnih mapa koliko ontologija ima razliitih koncepata, a veze izmeu konceptualnih mapa

    predstavljat e veze izmeu koncepata u ontologiji (Prgomet, 2011). Konceptualne mape se najee

    izrauju u nekom od alata predvienih za to.

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    15

    Slinost konceptualne mape i ontologije je to oboje slue za strukturirano predstavljanje znanja. Konceptualna mapa koja nije razumljiva raunalu ne moe predstavljati ontologiju (Prgomet, 2011). Osim koncepta konceptualna mapa sadri i relacije koje definiraju odnos meu konceptima. Meutim, konceptualna mapa se organizira oko jednog pojma pa je moemo interpretirati kao modul ontologije koji je takoer ontologija te moe predstavljati drugaiji pogled na sustav.

    Slika 7: Primjer konceptualne mape kreirane programskim alatom (Prgomet, 2011)

    3.6 OWL

    Postoje mnogi ontoloki jezici ali u narednom poglavlju e biti opisan OWL jezik. OWL (Web Ontology

    Language) je ontoloki jezik namijenjen opisu pojmova i odnosa izmeu pojmova te opisivanje

    ontologija na web-u, a to znai da informacije koje se nalaze u dokumentima su obradive od strane

    aplikacija i sadraj je razumljiv korisnicima (Prcela, 2008). OWL je nastao iz ideje o semantikom

    webu. OWL je izveden iz DAML i OIL ontolokih jezika. Informacije opisane ovim jezikom postaju

    znanje. OWL ima mogunost izvoenja injenica koje nisu eksplicitno navedene. OWL se koristi kao

    deklarativni jezik u predstavljanju znanja raznih domena primjene kao to su (Slika 8):

    - Medicina - Molekularna biologija - Programsko inenjerstvo - Konfiguracija sloenih sustava, itd.

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    16

    Slika 8: Primjena OWL-a

    U OWL-u mogue je:

    - Definirati sinonime za objekte, klase i svojstva - Definirati karakteristike svojstava kao to su: tranzitivnost, simetrinost, inverzno svojstvo - Definirati ogranienja na vrijednosti koje neko svojstvo moe imati - Definirati nove klase primjenom skupovnih operacija nad postojeim klasama.

    U razvoju OWL-a moraju se uzeti obzir pretpostavke o razliitim ontologijama i dozvola za

    kombiniranjem razliitih ontologija. Moe se dogoditi da neke od kombiniranih ontologija mogu biti

    proturjene, ali nove informacije ne smiju nikada opozivati postojee, jedino se mogu dodavati. Kako

    bi se omoguila takva kompatibilnost OWL uvodi tri pod jezika za razliite namjene (Prcela, 2008):

    - OWL Full - OWL DL - OWL Lite

    Potpuni pod jezik ili OWL Full upotrebljava osnovni OWL jezik koji dozvoljava njegovu kombinaciju na

    proizvoljan nain s RDF-om i RDF Schemom. Prednost mu je njegova sintaktika i semantika

    kompatibilnost s RDF-om. Svaki legalni RDF dokument je takoer legalni OWL Full dokument. Svaki

    valjani RDF/RDF Schema zakljuak je takoer valjani OWL Full zakljuak ( (Prcela, 2008), (Paunovic &

    Stokic, 2012) ).

    OWL DL (deskriptivna logika) je pod jezik od OWL Full-a. Ovaj pod jezik posjeduje neka ogranienja u

    vezi upotrebe konstrukata iz OWL-a i RDF-a. Prednost je osiguranje efikasne razumijevajue podrke.

    Nedostatak je gubljenje potpune kompatibilnosti s RDF-om. RDF dokument se treba proiriti na

    odreeni nain i ograniiti na neki drugi nain prije nego to bude legalni OWL DL dokument. Svaki

    legalni OWL DL dokument je legalni RDF dokument ( (Prcela, 2008), (Paunovic & Stokic, 2012)).

    OWL Lite je uglavnom namijenjen podravanju klasifikacijske hijerarhije i jednostavnih ogranienja.

    Ovaj jezik je dobra polazna osnova za pravljenje ontolokih alata. OWL Full je proirenje OWL DL, koji

    je proirenje OWL Lite. Svaka OWL Lite ontologija je OWL DL i OWL Full ontologija. Svaka OWL DL

    ontologija je i OWL Full ontologija ( (Prcela, 2008) , (Paunovic & Stokic, 2012)).

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    17

    3.6.1 Opis OWL jezika

    to se tie sintakse OWL jezika je izgraen na RDF-u i RDF shemi te koristi RDF-ovu XML-baziranu

    sintaksu (Slika 9).

    RDF/XML ne osigurava itljivu sintaksu zbog ega su druge sintaksne forme takoer definirane za

    RDF:

    - XML temeljenu sintaksu koja ne slijedi RDF konvencije i ime se osigurava vea itljivost korisnicima

    - Saetu sintaksu, koja je vie kompaktna i itljiva nego XML sintaksa ili RDF/XML sintaksa - Grafiku sintaksu temeljenu na UML (Unified Modeling Language) konvenciji, koja je iroko

    upotrebljavanja i predstavlja jednostavan nain kojim korisnici postaju upoznati s OWL-om

    Postoji apstraktna sintaksa koja je jednostavnija i vie prilagoena ljudima, a mogue ju je koristiti za

    OWL DL i OWL Lite. XML/RDF sintaksa je slubena OWL sintaksa namijenjena strojnoj obradi i moe

    se koristiti za sve tri inaice OWL-a.

    Slika 9: Prikaz OWL sintakse

    to se tie zaglavlja (Slika 10) vano je napomenuti da su OWL dokumenti koji se nazivaju i OWL

    ontologije ujedno i RDF dokumenti (Pavic, 2013). Osnovni element u takvim dokumentima je rdf:RDF

    koji je takoer i poetni element OWL dokumenta.

    Slika 10: OWL zaglavlje

    OWL dokument zapoinje i nizom izjava koje slue za odravanje dokumenta. Te izjave su grupirane

    unutar owl:Ontology elementa koji sadri komentare, oznaku verzije i ukljuivanje drugih ontologija

    (Slika 11).

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    18

    Slika 11: Proireno zaglavlje OWL-a

    Vaan dio zaglavlja su i informacija o verziji ontologije odnosno njegovoj kompatibilnosti s

    prethodnim verzijama ontologije koje prikazuju sljedei elementi:

    - owl:versionInfo openita informacija o verziji (bilo brojana, bilo znakovna) - owl:backwardCompatibleWith ova izjava definira prethodnu verziju s kojom je ontologija

    kompatibilna

    - owl:incompatibleWith oznaava da nije kompatibilna s nekom prethodnom verzijom

    OWL klasa se definira koritenjem owl:Class elementa (Pavic, 2013). Kod OWL-a se podrazumijeva

    postojanje dvije specijalne klase:

    - owl:Thing - najopenitija klasa (sve je stvar) - sve klase su pod klase ove klase - owl:Nothing - prazna klasa- svaka klasa je nad klasa ove klase

    Pri definiranju proizvoljne klase mogue je koristiti dodatne elemente kojima se poblie odreuje

    klasa. Dodatni elementi proizvoljne klase su:

    - owl:disjointWith - definira disjunkciju dviju klasa - owl:equivalentClass - definira ekvivalenciju dviju klasa

    OWL razlikuje dva tipa svojstava (Pavic, 2013):

    - svojstvo objekata - svojstvo tipa podataka (datatype)

    OWL ne posjeduje predefinirane tipove podataka (cjelobrojni, float, niz znakova,...). OWL ne prua

    specifian nain definiranja predefinirani tipova podataka nego doputa koritenje redefiniranih

    tipova iz XML Scheme odnosno njegovih tipova podataka. Jedna od posebnosti OWL su podrane

    restrikcije nad svojstvima. Restrikcija se postie uvoenjem elementa owl:Restriction koji se

    obavezno sastoji od elemenata :

    - owl:onProperty svojstvo koje se ograniava - jedan od elemenata koje definiraju ograniavanje

    Elementi koji definiraju ograniavanje mogu biti :

    - owl:hasValue - posjeduje neku odreenu vrijednost - owl:allValuesFrom - posjeduje sve vrijednosti - owl:someValuesFrom - posjeduje neke vrijednosti - owl:minCardinality i/ili owl:maxCardinality (owl:cardinality)

    Enumeracija u OWL-u je definirana owl:oneOf elementom koji se koristi pri definiranju klase kao niz

    svojih elementa.

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    19

    Iako je OWL jezik jako vaan za rad s ontologijama, jedan od neizostavnih jezika kad se govori o

    ontologiji je XML o kojem e biti rijei u narednom poglavlju.

    3.7 XML

    XML je kratica za eXtensible Markup Language, odnosno jezik za oznaavanje podataka (Harold &

    Means, 2006). EXtensible oznaava da je jezik proirljiv de dozvoljava definiranje novih oznaka.

    Markup oznaava dodavanje specijalnog znaenja podatku. Ovaj jezik definira sintaksu za

    oznaavanje podataka jednostavnim, svima razumljivim oznakama (engl. tags). XML bi kao jezik

    trebao biti razumljiv i ljudima i raunalima.

    Princip realizacije je vrlo jednostavan: odgovarajui sadraj treba se uokviriti odgovarajuim

    oznakama koje ga opisuju i imaju poznato ili lako shvatljivo znaenje. XML i njegova struktura je vrlo

    slina HTML-u, samo to XML oznaka definira podatak dok HTML oznaka definira izgled stranice to

    se vidi na (Slika 12).

    Slika 12: Razlika XML-a i HTML-a

    Danas je XML jezik vrlo rairen i koristi se za razliite namjene (Harold & Means, 2006):

    - Odvajanje podataka od prezentacije - Razmjenu podataka - Pohranu podataka - Poveavanje dostupnosti podataka - Izradu novih specijaliziranih jezika za oznaavanje - Vektorska grafika - Pozivanje udaljenih funkcija, itd.

    XML omoguava pisanje vlastitih programa za rad s podacima u XML dokumentima i njihovu obradu.

    Ako sami radite program, koristite i vlastite oznake koje opisuju tono ono to je vama potrebno za

    rad. Za rad sa XML dokumentima moete upotrijebiti i gotov alat, kao to su itai Weba (engl. Web

    browsers) ili programi za obradu teksta. Jedan dio alata moe raditi sa svim XML dokumentima dok

    su drugi prilagoeni za podrku odreenoj XML aplikaciji.

    to se tie povijesti XML-a, vano je rei da je nastao iz razliitih jezika pa tako 60-tih godina 20.

    stoljea istraivai IBM-a poinju razvijati Generalized Markup Language (GML). Do GML-a se dolazi

    zbog problema s ogromnom koliinom razliite tehnike dokumentacije koja se za svaku posebnu

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    20

    namjenu morala prepisivati i nanovo ureivati. Ideja je bila nainiti prvi ire koriteni jezik za

    oznaavanje podataka.

    Kako se GML pokazao kao uspjean proizvod, razvoj u tom smjeru je nastavljen. 1986. objavljen je

    Standard Generalized Markup Language (SGML) (Harold & Means, 2006). Najvei nedostatak SGML-a

    je njegova veliina. Nastali jezik bio je opiran, sloen za koritenje te skup u upotrebi. Razlog tome je

    to su autori pokuali pokriti svaku moguu primjenu jezika. Zbog tih osobina SGML nije bio rairen u

    praksi .

    Iz SGML-a nastao je HTML (HyperText Markup Language). Za njegov razvoj izabran je jedan manji

    skup oznaka iz SGML skupa koji je bio primijenjen na formatiranje dokumenta. HTML je imao skup

    oznaka koje su opisivale osnovne dijelove dokumenta, a programi koji su tumaili strukturu takvih

    dokumenata bili su HTML preglednici. Nedostatak mu je mala koliina oznaka koja nije bila dovoljna

    za neku veu upotrebu. Zbog potreba i elja trita te razvoja tehnologija proirivan je nestandardnim

    oznakama koje su sluile za formatiranje sadraja u smislu njegovog prikaza u internet pregledniku.

    XML se razvija poetkom 90-tih godina 20.stoljea od strane World Wide Web Consortium-a. XML je

    zapravo jezik koji objedinjuje jednostavnost HTML-a i izraajnu snagu SGML-a. Razvojni tim je bio

    voen nekim ciljevima kakav bi XML trebao biti, a to su:

    - XML mora biti izravno primjenjiv preko interneta - XML mora podravati irok spektar primjena - XML mora biti kompatibilan s SGML-om - Mora biti lako pisati programe koji procesiraju (parsiraju) XML dokumente - Broj opcionalnih znaajki u XML-u mora biti apsolutno minimalan, u idealnom sluaju jednak

    nuli

    - XML dokumenti moraju biti itljivi ljudima, te u razumnoj mjeri jednostavni - Standard mora biti specificiran to prije - Dizajn XML-a mora biti formalan i precizan - Kreiranje XML dokumenata mora biti jednostavno - Saetost kod oznaavanja dokumenta XML-om je od minimalnog znaaja

    Xml dokument se sastoji od (Harold & Means, 2006):

    - Zaglavlja - Sadraja dokumenta

    Primjer xml dokumenta mogue je vidjeti na (Slika 13).

    Slika 13: Primjer XML dokumenta

    Zaglavlje (Slika 14) se nalazi na poetku xml dokumenta i korisniku omoguava da vidi informacije o

    samom xml-u, to jest koja je verzija xml-a i standard po kojem je xml napravljen.

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    21

    Slika 14: Primjer zaglavlja XML dokumenta

    U sadraju (Slika 15) xml dokumenta nalazi se sadraj koji je omeen xml oznakama. Svaki XML

    dokument mora imati jedan korijenski ili root element koji uokviruje kompletan sadraj. Taj element opisuje XML dokument. Unutar korijenskog elementa ugnijeeni su svi ostali.

    Slika 15: Prikaz sadraja XML dokumenta

    XML elementi mogu biti u odnosu (Harold & Means, 2006):

    - roditelj-dijete (engl. parent-child) - sestrinskom (engl. siblings)

    Kod odnosa roditelj dijete (Slika 16) jedan je element hijerarhijski nadreen drugom.

    Slika 16: Roditelj-dijete odnos

    U ovom primjeru element poruka je roditelj elementu naslov (nadreen je elementu naslov). Kae se da je element naslov ugnijeen unutar elementa poruka. U XML-u elementi moraju biti pravilno

    ugnijeeni, to bi znailo da ne smije doi do preklapanja oznaka kao to je to vidljivo na (Slika 17).

    Slika 17: Primjer nepravilno ugnijeenih elemenata

    Kod sestrinskog odnosa (Slika 18) elementi se nalaze na istoj razini. U primjeru ispod elementi: naslov

    i tijelo se nalaze na istoj razini.

    Slika 18: Primjer sestrinskog odnosa elemenata

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    22

    Nazivi elemenata (Harold & Means, 2006):

    - Mogu sadravati: brojeve, slova i posebne znakove - Moraju poinjati slovima - Ne smiju sadravati praznine - Treba izbjegavati koritenje znakova kao to su -,/ - Ne smiju poinjati tekstom xml ili XML

    XML atributi nude podatke koji dodatno opisuju XML elemente. Podatci koji se navode kao atributi

    mogu biti zanimljivi ovjeku ili raunalnom programu koji parsira XML dokument. Atributi imaju svoj

    naziv i vrijednost koja se navodi pod navodnicima (Slika 19).

    Slika 19: Prikaz XML atributa

    Prilikom rada u XML dokumentu moraju se potivati i odreena sintaksna pravila kao to su (Harold &

    Means, 2006):

    - Svaki XML element mora imati poetnu i zavrnu oznaku - Svi elementi moraju biti pravilno ugnijeeni - XML oznake su osjetljive na velika i mala slova - Svaki XML dokument mora imati korijenski element koji uokviruje cijeli sadraj - Vrijednosti atributa se navodi pod navodnicima - Komentari se prikazuju pomou posebne oznake - Svaki xml dokument poinje zaglavljem u kojem je navedena verzija XML-a i kodna stranica - Znakovi koji u XML-u imaju posebno znaenje u tekstu se moraju prikazivati na poseban

    nain, znakovnim ili numerikim kodovima koji na poetku imaju znak & (engl. ampersand), a

    na kraju toku-zarez

    Prednosti XML-a (Harold & Means, 2006):

    - Jednostavno je itljiv ovjeku i raunalu - XML dokument je obina tekstualna datoteka itljiva na svakoj platformi koja moe itati

    tekstualne podatke

    - Podrava Unicode i omoguuje prikaz teksta na svim danas poznatim jezicima - Format je samodokumentirajui. Oznake opisuju sadraj koji se nalazi unutar njih. - Ima stroga sintaksna pravila tako da je jednostavno kontrolirati ispravnost nastalog

    dokumenta.

    - Meunarodno prihvaen standard. Mnogi proizvoai programa su ga prihvatili i koriste u svojim proizvodima

    - Hijerarhijska struktura je pogodna za opisivanje mnogih sadraja - Kompatibilan je sa SGML-om

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    23

    Nedostaci XML-a (Harold & Means, 2006):

    - Sintaksa je redundantna i opirna to moe zamarati i zbunjivati osobu koja ita XML dokument.

    - Zbog opirnosti raunalni program koji obrauje dokument mora obraditi veliku koliinu podataka to e ga djelomino usporiti

    - Da bi dokument bio dovoljno dobro "samoopisan" nazivi oznaka moraju biti dovoljno precizni to dovodi do dugih naziva

    - Redundancija i velika koliina podataka stvaraju velike zahtjeve za propusnosti mree - Programi koji obrauju XML podatke su dosta sloeni jer moraju obraivati velike koliine

    ugnijeenih podataka u vie razina

    - Nedostatak formalno propisanih formata za podatke moe stvarati probleme ako sudionici u razmjeni nisu dobro opisali (npr. da li se decimalni brojevi prikazuju s decimalnom tokom ili

    zarezom)

    Postoje dvije verzije XML-a (Harold & Means, 2006):

    - XML 1.0 - XML 1.1

    XML 1.0 inicijalno je kreirana 1998. godine. Do danas je imala nekoliko malih promjena. irom je

    prihvaena os strane korisnika u svijetu te se jo i danas preporuuje za koritenje. Bazira se na

    filozofiji da je zabranjeno sve to nije dozvoljeno.

    XML 1.1 inicijalno je objavljena 2004. godine i ima odreena svojstva koja olakavaju rad programima

    na velikim raunalima. Njezin pristup je da je dozvoljeno sve to nije zabranjeno. Na takav nain

    omoguuje se koritenje svih buduih Unicode znakova koji e se bilo kada u budunosti definirati. Zbog svoje rairenosti uglavnom se jo uvijek koristi verzija XML 1.0 jer je zadovoljavajua za veinu

    korisnika. Korisnici koji imaju problema s ogranienjima verzije XML 1.0 uglavnom su ve preli na

    koritenje verzije XML 1.1.

    3.8 Alati za konstruiranje ontologija

    Brzi razvitak ontologije doveo je jednako tako i do brzog razvoja alata za kreiranje ontologija, u

    sljedeem poglavlju e biti rijei o alatima za kreiranje ontologije. Alati za kreiranje ontologije moraju

    osigurati sljedee zahtjeve:

    - Izvlaenje znanja to jest prikupljanje znanja od korisnika - Odziv: mogunost pretrage ontologija na temelju pojmova, relacija, sredstava od strane

    korisnika

    - Ureivanje - Vrednovanje

    U nastavku e biti opisani sljedei alati:

    - Protg - Altova SemanticWorks - SMORE/SWOOP

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    24

    - TopBraid Composer

    3.8.1 Protg

    Protg (http://protege.stanford.edu/) je besplatan, alat otvorenog koda za konstrukciju ontologija

    te rad s njima. Podrava dva bitna naina modeliranja ontologija putem Protg-Frames i Protg-

    OWL editora (Slika 20). Ontologije stvorene u Protg-u se mogu pohraniti u veem broju formata

    kao to su RDF(S), OWL te XML formati. Pisan je u Javi. Budui da je pisan u Javi, prenosiv je i moe se

    izvravati na svim raunalima koja imaju Java Virtual Machine. Podran je od mnogobrojne zajednice

    raznovrsnih korisnika. Koristi se za rjeavanje problema povezanim sa znanjem u podrujima kao to

    su biomedicina, obavjetajni poslovi te korporacijsko modeliranje. Nedavno je zabiljeeno vie od

    100000 registriranih Protg korisnika.

    Slika 20: Izgled korisnikog suelja Protg-a

    3.8.2 Altova SemanticWorks

    Altova SemanticWorks (http://www.altova.com/products/semanticworks/rdf_owl_editor.html) je

    alat koji omoguava veliku fleksibilnost kod stvaranja i ureivanja ontologije. Trenutno se smatra

    jednim od najboljih ontolokih alata. Alat omoguava korisniku pronai bilo koju greku u radu te ju

    je jednostavno ispraviti, alat takoer omoguava kreiranje kompleksnih ontologija te njihov vizualni

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    25

    prikaz koristei napredni sustav pomoi te intuitivan sustav kratica i ikona (Slika 21). Alat je

    primjeren i za poetnike koji posjeduju barem osnovno znanje o ontologijama. to se izbornika tie

    slian je Protg-u, provjera sintaksne i semantike ispravnosti je jednostavna, takoer ga odlikuje i

    bogat repozitorij pomoi i uputa koji omoguavaju jo bre snalaenje u ovom alatu.

    Slika 21: Izgled korisnikog suelja Altova SemanticWorks-a

    3.8.3 SMORE / SWOOP

    SMORE i SWOOP (https://code.google.com/p/swoop/) alati su alati za ureivanje ontologija koji

    korisnicima doputaju kreiranje i ureivanje ontologija koristei jednostavno suelje (Slika 22). I jedan

    i drugi alat su slini samo to SMORE ima integriranu komponentu web preglednika. Ova funkcija

    omoguava korisniku pristup internetu preko alata te samim time kreiranje ontologije na webu.

    SWOOP nudi i bogatiji skup opcija kao to su :

    - Ispravljanje pogreaka - Automatsko particiranje - Paletu upita

    Takoer je vano napomenuti da je alat otvorenog koda kojeg korisnici mogu nadograivati po

    svojim potrebama. SMORE i SWOOP su efikasni alati koji omoguavaju korisniku:

    - Opis strukture - Pregled izvornog koda - Kornjaa pregled - Strukturirani pregled klasa

  • to se tie koritenja ovi alati su malo zahtjevniji za koritenje zbog nedostatka u dizajnu korisnikog

    suelja i uputa.

    3.8.4 TopBraid Composer

    TopBraid Composer (http://www.topquadrant.com/products/TB_Composer.html

    za modeliranje i izgradnju semantikih aplikacija. Potpuno je u skladu s W3C standardima te nudi

    potpunu podrku za: razvoj, upravljanje i testiranje on

    Composer (Slika 23) prua podrku za razvoj semantikih rjeenja koja se mogu integrirati u razliite

    aplikacije i izvore podataka. Takoer se koristi za:

    - Razvoj ontolokih modela- Konfiguriranje izvornih podataka- Stvaranje semantikih web usluga- Kreiranje korisnikih suelja

    Alat prua opsenu pomo i upute koji pokrivaju teme kao to su:

    - Ureivanje ontologije i RDF podataka- Razvijanje semantikih web aplikacija- Alat za razvoj aplikacija - Rad s XML datotekama i tablicama- Razvoj Web podataka - Integracija podataka

    Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    26

    ie koritenja ovi alati su malo zahtjevniji za koritenje zbog nedostatka u dizajnu korisnikog

    Slika 22: Izgled SWOOP korisnikog suelja

    http://www.topquadrant.com/products/TB_Composer.html

    za modeliranje i izgradnju semantikih aplikacija. Potpuno je u skladu s W3C standardima te nudi

    potpunu podrku za: razvoj, upravljanje i testiranje ontologije i povezanih podataka. TopBraid

    prua podrku za razvoj semantikih rjeenja koja se mogu integrirati u razliite

    aplikacije i izvore podataka. Takoer se koristi za:

    Razvoj ontolokih modela

    Konfiguriranje izvornih podataka

    Stvaranje semantikih web usluga

    Kreiranje korisnikih suelja

    Alat prua opsenu pomo i upute koji pokrivaju teme kao to su:

    Ureivanje ontologije i RDF podataka

    Razvijanje semantikih web aplikacija

    Rad s XML datotekama i tablicama

    Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    ie koritenja ovi alati su malo zahtjevniji za koritenje zbog nedostatka u dizajnu korisnikog

    http://www.topquadrant.com/products/TB_Composer.html) je najmoniji alat

    za modeliranje i izgradnju semantikih aplikacija. Potpuno je u skladu s W3C standardima te nudi

    tologije i povezanih podataka. TopBraid

    prua podrku za razvoj semantikih rjeenja koja se mogu integrirati u razliite

  • Slika

    Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    27

    Slika 23: Izgled korisnikog suelja TopBraid-a

    Pristup oblikovanju ontoloki utemeljenog podrunog znanja

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    28

    4 Programski modul za oblikovanje ontoloki utemeljenog podrunog znanja

    Unos podrunog znanja u inteligentni tutorski sustav u ovom sluaju AC-ware Tutor kao i velika

    vremenska zahtjevnost namee se kao jedan od problema ije rjeenje bi uvelike pomoglo onima koji

    se tim problemom susreu. Kao rjeenje ovoga programa namee se potreba za koritenjem nekoliko

    programskih alata pomou kojih bi se ovaj proces automatizirao te samim time skratilo vrijeme unosa

    podrunog znanja u sustav. Vano je napomenuti da se ovaj proces za sada ne moe u potpunosti

    automatizirati upravo zbog potrebe za koritenjem razliitih alata ali se u mnogome moe ubrzati.

    Neki od programskih alata koji se mogu koristiti da bi se ovaj problem rijeio su: alat za kreiranje

    podrunog znanja CmapTools, C# kao alat u kojem e se realizirati programski modul, SQL u kojem je

    napravljena baza sustava AC-ware Tutor-a. Da bi se proces unosa podrunog znanja olakao i ubrzao

    potrebno je:

    - Osigurati spajanje na xml datoteku - Izdvojiti podatke iz xml datoteke - Sprema podataka u bazu podataka

    Spajanje na xml datoteku je potrebno iz razloga jer se na taj nain omoguava brzo iitavanje

    podrunog znanja koje je kreirano u CmapTools-u. Nakon spajanja na xml datoteku potrebno je

    izdvojiti sve podate koje tvore podruno znanje iz razloga. Nakon izdvajanja podataka potrebno je te

    izdvojene podatke unijeti u bazu podrunog znanja AC-ware Tutor-a . Realizacija ovakvog projekta je

    zahtjevna i nije izvediva odjednom te je rad na ovom projektu bilo potrebno podijeliti u nekoliko

    manjih koraka koji omoguavaju laki rad i bru realizaciju projekta. Koraci u realizaciji projekta su

    sljedei:

    - Izraditi konceptualnu mapu u nekom od alata koji to omoguavaju - Exportati konceptualnu mapu napravljenu u CmapTools-u u XML datoteku - Spojiti se na XML datoteku - Uitavanje podataka iz XML-datoteke - Izdvajanje duplih podataka - Spajanje na bazu podataka sustava - Spremanje podataka u bazu

    Za oblikovanje podrunog znanja koriten je programski alat CmapTools. Koritenje ovog alata se

    odabralo zbog jednostavnosti koritenja alata te posjedovanje suelja koje je vrlo dobro dizajnirano i

    lako za snalaenje. Jednostavnost rada i snalaenje prilikom koritenja alata omoguava i najveem

    laiku da se snae u ovom alatu, vano je napomenuti da alat prua korisniku sve to mu treba za brzo

    i jednostavno kreiranje podrunog znanja. Jo jedna prednost ovog alata i razlog koritenja je brzo

    exportanje podrunog znanja koje je grafiki prikazano u xml datoteku, bez koje nastavak rada ne bi

    bio mogu.

    IHMC CmapTools (NOVAK & CAAS, 2006) je alat razvijen na IHMC institutu (Florida Institute for

    Human and Machine Cognition) ija podruja djelatnosti obuhvaaju prezentaciju znanja u formi

    pogodnoj za raunalnu obradu, istraivanje i razvijanje standarda za razvoj semantikog Interneta -

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    29

    Interneta koji prua bogatiji i bolje povezani sadraj. IHMC CmapTools slui za izradu konceptualnih

    mapa u kojima je svaki entitet u izraenoj konceptualnoj mapi mogue dodatno pojasniti

    podatkovnom poveznicom na novu konceptualnu mapu, video, sliku ili dokument. Spremanje

    dokumenata je mogue na dva naina. Prvi nain je da se dokument spremi na vlastito raunalo, a

    drugi nain omoguava da se dokument spremi na nekom od Cmap servisa na kojima je omogueno

    dijeljenje vlastitih mapa ostalim korisnicima, ovo spremanje radi na principu da se pri svakom

    spremanju mape generira njena web stranica na nekom od servera. Takoer je dostupna i stranica

    koja omoguava pretragu svih konceptualnih mapa i njihovog sadraja. Stranicu je mogue posjetiti

    na linku: http://www.cmappers.net/. Kod spremanja vano je napomenuti da alat omoguava

    spremanje dokumenta u razliitim formatima poput: PNG, PDF, HTML, CXL, XTM/XCM, IVLM, TEXT.

    Slika 24: Korisniko suelje CmapTools-a

    Na (Slika 24) se vidi izgled korisnikog suelja CmapTools-a. Korisniko suelje koje korisniku

    omoguava izradu konceptualnih mapa izgleda malo drugaije i mogue ga je vidjeti na slici ispod.

    Slika 25: Prikaz suelja za kreiranje konceptualne mape

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    30

    Kao to je na (Slika 25) mogue vidjeti koncept se kreira dvostrukim klikom na radnu povrinu alata.

    Nakon to se kreira koncept automatski se pojavi izbornik koji omoguava ureivanje fonta teksta

    koji e biti upisan u koncept, njegovo poravnanje te jo mnoge druge opcije. Veze meu konceptima

    se dobivaju jednostavnim povlaenjem linije od jednog koncepta do drugog.

    Veina programskog modula realizirana je u programskom jeziku C#-u koji je na neki nain poveznica

    izmeu xml datoteke i baze podataka AC-ware Tutor-a. C# uzet za realizaciju programskog modula

    zbog njegove velike primjene u programiranju te omoguavanja korisniku rjeavanja i najzahtjevnijih

    problema.

    C# je najnoviji objektno orijentirani programski jezik koji je doivio razne nadogradnje i stalno se

    razvija. Nastao je i razvijao se pod vodstvom Andersa Hejlsberga i njegovih suradnika. Danas je glavni

    jezik .NET platforme koja je, pak, glavni Microsoftov adut za razvoj programske podrke. Svaki ozbiljan programer na Microsoftovoj platformi ne moe pobjei od .NET-a, a time ni od C#-a. .NET

    (dot-net) je ime najmodernije platforme koja e imati velike utjecaje na programiranje u budunosti.

    U nazivu je osnovna poruka koju nosi ova tehnologija: dostupnost u svakom trenutku na svakom

    mjestu. .NET daje realne osnove da postane osnovna platforma razvoja modernih aplikacija. Radni

    okvir .NET razvijen je sa ciljem da osigura okruenje za razvoj svih modernih aplikacija na Windows

    sustavu.

    C# je dobro opremljen za izradu Web servisa, nanovo upotrebljivih komponenti na internetu koje

    udovoljavaju otvorenim standardima. Web servisi aplikacijama omoguuju upotrebu usluga

    distribuiranih irom Weba, to pojednostavljuje razvoj i poveava ponovnu upotrebljivost koda.

    Za rad s bazom podataka AC-ware Tutor-a koriten je SQL koji je nezaobilazan programski jezik za rad

    s bazom podataka.

    Microsoft SQL (engl. Structured Query Language) je programski jezik koji je dizajniran za upravljanje podacima u relacijskim sustavima za upravljanje bazom podataka (RDBMS). Svrstavamo ga u

    neproceduralne programske jezike jer za razliku od programskog jezika C opisuje to elimo dobiti

    kao rezultat, a ne kako doi do njega. SQL ima naredbe za sveobuhvatan rad s relacijskom bazom

    podataka:

    - Kreiranje tablice - Unos podataka u tablice - Brisanje podataka iz tablica - Naredbe za definiranje baze podataka(DDL-Data Definition Language) - Naredbe za manipulaciju podacima(DML-Data Manipulation Language) - Upravljake naredbe

    4.1 Oblikovanje ontologije podrunog znanja

    U ovom poglavlju govorit emo o podrunom znanju koje je kreirano u CmapTolols-u. Podruno

    znanje koje je koriteno u ovom radu je modul komunikacije (Stankov, 2010) iz podruja inteligentnih

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    31

    tutorskih sustava. Ovaj modul je uzet kao primjer iz razloga jer je vrlo bitan u radu inteligentnog

    tutorskog sustava i vano je da ga uenici tonije studenti dobro razumiju. Modul komunikacije je

    zapravo model koji osigurava nesmetanu i ispravnu komunikaciju uenika i inteligentnog sustava.

    Jedino dobro osmiljena komunikacija i oblikovano korisniko suelje poboljava sposobnosti ovakvih

    sustava u suprotnom dobra komunikacija te samim time i uenje na ovakvim sustavima bilo bi

    komplicirano. Primjer konceptualne mape iz izraene u CmapTools-u prikazan je na sljedeoj slici

    (Slika 26).

    Slika 26: Primjer konceptualne mape kreirane u CmapTools-u

    4.2 Prikaz mape koncepata u XML datoteci

    Nakon to se u CmapTools-u napravi konceptualna mapa ona se moe exportati ili spremiti u raznim

    formatima kao to je u prethodnom poglavlju napomenuto. U narednom tekstu e biti objanjeno

    kako napraviti export konceptualne mape u xml datoteku te kako ona izgleda. Izgled ovakve xml

    datoteke je malo drugaiji nego obine xml datoteke iz razloga to alat sam generira xml datoteku pa

    ona izgleda drugaije nego ona koju kreira korisnik. Na (Slika 27) je mogue vidjeti export

    konceptualne mape kao xml datoteke.

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    32

    Slika 27: Prikaz spremanja dokumenta u CmapTools-u

    Vano je napomenuti da kod odabira formata export-a korisnik odabere XTM format. Nakon to je

    ovaj proces zavren alat alje povratnu poruku korisniku da je spremanje uspjeno zavreno. Kao to

    se moe vidjeti prilikom export-a u xml datoteku , datoteka se zapravo export-a u XTM datoteku koja

    je sadrajem zapravo XML datoteka. XTM dolazi od XML Topic Maps format.

    Poto je u prethodnom tekstu objanjeno kako dobiti xml datoteku iz CmapTools alata u narednom

    tekstu e biti prikazan izgled xml datoteke i u kratkim crtama opisan sadraj xml datoteke. Izgled xml

    datoteke moe se vidjeti na sljedeoj slici.

    Slika 28: Izgled XML datoteke

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    33

    Kao to se iz (Slika 28) vidi xml datoteka se sastoji od zaglavlja koje daje informacije o samoj xml

    datoteci kao to su: verzija xml-a te standard u kojem je xml napisan. Takoer je mogue vidjeti i id-

    ove koji omoguavaju da korisnik moe dobiti uvid u podatke kao to su koncepti i veze koji ih

    povezuju. Elementi od kojih se sastoji xlm datoteka su sljedei:

    - topicRef: referenca na glavni element - subjectIndicatorRef: referenca na indikator podruja - instanceOF: element koji ukazuje na glavnu klasu - topicMap: element konceptualne mape - topic: glavni element - baseName:ime elementa - baseNameString: ime stringa kojeg sadri - association: glavna veza, itd

    4.3 Spajanje na XML datoteku

    U prethodnom poglavlju je objanjeno kako iz CmapTools-a dobiti xml datoteku dok e u ovom

    poglavlju biti ukratko objanjeno kako se pomou C# spojiti na xml datoteku.

    Da bi se XML datoteci pristupilo preko nekog programskog jezika potrebno je znati adresu na

    korisnikovom raunalu gdje se ta datoteka nalazi. Pristupanje XML datoteci koristei programski jezik

    C# mogue je vidjeti na (Slika 29).

    Slika 29: Prikaz pristupa XML datoteci preko C#

    4.4 Uitavanje podataka iz XML-datoteke

    Nakon spajanja na XML datoteku glavni zadatak je preko programskog jezika C# izvui podatke.

    Podaci koji su potrebni za rad su:

    - Koncepti - Veze ili relacije - Trojke smislena cjelina koja se sastoji od koncepata i veza

    Da bi rad s podacima te pristup njima bio laki korist e se liste koje se definiraju na poetku

    programa te e se kasnije puniti traenim podacima. U ovom primjeru liste su koritene da bi se

    izbjeglo dupliciranje koda te da bi se poveala itljivost koda. Definiranje liste se vidi na (Slika 30).

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    34

    Slika 30: Definiranje liste u C#

    Iako je zadatak pronai koncepte, veze i trojke, koncepti i veze e se traiti preko trojki iz nekoliko

    razloga:

    - Zbog jednostavnosti dobivanja koncepata i veza iz trojki - Zbog ekonominosti to jest smanjenja potronje vremena u pisanju koda - Zbog itljivosti koda i lakeg snalaenja u kodu

    Vano je napomenuti da je aplikacija raena u Windows aplikaciji koja se zasniva na form klasi i koja

    omoguava grafiki prikaz onoga to se radi. U da bi se problem pronalaenja koncepata, veza i trojki

    uspjeno rijeio u radu su koriteni objekti:

    Button Label Listbox Tabcontrol

    Nakon pokretanja aplikacije korisnik je u mogunosti vidjeti grafiki prikaz onoga to je radio ili

    takozvanu formu.

    Slika 31: Izgled aplikacije prilikom pokretanja

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    35

    Prilikom pokretanja aplikacije (Slika 31) moe se vidjeti da se aplikacija sastoji od izbornika koji

    prilikom klika na jednu od opcija izbornika omoguava korisniku kretanje po aplikaciji i izvravanje

    onog dijela u aplikaciji koji korisnik odabere. Redoslijed izvravanja programa i prikaza rjeenja na

    zaslonu nije biran te korisnik o njemu sam odluuje ovisno o njegovim eljama i potrebama. Kako bi

    korisnik izvravanje programa mogao vidjeti na ekranu potrebno je kliknuti na botun onoga to eli

    vidjeti inae to nije mogue. Prikaz podataka omoguava listbox. Prikaz trojki mogue je vidjeti na

    (Slika 32).

    Slika 32: Prikaz trojki u C#-u

    4.5 Izdvajanje duplih podataka

    Prilikom izrade konceptualnih mapa esto se dogaa da se pojedini koncepti i veze ponavljaju vie

    puta to jest dupliciraju. U ovom koraku izrade aplikacije zadatak je izbaciti duple koncepte i veze.

    Dupli koncepti i veze se nastoje izbaciti zbog toga to se ti podaci spremaju u bazu podataka, a

    prilikom spremanja koncepata i veza u bazu podataka izdvajanjem duplih podataka nastoji se

    optimizirati zauzee baze podataka.

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    36

    Slika 33: Prikaz koncepata i veza u C#-u

    Na (Slika 33) se vidi kako izgleda kada se izdvoje koncepti i veze koji su dupli, a nakon izdvajanja

    duplih koncepata i veza dobiju se originalni koncepti i veze to se vidi na (Slika 34).

    Slika 34: Prikaz originalnih koncepata i veza u C#-u

    4.6 Spajanje na bazu AC-ware Tutora

    Nakon izdvajanja originalnih podataka potrebno je te podatke spremiti u bazu podataka. Baza

    podataka sustava je napravljena u Microsoft SQL programskom jeziku to je i ranije napomenuto.

    Prije samog spremanja podataka u bazu napraviti e se kratki uvod o koracima koji su potrebni za

    spajanje na bazu.

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    37

    Da bi se spojili na bazu potrebno je:

    - instalirati SQL programski jezik na vlastito raunalo (Slika 35)

    Slika 35: Instalacija SQL-a

    - kreirati novu konekciju te u postavkama izvor podataka(engl. Data Source) postaviti na .\R2 da bi konekcija bila mogua (Slika 36)

    Slika 36: Prikaz postavki za konekciju na bazu podataka

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    38

    - testiranje konekcije (Slika 37)

    Slika 37: Testiranje konekcije

    - preuzimanje konekcijskog stringa (Slika 38)

    Slika 38: Prikaz konekcijskog stringa

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    39

    4.7 Spremanje podataka u bazu

    Da bi bilo mogue spremanje podataka u bazu nekog sustava najprije se mora vidjeti od ega se baza

    podataka sustava sastoji, konkretno koja su imena tablica te koje podatke te tablice sadre. Baza

    podataka sustava AC-ware Tutora se sastoji od tablica (Grubii, 2012):

    Triple Link Node Attribute Area Subarea Frame

    Tablice koje su vane za ovu aplikaciju su: trojke, koncepti i trojke. Podaci koji se unose u tablicu

    koncepata i veza su:

    AuthorID SubareaID Name Inherit Description Type IsRemoved

    Vano je napomenuti da su svi podaci osim imena fiksni i unaprijed zadani dok je vrijednost imena

    zapravo vrijednost veza i koncepata koji su dobiveni iz xml datoteke te su prikazani u listboxu. Id-ovi

    koncepata i veza se automatski generiraju prilikom unosa podataka u tablicu. Kasnije se ti id-ovi

    spremaju u tablicu trojki. Pristup i manipulacija podacima radi se jednostavnim upitima koristei SQL

    naredbe pod pretpostavkom da je korisnik spojen na bazu sustava na nain koji je u prethodnom

    poglavlju objanjen.

    Da bi se podaci podatci unijeli u bazu podataka koristi se naredba INSERT dok se naredbom SELECT

    uitavaju podaci iz baze i prikazuju korisniku. Naredbom SELECT se omoguava provjera ispravnosti

    unesenih podataka te da bi se omoguio kasniji unos id-ova u bazu podataka. Napomena: prilikom

    unoenja trojki u bazu mora se paziti da se trojke dobivene preko podataka unesenih iz XML

    datoteke mogu samo jednom unijeti u bazu podataka u suprotnom programski jezik C# javlja

    pogreku.

    Prikaz podataka iz baze moe se vidjeti na (Slika 39).

  • Slika 39

    4.8 Arhitektura modula za oblikovanje znanja

    Arhitektura praktinog dijela diplomskog rada e u ovom poglavlju biti pojanjena pomou UML

    dijagrama. Osnovni UML dijagrami koji e biti prikazani su: dijagram sluajeva koritenja (engl. use

    case diagram) i dijagram klasa (engl. class diagram).

    Struktura praktinog rada ili aplikacije se vidi kroz opis sudionika i funkcionalnosti koje kori

    sudionici sustava. Jedini sudionik ovog sustava je korisnik koji moe biti

    u rad na raunalu. Korisnik moe vidjeti: koncepte i relacije te ureenje trojke koje su smislena cjelina

    koja se sastoji od veze i koncepata. Nadalje korisnik moe spremiti odreene podatke u bazu

    podataka sustava AC-ware Tutor

    Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    40

    39: Prikaz podataka iz baze sustava AC-ware Tutor-a

    modula za oblikovanje ontoloki utemeljenog podrunog

    Arhitektura praktinog dijela diplomskog rada e u ovom poglavlju biti pojanjena pomou UML

    dijagrama. Osnovni UML dijagrami koji e biti prikazani su: dijagram sluajeva koritenja (engl. use

    (engl. class diagram).

    Struktura praktinog rada ili aplikacije se vidi kroz opis sudionika i funkcionalnosti koje kori

    sudionici sustava. Jedini sudionik ovog sustava je korisnik koji moe biti svatko tko se imalo razumije

    risnik moe vidjeti: koncepte i relacije te ureenje trojke koje su smislena cjelina

    koja se sastoji od veze i koncepata. Nadalje korisnik moe spremiti odreene podatke u bazu

    ware Tutora (Slika 40).

    Slika 40: Dijagram sluajeva koritenja

    Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    ontoloki utemeljenog podrunog

    Arhitektura praktinog dijela diplomskog rada e u ovom poglavlju biti pojanjena pomou UML

    dijagrama. Osnovni UML dijagrami koji e biti prikazani su: dijagram sluajeva koritenja (engl. use

    Struktura praktinog rada ili aplikacije se vidi kroz opis sudionika i funkcionalnosti koje koriste

    svatko tko se imalo razumije

    risnik moe vidjeti: koncepte i relacije te ureenje trojke koje su smislena cjelina

    koja se sastoji od veze i koncepata. Nadalje korisnik moe spremiti odreene podatke u bazu

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    41

    Dijagram klasa predstavlja vizualnu specifikaciju objekata koji postoje u sustavu i odnose izmeu njih. Njima se mogu specificirati konceptualni i implementacijski dijelovi sustava. U ovom

    sluaju dijagram klasa (Slika 41) je takoer raen preko UML alata kao to je raen dijagram

    sluajeva koritenja.

    Slika 41: Dijagram klasa

    Model podataka sustava AC-ware Tutor moe se vidjeti na (Slika 42). Naglasak se stavlja na tablice

    koje su vane u ovom radu, a to su: koncepti (engl. Node), veze (engl. Link) te trojke (engl. Triple).

    Vanost ovih tablica je u tome to se u ove tablice zapravo sprema podruno znanje sustava AC-ware

    Tutor-a.

    Slika 42: Model podataka AC-ware Tutor-a

    Sljedei UML dijagram koji e biti obraen i opisan je dijagram redoslijeda (engl. Sequence diagram)

    koji zapravo opisuje ponaanje aplikacije koje se prikazuje kroz sinkronu razmjenu poruka te

    prikazuje redoslijed dogaaja koji se javljaju. Dijagram redoslijeda je povezan s dijagramom sluajeva

    koritenja jer se svaka funkcionalnost dijagrama sluajeva koritenja moe opisati i razraditi

  • dijagramom redoslijeda te se kae da je dijagram redoslijeda zapravo realizacija dijagrama sluajeva

    koritenja pod pretpostavkom da je dijagram sluajeva koritenja ve nacrtan.

    Na (Slika 43) se moe vidjeti realizacija dijagrama redoslijeda za funkcionalnost prikaza koncepata i

    relacija.

    Slika 43

    Na (Slika 44) se vidi realizacija dijagrama redoslijeda za funkcionalnost prikai ureene trojke.

    Slika

    Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    42

    te se kae da je dijagram redoslijeda zapravo realizacija dijagrama sluajeva

    koritenja pod pretpostavkom da je dijagram sluajeva koritenja ve nacrtan.

    se moe vidjeti realizacija dijagrama redoslijeda za funkcionalnost prikaza koncepata i

    43: Dijagram redoslijeda za prikaz koncepata i relacija

    se vidi realizacija dijagrama redoslijeda za funkcionalnost prikai ureene trojke.

    Slika 44: Dijagram redoslijeda za prikaz ureenih trojki

    Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    te se kae da je dijagram redoslijeda zapravo realizacija dijagrama sluajeva

    se moe vidjeti realizacija dijagrama redoslijeda za funkcionalnost prikaza koncepata i

    se vidi realizacija dijagrama redoslijeda za funkcionalnost prikai ureene trojke.

  • Posljednja funkcionalnost za koju je realiziran dijagram redoslijeda je spremi u bazu i

    na (Slika 45).

    Slika

    Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    43

    Posljednja funkcionalnost za koju je realiziran dijagram redoslijeda je spremi u bazu i

    Slika 45: Dijagram redoslijeda za spremi u bazu

    Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    Posljednja funkcionalnost za koju je realiziran dijagram redoslijeda je spremi u bazu i moe se vidjeti

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    44

    5 Zakljuak

    Prilikom realizacije rada pojavilo se nekoliko problema koji su na kraju uspjeno rijeeni i rad je

    priveden kraju. Prvi problem se javljao usred nedovoljno dobrog razumijevanja ontologije i

    konceptnih mapa, te je oblikovanje podrunog znanja ilo malo sporije, ali nakon odreenog

    vremena taj je problem rijeen.

    Drugi problem je bio s izvlaenjem podataka iz xml datoteke, jer je xml datoteka kreirana od strane

    programskog alata i izgleda drugaije nego kad je kreira korisnik. Da bi se podaci dobili iz xml

    datoteke korisnik mora dobro poznavati izgled dane xml datoteke, te na temelju toga dobiti neke

    zakljuke i vidjeti kako su elementi povezani s obzirom na strukturu xml datoteke i njezinu veliinu.

    Problem je to je xml datoteka jako duga i malo je tee pratiti njenu strukturu i uoiti neke

    zakonitosti. Da bi se jako brzo shvatilo kako su podaci organizirani u xml potrebno se orijentirati na

    id-ove jer jedino je tako mogue uoiti neke zakonitosti u jako kratkom roku.

    U ovom diplomskom radu bilo je potrebno koristiti razne programske alate. Bez obzira na koritenje

    raznih programskih alata potrebno je mnogo vremena da se podruno znanje oblikuje i da se podaci

    unesu u bazu podataka. Oblikovanje podrunog znanja oduzima najvie vremena i za sada ga je

    nemogue ubrzati i automatizirati, ali moda se i taj problem rijei nekim naprednim programskim

    alatom koji bi omoguio automatsku izradu podrunog znanja. U svakom sluaju aplikacija koja se

    razvijala u ovom radu ubrzava rad korisnika i smanjuje vrijeme potrebno da se podruno znanje

    prenese u neki sustav. Aplikacija omoguava automatizaciju nekih dijelova gdje je omoguena utedu

    vremena i manji napor od strane onoga koji radi podruno znanje.

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    45

    6 Literatura

    1. Damir Juri: Metode uenja ontologija-trenutno stanje i problemi, s Interneta, http://www.fer.unizg.hr/_download/repository/KvalifikacijskiIspitDamirJuric.pdf, 09.09.2013

    2. urakovi A.; Veri V.: Semantiki web, s Interneta http://www.mathos.unios.hr/~adjurako/semantickiweb/Semanti%C4%8Dki%20web.pdf,

    09.09.2013

    3. Gruber, T.R. (1993). A translation approach to portable ontology specifications. Knowlege acquisition, 5(2), pp. 199-220.

    4. Grubii, A.: Model prilagodljivoga stjecanja znanja u sustavima e-uenja, FER Zagreb, 2012

    5. Guarino N.: Formal ontology and Information systems, s Interneta, http://www.mif.vu.lt/~donatas/Vadovavimas/Temos/OntologiskaiTeisingasKoncepcinisMode

    liavimas/papildoma/Guarino98-Formal%20Ontology%20and%20Information%20Systems

    .pdf, 20.09.2013

    6. IEEE: Guide to the Software Engineering Body of Knowledge, s Interneta http://www.inf.ed.ac.uk/teaching/courses/seoc/2006_2007/resources/SWEBOK_Guide_200

    4.pdf, 20.09.2013

    7. Legg C.: Ontologije na semantikom webu, s Interneta, http://www.hkdrustvo.hr/datoteke/838/vbh/God.53(2010),br.1, 19.09.2013

    8. Matei M.: Umjetna inteligencija, s Interneta, http://www.mensa.hr/glavna/misli-21-stoljeca/479-umjetna-inteligencija-uvod, 19.09.2013

    9. Novak J. D., Caas A. J.: The Theory Underlying Concept Maps and How to Construct and Use Them. Technical Report IHMC CmapTools 2006-01 Rev 2008-01

    10. Paunovi L., Stoki A.: Uticaj ontologija na funkcionalnost web-a, s Interneta http://www.infoteh.rs.ba/rad/2012/RSS-8/RSS-8-3.pdf, 20.09.2013

    11. Pavi K.: Semantiki web, s Interneta, http://www.zemris.fer.hr/predmeti/krep/ Pavic.pdf, 09.09.2013

    12. Prcela M.: Predstavljanje ontologija na webu, s Interneta http://www.fer.unizg.hr/_download/repository/Marin_Prcela_SW.pdf, 20.09.2013

    13. Prgomet M.: Neformalni oblici prikaza znanja u Internet okruenju, s Interneta, http://www.splithorizont.com/pdf/mentalna_mapa_diplomski.pdf, 09.09.2013

    14. Programsko inenjerstvo,s Interneta, http://hr.wikipedia.org/wiki/Programsko_in%C5%BEenjerstvo, 19.09.2013

    15. Scott M. W.: XML za programere, Elliotte Rusty Harold, 2006

  • Pristup oblikovanju ontoloki utemeljenog podrunog znanja

    46

    16. Skokandi A.: Umne mape, s Interneta, http://www.cool-school.net/index.php? ucitelj=askokandic&view=221, 19.09.2013

    17. Smith B., Welty C.: Ontology: Towards a New Synthesis, s Interneta http://www.cs.vassar.edu/~weltyc/papers/fois-intro.pdf, 20.09.2013