Testni centri ECDL ECDL (European Computer Driving License), ki ga v Sloveniji imenujemo evropsko računalniško spričevalo, je standardni program usposabljanja uporabnikov, ki da zaposlenim potrebno znanje za delo s standardnimi računalniškimi programi na informatiziranem delovnem mestu, delodajalcem pa pomeni dokazilo o usposobljenosti. V Evropi je za uvajanje, usposabljanje in nadzor izvajanja ECDL pooblaščena ustanova ECDL Foundation, v Sloveniji pa je kot član CEPIŠ (Council of European Professional Informatics Societies) to pravico pridobilo Slovensko društvo INFORMATIKA. V državah Evropske unije so pri uvajanju ECDL močno angažirane srednje in visoke šole, aktivni pa so tudi različni vladni resorji. Posebej pomembno je, da velja spričevalo v več kot osemdesetih državah, ki so vključene v program ECDL. Doslej je bilo v svetu izdanih že štiri milijone indeksov, v Sloveniji okoli 3000 in podeljenih 2000 spričeval. Za testne centre ECDL so se v Sloveniji usposobile organizacije, katerih logotipi so natisnjeni na tej strani. UNIVERZA V LJUBLJANI Fakulteta za pomorstvo in promet INFORMACIJSKE TEHNOLOGIJE rV tj /ČOPA LJUDSKA UNIVERZA KOPER UNIVERSITA POPOLARE CAPODISTRIA i ji ibr, m n im i vi n,-r n hiirv.Kii Miiitmi ^Micro Te Muc h SRC sistemske integracije UPI LJUDSKA UNIVERZA ŽALEC S AT cotrrpu.£e-r-& VSEBINA UPORABNA INFORMATIKA 2005 ŠTEVILKA3 JUL/AVG/SEPT LETNIK XIII ISSN 1318-1882 B Uvodnik Andrej Kovačič: Premiki B Razprave Dejan Lavbič, Marjan Krisper: Semantika podatkov in ontologije 121 Rok Škrinjar, Mojca Indihar Štemberger, Vlado Dimovski, Mile Škerlevaj: Procesna usmerjenost - temelj za uspešnejše poslovanje 136 Aleš Groznik, Elvir Mujkič: Menedžment oskrbovalne verige v naftni industriji 146 Tomaž Turk: Analiza stroškov in koristi naložb v informatiko 153 B Poročila Cene Bavec, Massimo Manzin: Odziv študentov na predavanje prek spletne videokonference B Nove knjige B Obvestila Stellenboschka deklaracija Iz razprave na delavnici o strokovnem jeziku informatike B Koledar prireditev 170 177 178 179 179 UPORABNA INFORMATIKA ISSN 1318-1882 Ustanovitelj in izdajatelj: Slovensko društvo INFORMATIKA Vožarski pot 12 1000 Ljubljana Predstavnik Niko Schlamberger Odgovorni urednik: Andrej Kovačič Uredniški odbor: Marko Bajec, Vesna Bosilj Vukšid, Dušan Caf, Janez Grad, Jurij Jaklič, Milton Jenkins, Andrej Kovačič, Tomaž Mohorič, Katarina Puc, Vladislav Rajkovič, Heinrich Reinermann, Ivan Rozman, Niko Schlamberger, John Taylor, Ivan Vezočnik, Mirko Vintar, Tatjana VVelzer - Družovec Recenzenti prispevkov za objavo v reviji Uporabna informatika: Marko Bajec, Tomaž Banovec, Vladimir Batagelj, Marko Bohanec, Vesna Bosilj Vukšič, Dušan Caf, Srečko Devjak, Tomaž Erjavec, Matjaž Gams, Tomaž Gornik, Janez Grad, Miro Gradišar, Jože Gričar, Joszef Gyorkos, Marjan Heričko, Jurij Jaklič, Milton Jenkins, Andrej Kovačič, Iztok Lajovic, Tomaž Mohorič, Katarina Puc, Vladislav Rajkovič, Heinrich Reinermann, Ivan Rozman, Niko Schlamberger, Ivan Vezočnik, Mirko Vintar, Tatjana VVelzer - Družovec, Franc Žerdin Tehnična urednica Mira Turk Škraba Oblikovanje Bons Prelom Dušan VVeiss, Ada Poklač Tisk Prograf Naklada 7DD izvodov Naslov uredništva Slovensko društvo INFORMATIKA Uredništvo revije Uporabna informatika Vožarski pot 12,1000 Ljubljana www.drustvo-informatika.si/posta Revija izhaja četrtletno. Cena posamezne številke je 5.000 SIT. Letna naročnina za podjetja 20.000 SIT, za vsak nadaljnji izvod 14.000 SIT, za posameznike 8.000 SIT, za študente 3.500 SIT. Revijo sofinancira Ministrstvo za visoko šolstvo, znanost in tehnologijo. Revija Uporabna informatika je od številke 4/VII vključena v mednarodno bazo INSPEC. Revija Uporabna informatika je pod zaporedno številko 666 vpisana v razvid medijev, ki ga vodi Ministrstvo za kulturo. © Slovensko društvo INFORMATIKA Navodila avtorjem Revija Uporabna informatika objavlja izvirne prispevke domačih in tujih avtorjev na znanstveni, strokovni in informativni ravni. Namenjena je najširši strokovni javnosti, zato je zaželeno, da so tudi znanstveni prispevki napisani čim bolj poljudno. Članke objavljamo praviloma v slovenščini, prispevke tujih avtorjev v angleščini. Prispevki so obojestransko anonimno recenzirani. Vsak članek za rubriko Razprave mora za objavo prejeti dve pozitivni recenziji. O objavi samostojno odloča uredniški odbor. Prispevki naj bodo lektorirani, v uredništvu opravljamo samo korekturo. Po presoji se bomo posvetovali z avtorjem in članek tudi lektorirali. Prispevki za rubriko Razprave naj imajo dolžino do 40.000, prispevki za rubrike Rešitve, Poročila do 30.000, Obvestila pa do 8.000 znakov. Naslovu prispevka naj sledi ime in priimek avtorja, ustanova, kjer je zaposlen, in elektronski naslov. Članek naj ima v začetku do 10 vrstic dolg izvleček v slovenščini in angleščini, v katerem avtor opiše vsebino prispevka, dosežene rezultate raziskave. Abstract se začne s prevodom naslova v angleščino. Članku dodajte kratek avtorjev življenjepis (do 8 vrstic), v katerem poudarite predvsem delovne dosežke. Pišite v razmaku ene vrstice, brez posebnih ali poudarjenih črk, za ločilom na koncu stavka napravite samo en prazen prostor, ne uporabljajte zamika pri odstavkih. Revijo tiskamo v črno-beli tehniki s folije, zato barvne slike ali fotografije kot originali niso primerne. Objavljali tudi ne bomo slik zaslonov, razen če niso nujno potrebne za razumevanje besedila. Slike, grafikoni, organizacijske sheme ipd. naj imajo belo podlago. Po možnosti jih pošiljajte posebej, ne v datoteki z besedilom članka. Disketi z besedom priložite izpis na papirju. Prispevke pošiljajte po elektronski ali navadni pošti na naslov uredništva revije: ui@drustvo-informatika.si, Slovensko društvo INFORMATIKA, Vožarski pot 12, 1000 Ljubljana. Za dodatne informacije se obračajte na tehnično urednico Miro Turk Škraba. Po odločitvi uredniškega odbora o objavi članka bo avtor prejel pogodba, s katero bo prenesel vse materialne avtorske pravice na Slovensko društvo INFORMATIKA. Po izidu revije pa bo prejel nakazilo avtorskega honorarja po veljavnem ceniku ali po predlogu odgovornega urednika. UVODNIK Premiki In vendar se nekaj premika. Kaj in kam? Uvodnik pišem pod vtisom pravkar minulega jesenskega srečanja Združenja Manager v Rogaški Slatini. Udarna tema oz. okrogla miza srečanja je bilo sodobno upravljanje poslovnih procesov. Združenje je pred srečanjem na to temo opravilo anketo, v kateri je sodelovala skoraj četrtina članstva. Velika večina 'anketiranih vodilnih slovenskih menedžerjev (81 %) meni, da je treba poslovne procese nenehno prenavljati, s prenovo se mora ukvarjati zlasti menedžment; da je prenova domena službe za informatiko, meni le šest odstotkov menedžerjev. Med vzroki za prenovo procesov je največkrat (72 %) navedeno prilagajanje notranje organizacije zahtevam trga po hitrejši odzivnosti, sledi stroškovna racionalizacija poslovanja, uvajanje novega informacijskega sistema (22 %). Med ovire za izboljšanje poslovnih procesov sta na prvi dve mesti uvrščeni (slaba) organizacijska kultura in kadrovske težave, pomanjkljiv informacijski sistem pa predstavlja oviro po mnenju 19 % anketirancev. Zakaj namenjam toliko besed dogodku in anketi nekega “tujega ” združenja? Želim ugotoviti in primerjati stanje in trende na našem področju, na področju poslovne informatike. Leta 2001 je raziskava Inštituta za poslovno informatiko pri Ekonomski fakulteti pokazala, da kar tri četrtine slovenskih podjetij močno zaupa informacijski tehnologiji pri prenovi poslovnih procesov. Lanska anketa, opravljena na konferenci CIO, pa že kaže nekatere premike. Skoraj 60 % udeležencev konference, v večini direktorjev ali vodij služb za informatiko, ugotavlja, da je menedžment predvsem in neposredno zadolžen in odgovoren za poslovne procese organizacije, le slabih 15 % jih meni, da so za to odgovorni sami oz. njihova služba. Torej se nekaj premika tudi v pogledih informatikov. Pa še moj komentar dogodkov oz. premikov. Čeprav lahko podvomimo v zanesljivost anket, saj se v mnogih odgovorih verjetno odražajo bolj želje kot realnost, se vseeno premika. Če smo pred leti ugotavljali, da so v organizacijah za poslovne procese načelno zadolženi vsi, dejansko pa nihče, lahko sedaj zaznamo močno željo menedžmenta po obvladovanju poslovnih procesov. V preteklosti so se s procesi, razvojem, uvajanjem in vzdrževanjem programskih rešitev ukvarjali zgolj informatiki. Če so želeti informatizirati poslovanje, so morali podrobno poznati procese, pogosto so bili odgovorni tudi za njihovo prenovo. Naravni in odgovorni lastnik in ustvarjalec procesov pa je vendarle menedžment, saj so poslovni procesi konkretizacija izvajanja strategije in poslovnega modela organizacije. V poslovnih procesih organizacija udejanja poslovni model in si zagotavlja odgovore na vprašanje, kako učinkovito poslovati. Ali se s tem, ko se procesi “selijo” v menedžment, zmanjšuje pomen informatikov? Morda, morda pa počasi izgubljajo tudi odgovornost za napake in zgrešene naložbe v prenovo in informatizacijo poslovanja v preteklosti. Verjamem, da gredo premiki v pravo smer. Andrej Kovačič, odgovorni urednik POSLOVNA INFORMATIKA V SLOVENIJI 2005 VABILO K SODELOVANJU V želji raziskati stanje poslovne informatike pripravljamo na Ekonomski fakulteti v Ljubljani raziskavo o stanju poslovne informatike v Sloveniji (Poslovna informatika v Sloveniji 2005). Raziskava bo zajela srednje velika in velika podjetja, ki predstavljajo segment poslovnih subjektov, v katerem ima poslovna informatika pomembno vlogo. Anketirali bomo okoli tristo naključno izbranih podjetij. Naša želja je omogočiti sodelujočim podjetjem primerjavo stanja poslovne informatike njihovega podjetja in dejavnosti, v kateri poslujejo. Ker je poslovna informatika široko področje, bo raziskava razdeljena na tematske sklope, in sicer: Služba za informatiko, njena organiziranost, znanja informatikov in vloga službe Strateško načrtovanje informatike Naložbe v informatiko Menedžment poslovnih procesov Celovite programske rešitve (ERP) Podatkovna skladišča in podpora odločanju Elektronsko poslovanje Uporabljena informacijska tehnologija Kakovost informacij Vpliv poslovne informatike na uspešnost poslovanja Vsak sklop sestavlja niz vprašanj, ki bodo omogočila kasnejšo analizo stanja poslovne informatike in njenih tematskih delov. Raziskavo bomo izvedli s pome čjo anketarjev, ki jih bomo za to posebej usposobili. Anketiranje bo potekalo na podlagi vprašalnika, ki je bil mednarodno strokovno verificiran in tudi mednarodno primerljiv. Vljudno vabljeni k sodelovanju v raziskavi, s čimer boste pripomogli k analizi stanja poslovne informatike v Sloveniji in uspeli svoje podjetje primerjati z dejavnostjo, v kateri poslujete. Informacije: Doc. dr. Aleš Groznik, Univerza v Ljubljani, Ekonomska fakulteta, Inštitut za poslovno informatiko, Kardeljeva pl. 17, 1000 Ljubljana Tel.: 01/5303 875 Faks:01/5892 698 e-pošta: ales.groznik@ef.uni-lj.si RAZPRAVE > Semantika podatkov in ontologije Dejan Lavbič, Marjan Krisper Univerza v Ljubljani, Fakulteta za računalništvo in informatiko, Tržaška 25, 1DD0 Ljubljana {Dejan.Lavbic, Marjan.Krisper}®fri.uni-lj.si Povzetek Semantično strukturiranje, ki ga dosežemo z uporabo ontologij, se razlikuje od površinskega oblikovanja informacij, ki nam jih nudijo relacijske in XML podatkovne baze, saj mora biti pri podatkovnih bazah večina semantične vsebine zajete v uporabniških programih. Ontologije predstavljajo objektivno specifikacijo informacij za določeno domeno, kjer s predstavitvijo konceptov in medsebojnih relacij prikažemo znanje. Ta specifikacija je prvi korak pri gradnji naprednejših informacijskih sistemov, ki temeljijo na souporabi obstoječega znanja. V prispevku prikažemo stopnjo inteligence, ki so jo podatki skozi čas pridobivali, se ustavimo ter podrobneje opišemo najvišjo raven, ontologije in avtomatsko sklepanje. Predstavljena je opredelitev ontologij s filozofskega stališča in uporaba na področju računalništva in informatike, kjer omenimo jezike za opis in predstavitev ontologij. Abstract DATA SEMANTICS AND 0NT0L0GIES Semantic structuring, achieved by ontologies, differs from superficial formatting of information offered by relational and XML data-bases, because with databases the major part of semantic content is captured in application logic. Ontologies provide an objective specification of specific domain information vvhere the knovvledge is expressed by means of concepts and relations among them. This specification is the first step in building advanced information systems that are based on reusing the existing knovvledge. In the follovving paper we present the level of intelligence the data gained through time and describe its highest level in more detail: ontologies and automated reasoning. The definition of ontologies from the philosophical point of view is being presented as vvell as its practical use in the field of Computer and information Science, vvhere we emphasize languages for describing and representing ontologies. 1 Uuod Kot je na konferenci v San Franciscu leta 1999 poudaril Tim Berners Lee, idejni vodja semantičnega spleta, je prvi korak pri gradnji semantičnega spleta objava podatkov na svetovnem spletu v takšni obliki, da jih bodo računalniki razumeli [2]. Tako pridemo do semantičnega spleta, to je spleta podatkov, ki jih lahko posredno ali neposredno obdelujemo z računalniki. Osnovna ideja Tima Berners Leeja ni bila le v dostopu do spletnih strani na strežnikih, ampak v ustvarjanju medsebojnih povezav med posameznimi podatki. Svetovni splet teh medsebojnih povezav v tem trenutku nima opredeljenih, zato se je pojavila tehnologija RDF/S,1 ki je namenjena ravno zajemu teh povezav. Težava nastane pri poskusu opisovanja le-teh, saj potrebujemo dodatne metapodatke (zaradi samodejne računalniške obdelave vsebin), ki pa se v tem trenutku na svetovnem spletu ne nahajajo. Danes se soočamo z vprašanjem, kako zgraditi splet podatkov, ki bi ga lahko računalniki samodejno obdelovali. Najprej moramo spremeniti pogled na podatke. V preteklosti so bili podatki shranjeni in zaklenjeni v zaščitenih programih ter pri sami obdelavi niso igrali glavne vloge. Takšni podatki, za katere se je uveljavil izraz GIGO,2 imajo veliko pomanjkljivost v odvisnosti od njihove obdelave oz. odvisnost programske opreme od dobrih podatkov. Ker so nekateri spoznali, da takšen pristop ni pravilen, so začeli razmišljati v drugo smer. Velik uspeh je doživel internet in z njim XML3 ter v zadnjih časih zelo priljubljeni semantični splet, kjer se vedno bolj osredotočamo na podatke in ne na programe. Ključni element pri samodejni računalniški obdelavi podatkov pa je priprava »pametnejših«4 podatkov [2]. Reso urce Definition Framevvork/Schema (RDF/S) - S pomočjo Jezika RDF predstavimo semantične relacije na ravni primerkov v obliki trojčkov . Z RDF/S pa opišemo relacije na ravni koncepta ontologije, kjer določimo sprejemljive relacije za raven primerkov. /k ^ Garbage In, Garbage Out - Računalniki, v nasprotju z večino ljudi, brez vprašanj sprejmejo nesmiselne podatke, jih obdelajo in tudi vrnejo kup nesrrflselnitrpo-datkov na izhodu, če jim tega izrecno ne prepovemo v programski kodi. FS eXtensible Markup Language - Razširijivi označevalni jezik, ki predstavlja format podatkov za izmenjavo strukturiranih dokumentov v spletu. Od aplikacij neodvisni podatki; lahko jih enostavno dopolnjujemo, klasificiramo in predstavljajo del večjega informacijskega ekosistema, to je ontologiji.'^1 XML ontologije in avtomatsko sklepanje XML taksonomije in dokumenti z mešanimi slovarji XML dokumenti s posameznimi slovarji tekstovni dokumenti in zapisi v podatkovnih bazah Slika 1 Rastoča »inteligenca« v podatkih Slika 1 prikazuje stopnjo inteligence, ki so jo podatki pridobivali skozi čas. Začnemo s takšnimi, ki za nadaljnje sklepanje vsebujejo zelo malo semantičnih informacij, in končamo pri ontologijah: . Tekst in podatkovne baze (pred XML) Začetna faza, kjer so podatki pripadali določenemu programu. Inteligenca je zato bila skrita v samem programu in ne v podatkih. . XML dokumenti za določeno domeno Faza, kjer podatki v določeni problemski domeni dosežejo določeno neodvisnost od programov. Podatki so sedaj dovolj »inteligentni«, da se lahko prenašajo med različnimi programi znotraj določene problemske domene. Kot primer lahko navedemo XML standarde v zdravstvu, zavarovalništvu ali nepremičninski industriji. . Taksonomije5 in dokumenti z mešanimi slovarji Podatke lahko združimo iz različnih domen in jih tudi ustrezno klasificiramo v obliki hierarhične taksonomije. Pravzaprav lahko klasifikacijo uporabljamo za odkrivanje podatkov, enostavna razmerja med kategorijami in taksonomijo pa za povezovanje in združevanje podatkov. Podatki so v tej fazi dovolj »inteligentni«, da jih lahko enostavno odkrijemo in razumno združimo z ostalimi podatki. . Ontologije in pravila Na tej ravni lahko iz obstoječih podatkov izpeljemo nove s pomočjo logičnih pravil. Podatki so sedaj že na dovolj visoki ravni, da jih lahko 5 Sistematika, nauk o klasifikaciji, ki predstavlja segmentacijo ter ureditev elementov v razvrstitveni sistem glede na medsebojne povezave. opišemo z dejanskimi medsebojnimi povezavami in naprednimi formalizmi, s pomočjo katerih nad to »semantično algebro« izvajamo logične izračune. Takšne podatke lahko povezujemo na bolj atomarnem nivoju in izvajamo analize podatkov z majhnimi zrni. V tem primeru podatki ne predstavljajo zgolj surovine, ampak so del nekakšnega naprednega mikrokozmosa. Primer takšne predstavitve podatkov je samodejni prevod dokumenta iz enega problemskega področja v ekvivalenten (oz. čimbolj podoben) dokument v drugi problemski domeni. Ko govorimo o pogledu razvijalcev na evolucijo podatkov, si lahko na sliki 2 ogledamo vpliv podatkov na razvoj programske opreme [13]. Proceduralno programiranje je osredotočeno na funkcionalno dekorn-pozicijo opravil. Podatke so spreminjale in obvladovale procedure, kjer je veljalo, da so podatki manj pomembni od kode. Pri objektno usmerjenem razvoju se pojavijo en-kapsulacija, dedovanje in polimorfizem. Ideja o varo- proceduralno programiranje objektno usmerjen MDA Podatki so manj pomembni od kode. Podatki so enako pomembni kot koda. Podatki so bolj pomembni kot koda. 1 —i 1— —i— 1945-1970 1970-1994 1994-2000 2000-2003 2003- Slika 2: Pogled razvijalcev na podatke vanju podatkov s pomočjo rezerviranih besed in metod za dostop povzroči dvig ravni pomembnosti podatkov, tako da postanejo enakovredni metodam, ki s temi podatki manipulirajo. S prihodom XML-a, MDA-ja6 in podpore metapodatkom v času izvajanja vstopamo v obdobje, kjer podatki postajajo bolj pomembni kot sama koda. V ospredje ne prihaja zgolj sintaktična pravilnost, ampak predvsem semantična. 2 Opredelitev ontologije Ontologijo opredeljujejo besede in njihov pomen, ki se uporabljajo za opis in predstavitev znanja določenega področja. Vendar, kaj ta opredelitev sploh pomeni? Če pogledamo v ustrezne slovarje |5, 6], najdemo naslednje opredelitve: . filozofska disciplina, veja metafizike, ki obravnava osnovo, vzroke in najsplošnejše lastnosti stvarnosti, . določena teorija o naravi bitij in njihovem obstoju. Opredelitvi nakazujeta, da izraz ontologija izhaja iz filozofije. Ontologija je tako po eni strani filozofska disciplina, medtem ko se ontologija na področju računalništva in informatike ukvarja s predstavitvijo podatkov in znanja. Tudi za ontologijo na področju informatike poznamo več opredelitev: . ontologijo opredeljujejo besede in njihov pomen, ki se uporabljajo za opis in predstavitev znanja določenega področja; . ontologijo sestavljata slovarja, ki opisujeta določeno domeno in eksplicitne domneve o pomenu slovarja - specializacija konceptualizacije.7 Če si podrobneje pogledamo zgornji opredelitvi, ju lahko razdelimo na dva dela: . opis in predstavitev znanja določenega področja, . opredelitev uporabljanih besed in njihov pomen. 2.1 Opis ontologije Opisovanja znanja določenega področja se lahko lotimo v pisni ali ustni obliki, tako da poudarimo pomembnejše elemente. Če želimo opisati potovanje z letalom, ga lahko na način, ki ga prikazuje tabela 1. Ko opisujemo znanje določenega področja, opisujemo samo pomembne stvari, njihove lastnosti, medsebojne povezave in pravila, ki veljajo za to področje. Takšen opis je torej ontologija in vsebuje pojme: razred, primerek, razmerje, lastnost, vrednost in pravilo, kot je razvidno iz tabele 1. 2.2 Predstauiteu ontologije Ko ontologijo opišemo, jo moramo tudi predstaviti, kar pomeni, da jo zapišemo v obliki, ki jo lahko uporabljajo tudi drugi uporabniki.8 Opis je sestavljen iz besed in fraz v naravnem jeziku (slovenščina, angleščina, japonščina itd.) oz. uporabljamo slovar pojmov in stavke, ki predstavljajo povezavo med pojmi. Pojem Primer Razredi (splošne stvari) Letalo, letalska družba, let, razred potovanja, letališče, pilot itd. Primerki (določene stvari) Boeing 777-200LR, Airbus A340, TP121, AF1019, Air France, Lufthansa, Iberia, ekonomski, poslovni, Caracas Simon Bolivar, Bogota El Dorado, Jean-Luc Piccard itd. Razmerja: podrazred, del, primerek, ima-koncno--destinacijo, izvaja, uporablja, upravlja itd. Airbus A340 je primerek letala.Let TP121 ima končno destinacijo na letališču Caracas Simon Bolivar. Lastnosti Število sedežev, čas potovanja, razdalja, cena, opremljenost, izkušenost itd. Vrednosti 405, 10 ur 30 min, B209 km, 1B4.B00 SIT itd. Pravila IF letalo (X, 'Airbus A340') & st-sedezev (X, 405) THEN st-ekonomskih-sedezev (X, 325) [Pomen: Letalo Airbus A340 ima skupno 405 sedežev, od tega jih 325 spada v ekonomski razred.] Tabela 1: Primer enostavne ontologije na področju letalskih potovanj 6 Mo del-Driven Architecture je metodologija za razvoj programske opreme, ki sojo predlagali pri Object Management Group (OMG). Funkcionalnosti sistema določimo v modelu, ki je neodvisen od platforme (PIM), s pomočjo ustreznega jezika za modeliranje (npr. UML). Za dejansko implementacijo pa je treba model PIM prevesti v model, ki Je specifičen za izbrano platformo (PSM). 7 Način razmišljanja o delu sveta oz. ustvarjanje pojmov za abstraktne izraze. 8 To je pomembno predvsem zaradi dejstva, da je ena od ključnih lastnosti ontologij souporaba znanja med različnimi uporabniki področja, ki ga opisuje ontologija. Predstavitev ontologije tako pomeni predstavitev znanja v obliki pojmov in stavkov, kjer najprej določimo pojme (oz. jih že imamo izoblikovane v našem mentalnem modelu slovarja), kasneje pa te pojme medsebojno povežemo in tako izdelamo še poglobljeno znanje o določeni domeni. V informatiki se uporablja nekoliko bolj zapleten način predstavitve, saj moramo izdelati model, ki ga lahko programska oprema neposredno uporabi. Za predstavitev znanja tako uporabljamo razrede, primerke, razmerja, lastnosti, vrednosti in pravila, s katerimi izražamo pomen na določenem področju, pojme naravnega jezika pa uporabljamo za oznake prej omenjenih konceptov. Za predstavitev ontologije po navadi namesto naravnega jezika uporabimo logični jezik za predstavitev znanja, saj je logični jezik bolj jasno in točno izrazno sredstvo, medtem ko je naravni jezik pogosto dvoumen. Formalne jezike za predstavitev ontologij si bomo podrobneje ogledali v razdelku 8. 3 Vloga ontologij Ontologije so ključni element pri semantičnem spletu, kjer se prepleta človeško razumevanje simbolov z zmožnostjo računalniškega procesiranja. V zadnjem času se ontologije vedno bolj uporabljajo na področjih integracije inteligentnih sistemov, zbiranja informacij, elektronske trgovine in obvladovanja znanja. Razlog za vedno večjo priljubljenost leži v njihovi obljubi: »skupno razumevanje domene, ki ga lahko souporabljajo ljudje in računalniški sistemi« [8]. Uporaba ontologij na področju kognitivnih agentov9 prav tako vzbuja vedno več zanimanja, saj se potencial uporabe ontologij odpira predvsem pri medsebojni komunikaciji in mehanizmih sklepanja pri delovanju agentov v večagent-nih sistemih.10 Uporaba ontologij in podpornih orodij prinaša možnosti za izboljšanje obvladovanja znanja predvsem v večjih organizacijah. Ključni koraki pri uporabi ontologij so: . pridobivanje oz. učenje ontologij in povezovanje le-teh z velikimi količinami podatkov - zaradi prilagodljivosti mora biti ta proces avtomatiziran s pomočjo metod za luščenje informacij in procesiranje naravnega jezika; ■ shranjevanje in vzdrževanje ontologije in njenih primerkov - sprejeti je treba odločitev, v kakšni obliki bo shranjena ontologija, tako da nam je na voljo repozitorij z lastnostmi podatkovne baze in preprosti obrazci za sklepanje na podlagi elementov ontologije; » iskanje po semantično obogatenih informacijskih virih - sama predstavitev znanja in informacij ni dovolj, uporabniki ontologije morajo uporabljati in po njih povpraševati. Pojavljajo se novi načini povpraševanja, ki nam omogočajo pridobivanje znanja iz porazdeljenih virov, vse raziskave pa kon-vergirajo k semantično obogatenim iskalnikom. Pri vseh omenjenih korakih so zaradi lažjega obvladovanja ontologij potrebna orodja, ki so podrobneje predstavljena v razdelku 9. 3.1 Semantični splet Svetovni splet doživlja zelo velik uspeh, kar nakazuje število uporabnikov in dokumentov,11 ki se na njem nahajajo. Vendar ostaja dostop do informacij še vedno težaven, saj mora uporabnik vsebino najprej poiskati, nato pa še tolmačiti. Pri tem se pojavljajo vprašanja, kaj je vsebina dokumenta in kakšna je semantika samih povezav. Pri iskanju informacij na svetovnem spletu moramo tako poznati bodisi natančen naslov iskanega dokumenta, bodisi ga poiščemo s pomočjo spletnega iskalnika. Problem spletnih iskalnikov je predvsem v predstavitvi iskalne zahteve vmesniku iskanja, kasneje pa tudi predstavitev rezultatov iskanja. Tim Berners Lee je zato v začetku tega tisočletja predstavil idejo semantičnega spleta kot nadgradnjo obstoječega spleta, kjer informacije dobijo pomen, kar omogoča boljše medsebojno sodelovanje ljudi in računalnikov [2J. Moč semantičnega spleta je v združevanju tehnologij za obvladovanje znanja na področju umetne inteligence in spletnih tehnologij. Največ raziskovanja poteka na področju spletnih ontologij, saj predstavljajo način obvladovanja raznovrstnih predstavitev spletnih virov. Domenski model iz ontologije se lahko uporabi kot enotna struktura za skupno predstavitev in semantiko informacij. Prav tako se v viziji semantičnega spleta jasen pomen dialoga med oddaljenimi aplikacijami ali agenti doseže s pomočjo uporabe in s sklicevanjem na ontologije. 9 Za agenta kot entiteto velja, da je sposoben delovati v svojem okolju, deluje avtonomno - ima kontrolo nad svojim delovanjem, lahko komunicira z drugimi agenti in je zmožen zaznavanja svojega okolja. Kognitivni agent pa kot specializacija agenta ob vseh že omenjenih lastnostih deluje proaktivno in uporablja svojo lastno predstavo okolja [12j. 10 Večagentni sistem (MAS) je sestavljen iz množice agentov, ki medsebojno sodelujejo v imenu uporabnikov z različnimi cilji. 11 Trenutne statistike kažejo, da je bilo konec leta 2002 kar 320 milijonov uporabnikov interneta, svetovni splet pa vsebuje več kot 800 milijonov spletnih strani. Semantični splet je zgrajen v obliki sklada, kjer zgornje ravni nadgrajujejo spodaj ležeče, kot to prikazuje slika 3. Zaupanje f Varnost + istovetnost ) r~ Sklepanje/dokazovanje f Odločitveni model J y Višja semantika f DAML+OIL, OWL X ) Semantika f RDF/RDF shema ) _y Struktura fXML shema ) Sintaksa: podatki (XML 1 Slika 3: Sklad arhitektur semantičnega spleta Vsi jeziki semantičnega spleta na vseh ravneh uporabljajo XML sintakso, vsaj za potrebe izmenjave podatkov. Na sliki 3 lahko vidimo, da se XML nahaja na dnu sklada in ima vlogo osnovne sintakse za medsebojno izmenjavo podatkov na svetovnem spletu. Nad ravnijo XML-a se nahaja XML shema, ki omogoča strukturiranje spletnih objektov, podobno tistemu v podatkovnih bazah in je tako primerljiva s shemami podatkovnih baz. Naslednja raven je RDF/S, s katero pridobimo enostaven jezik za izražanje ontologij (pojmov, relacij in primerkov). To raven razširja DAML+OIL12 ali OWL,13 s katerima lahko veliko bolj podrobno zapišemo ontologije in uporabljamo raven RDF/S za predstavitev primerkov konstruktov ontologije. DAML+OIL in OWL oba neposredno uporabljata podatkovne tipe sheme XML. Na najvišji ravni, t. i. »spletu zaupanja«, se nahajajo metode za sklepanje in dokazovanje, ki uporabljajo samodejno dokazovanje, kot tudi varnostne ele- mente in elemente, povezane z istovetnostjo, ki so še zelo slabo raziskani in nezreli za uporabo. Na samem vrhu sklada arhitektur se nahajajo programi, ki uporabljajo vse spodaj ležeče tehnologije in jih lahko imenujemo »inteligentne aplikacije«, saj opravila opravljajo na naprednejši način in prinašajo bolj »inteligentne« storitve. 3.2 Praktični primeri ontologij Aplikacije, kjer se uporabljajo ontologije, so iz dneva v dan številčnejše in jih lahko najdemo na različnih področjih semantično obogatenih spletnih aplikacij, porazdeljenega obvladovanja znanja, luščenja informacij itd. V svetovnem spletu se ontologije uporabljajo za povezovanje vsebine v celoto, kjer se pojavljajo semantični portali,14 kot je npr. OntoVVeb,15 ki je eden najbolj razširjenih. Namen projekta je omogočiti integracijo informacij na svetovnem spletu s podporo semantični integraciji porazdeljenih virov, vpeljavo semantičnih poizvedb in navigacijskih pogledov ter ne nazadnje tudi programskim agentom omogočiti dostop do vsebine portala. Zelo veliko raziskovanja na področju ontologij poteka v medicini, kjer je najbolj razširjena ontologija GA-LEN.16 Ne samo da jo odlikuje velika izrazna moč pri zajemu bogate semantike na področja delovanja zdravnikov, ampak se ukvarja tudi z začasnimi in prostorsko razpršenimi vidiki znanja ter sklepanjem na podlagi znanja. Ena od prednosti so tudi zelo razširljiva razvojna orodja, saj uporabnikom omogočajo prilagajanje osnovne terminologije specifičnim zahtevam. Obstajajo še številne druge ontologije, kot je npr. Cyc,17 ki velja za eno največjih in najbolj popolnih splošnih baz znanja z integriranim mehanizmom sklepanja, OBO18 na področju biologije, SUMO,19 kot prav tako ena največjih formalnih ontologij v splošni rabi, DOLCE20 kot del VVonderVVeb21 in mnoge druge. 12 DARPA (Defense Advanced Research Program) Agent Markup Language - Ontology Inference Layer. Jezika, ki podpirata semantični splet in temeljita na svetovnem spletu in XML. DAML se je razvil iz programa, sponzoriranega s strani ameriške DARPA-e, O/L pa iz projekta, ki ga financira Evropska unija. Skupaj tako tvorita enega semantično najbolj izraznih jezikov za opis dokumentov na svetovnem spletu in sta podprta tudi s strani W3C konzorcija. 13 Web Ontology Language oz. Ontology Web Language je razvila skupina za spletne ontologije na konzorciju VV3C in igra vlogo naslednika DAML+OIL. OWL je v tem trenutku najbolj izrazen jezik za predstavitev znanja na področju semantičnega spleta. 14 SEAL - SEmantic portALs 15 http://OntoWeb.org 16 http://www.opengalen.org 17 http://www.opencyc.org 18 http://obo.sourceforge.net 19 Suggested Upper Merged Ontology, http://www.ontologyportal.org 20 http://www.loa-cnr.it/DOLCE.html 21 http://wonderweb.semanticweb.org/ 4 Različni pogledi na ontologije Ontologije so povezane s številnimi področji in tehnologijami. Na sliki 4 vidimo, da se pri pojmovanju ontologije razširjeni modeli ER22 in predikatna logika, s podporo odločanju, mehanizmi sklepanja in EAI,23 nahajajo bolj v zalednem delu (spodnji del slike 4), saj je na tej ravni semantika formalno določena. Drugi elementi pridejo v ospredje pri opravilih, kot so povpraševanje, pridobivanje informacij, navigacija in ne nazadnje predvsem souporaba znanja. Najprej si podrobneje poglejmo taksonomijo, ki predstavlja segmentacijo oz. klasifikacijo in ureditev elementov v razvrstitveni sistem, glede na medsebojne povezave. Slika 5 prikazuje preprost primer iz akademske sfere. Modeliranje začnimo s splošnim objektom in pojmi (oseba, tema, dokument), ki se nam za razumevanje zdijo pomembni. Vemo tudi, da sta študent in raziskovalec nekako povezana z osebo in da imamo študente na doktorskem študiju oz. doktorske študente. Za nas zanimiva tema je tudi semantika, kjer je OWL priljubljen jezik za predstavitev ontologij. To je na kratko taksonomija konceptov. Če želimo to predstavitev nadgraditi, pridemo do slovarja, kjer se ukvarjamo s terminologijo natančno ^ besedišče ^ X tematski sklopi ) (~ navigacija ) ^taksonomije ) ^^pridobivanje informadjj (souporaba (povpraševanje) (^ ontologije ^)-----► ( semantična omrežja) ^posredovanje) ^ razširjeni ER modeli ^ Q preverjanje konsistence J ^predikatna logika) Slika 4: Različni pogledi na ontologije objekt dokument semantika raziskovalec doktorski študent študent na doktorskem študiju Slika 5: Primer taksonomije in slovarja 22 Entity Relation - entiteta razmerij, ki se uporablja za prikaz relacij med dvema ali več entitetami. 23 Enterprise Application Integration - integracija aplikacij: metode, tehnike in orodja za povezovanje in uskladitev uporabniških programov in podatkov zaradi večje združljivosti. določenega področja. V našem primeru se pojavita dve fiksni povezavi, s katerima povemo, da je študent na doktorskem študiju sinonim za doktorskega študenta in da je koncept OWL podoben ontologiji. Omeniti je treba, da pri gradnji slovarja temeljimo na bibliografiji.24 Naslednji korak bi predstavljal uvedbo tematskega sklopa, prikazanega na sliki 6. Uvedemo medsebojne povezave, kot je »oseba pozna temo« in »tema je opisana v dokumentu«. Taka predstavitev se uporab- lja predvsem za navigacijo in vizualizacijo, saj lahko npr. pri pregledovanju dokumentov preprosto poiščemo še druge dokumente, ki jih je napisala neka oseba. Na tej ravni uvedemo tudi atribute, s katerimi lahko opišemo dodatne podatke o študentu na doktorskem študiju, kot je npr. telefon in mentor. Tako pridemo do preprostega primera ontologije, prikazanega na sliki 7. Nadgradnjo predstavlja predvsem hierarhija tipa »je«, s čimer opišemo dedovanje. V omenjenem primeru npr. velja, da študent na /X >^temaj............-(opisan_v)- (študentj ^ raziskovalec ^ ^ semantika J študent na doktorskem študiju j doktorski I študent -K ( sinonim ) ^ OWL ^ ^ontologija^ ^ podobno y' ^Jjj (^telefon j ^mentor) Slika 6: Primer tematskega sklopa dokument semantika ) ( QWL ) ( ontologija ) \ .....* (podobno J / raziskovalec ‘(podpodračje_odY +386 1 47 68 367 j [ Marjan Krisper ] Dejan Lavbič študent na doktorskem študiju Pravila ( T j-(opisan_v).>^ D j j ^ T {opisuje)-- ^ O |-(napiže)--»^D~|-.{opišuio)->^ T j ) ^ O |--{pozna)--»^ T j Slika 7: Primer ontologije 24 Po določeni tematiki urejen seznam del. doktorskem študiju podeduje vse lastnosti, ki jih ima raziskovalec. Prav tako to velja tudi za medsebojna razmerja, saj če oseba pozna določeno temo, potem jo pozna tudi študent. Ravno zaradi tega se koncepta OWL in ontologija pomakneta raven više, saj ni nujno, da vse, kar velja za semantiko, velja tudi za ontologijo. Da pa ne izgubimo semantičnega razmerja, dodamo relacijo, ki pravi, da je semantika podpodročje ontologije. Če je potrebno, lahko v tem primeru dodamo tudi dodatne tranzitivne povezave. V ontologiji lahko za dva koncepta zapišemo, da sta si popolnoma enaka in ne samo podobna, kot to v našem primeru velja za študenta na doktorskem študiju in doktorskega študenta. Pri modeliranju domene s pomočjo ontologij nam je na voljo tudi večkratno dedovanje. Primer je študent na doktorskem študiju, ki poleg obstoječega telefona od raziskovalca deduje še lastnost mentor. Poleg tega na ravni sklepanja dodamo tudi pravila, s pomočjo katerih lahko izpeljemo novo znanje. Na sliki/je prikazan preprost primer sklepanja, kjer za osebo, ki napiše dokument o določeni temi, velja, da ta oseba to temo pozna. Dejansko uporabo ontologij si bomo podrobneje pogledali v razdelku 9, kjer bo za predstavitev uporabljen jezik OWL, kot eden od jezikov z največjo izrazno močjo. 5 Slouar in ontologija Da bi si lažje predstavljali, kaj sploh je ontologija, poskusimo najti razliko med izrazom in predstavo. En Slika 8: Homonim “jaguar" v trikotniku pomena pogled na to je razlikovanje slovarja in ontologije. Kot primer si poglejmo izraz »jaguar«, ki lahko v realnem svetu predstavlja številne stvari [5] (glej sliko 8): . leopardu podobna črna lisasta zver, ki živi v Ameriki, « avtomobil angleške tovarne Jaguar, . kodno ime operacijskega sistema Mac OS X 10.2, . športno kolo angleške tovarne Jaguar. Slika 9 poskuša v strnjeni obliki prikazati tri komponente pomena [2] (oglišča trikotnika), ki se pojavljajo v naravnem jeziku (npr. v slovenščini). Prva komponenta v spodnjem levem kotu je izraz, ki ga sestavljajo simboli (oznake za predstavo) ali besede v slovenskem jeziku in pravila za združevanje teh izrazov v stavke. Sami po sebi nimajo pomenov, dokler jih ne povežemo z ostalima komponentama oz. ogliš-čema trikotnika, to je predstavo in stvarjo v realnem svetu. Če nas npr. nekdo vpraša, kaj pomeni izraz »D23978BMF1MB8H77E8X9TJB9D3«, verjetno ne bomo poznali odgovora, saj za nas nima pomena. V nasprotnem primeru bomo skoraj zagotovo poznali pomen izraza »avtomobil«, ker imamo predstavo o tem izrazu v realnem svetu (ima štiri kolesa, motor, porabi določeno količino goriva itd.). Ravno zaradi tega je v trikotniku (glej sliko 9) med izrazom in stvarjo v realnem svetu povezava črtkana, saj ni neposredne povezave, ker človek pri povezovanju pojmov in stvari v realnem svetu potrebuje predstavo. Slovar se v splošnem ukvarja z levo stranjo trikotnika (izrazi in predstave), medtem ko je ontologija večinoma osredotočena na desno stran (predstave in stvari v realnem svetu), kot to prikazuje slika 9. Slovar je v prvi vrsti klasifikacijski prostor v določeni domeni ali množici domen ali celo v širšem svetu, predvsem za potrebe iskanja in pridobivanja informacij. Semantika klasifikacijskega prostora je tako relativno šibka, z enostavnimi semantičnimi relacijami med izrazi, ki so strukturirani s taksonomijo relacij širši in ožji. Vse, kar moramo poznati o izrazu v slovarju, je, da se semantično razlikuje od drugih (s čimer izločimo dvoumnost) in da je širši oz. ožji pojem kot drugi. Na drugi strani želi ontologija predstaviti zapleteno semantiko predstav in relacij med predstavami, njihovimi lastnostmi, vrednostmi, omejitvami in pravili. Namen ontologije se razlikuje od namena slovarja, saj skuša ontologija zajeti in predstaviti pomen določenih domen, množice domen ali celotnega sveta, ker skuša Slika 9: Uloga slovarja in ontologije v trikotniku pomena eksplicitno simulirati razumevanje, ki ga ima človek v svojih mentalnih modelih problemske domene ali sveta. V nasprotju s slovarjem želimo pri ontologijah konceptualno semantiko izraziti čimbolj natančno, obsežno in konsistentno. B Podatkovno modeliranje in ontologije V nasprotju s podatkovnim modeliranjem je glavna prednost ontologij v neodvisnosti od programskih rešitev, saj je ontologija sestavljena iz sorazmerno splošnega znanja, ki ga lahko uporabljamo pri različnih opravilih in v različnih programih. Korak bliže konceptu ontologij je globalni konceptualni podatkovni model, ki je tudi neodvisen od programskih rešitev. Računalniška ontologija predstavlja dogovor o konceptualizaciji ter vsebuje slovar (terminov in oznak) in opredelitve konceptov ter njihove medsebojne odvisnosti v določeni domeni. Podatkovni model v nasprotju z ontologijo predstavlja strukturo in integriteto podatkovnih elementov praviloma v določenem programu, ki uporablja ta podatkovni model. Konceptualizacija in uporaba slovarja podat- kovnega modela tako ni a priori namenjena za souporabo v več različnih programih [1]. Kot primer omenimo ontologijo knjigarne, kjer npr. obstaja pravilo, ki pravi, da je vsaka knjiga določena s številko ISBN. Vsi programi, ki uporabljajo to interpretacijo ontologije knjigarne, morajo upoštevati to pravilo. Programi za podporo dela v knjigarni, ki ne predvidevajo ISBN številke za vsako knjigo, ne morejo uporabiti oz. souporabiti ontologije knjigarne. Brez tako definirane ontologije dva programa ne moreta komunicirati med seboj (ni souporabe slovarja in pravil, ki veljajo za določeno domeno, med dvema programoma). B.1 Modeliranje podatkovnih shem in ontoloških modelov Podatkovni modeli, kot so podatkovne baze ali XML sheme, določajo strukturo in integriteto podatkov. Izdelava podatkovnih modelov je v podjetju po navadi odvisna od določenih zahtev in opravil, ki morajo izvedena biti v podjetju. Semantiko podatkovnih modelov v večini primerov določajo neformalni dogovori med razvijalci in uporabniki podatkovnega modela. Najdemo jo zakodirano v programih, ki ta podatkovni model uporabljajo. V nasprotju s podatkovnimi modeli, ki so odvisni od opravil in usmerjeni k implementaciji, so ontologije že v osnovi in po opredelitvi čimbolj splošne in kar se le da neodvisne od opravil. Bolj ko se ontologija približa idealu formalnega in dogovorjenega zapisa, večja je raven souporabe. V nadaljevanju si bomo pogledali, kako (formalno izražena) pravila določene domene vplivajo na sploš-nost modeliranega znanja. Spodnji seznam predstavlja elemente, kjer se ontologije razlikujejo od podatkovnih modelov: . Nivo delovanja - Pravila problemske domene lahko zapišemo na nižji ravni, usmerjeni k implementaciji, z uporabo podatkovnih tipov, primarnih ključev itd. Na višjem nivoju pa lahko vključimo bolj abstraktna pravila, kot so popolnost, togost, identiteta, ki so neodvisna od ravni implementacije. Bolj ko so pravila o problemski domeni abstraktna, bolj so le-ta splošna in ponovno uporabljiva na več mestih. . Moč izražanja - Namen jezikov za manipulacijo s podatki, kot je SQL, je ohranitev integritete podatkov in uporaba splošnih konstruktov, kot so npr. ključi. V splošnem morajo pravila o domeni izražati ne samo integriteto podatkov, ampak tudi kon-ceptualizacijo domene. Tako mora jezik za izražanje pravil o problemskem področju vsebovati konstrukte, s katerimi lahko izrazimo druge pomenske omejitve, kot je taksonomija ali podpora sklepanju, kar najdemo npr. pri DAML+OIL in OWL. . Povezanost z uporabnikom, namenom in ciljem -Podatkovni model se zelo dobro prilega določenim ciljem in potrebam uporabnikov, ki program uporabljajo. Jasno je, da na ta račun trpi splošnost kon-ceptualizacije, ki je odvisna od granularnosti pro- cesa modeliranja, odločitev, ali določeno dejstvo modeliramo kot razred ali atribut, uporabo tipa objekta iz slovarja ali ne itd. . Razširljivost - Pri konceptualizaciji ontologije problemskega področja je pomembno, da elemente obravnavamo ločeno od problema ali opravil in tako omogočimo uporabo in razširitev slovarja v splošnih primerih, ki jih pri gradnji mogoče nismo predvideli. 7 Ravni predstavitve ontologije Ko govorimo o ontologijah, moramo razlikovati med različnimi ravnemi predstavitve. Teh razlik se moramo zavedati, saj si lahko ontologije predstavljamo kot jezike ali sintaktične slovarje, opremljene s semantiko. Ontologije predstavljajo vsebino, ki jo lahko predstavimo le z ustreznim jezikom, ki ga imenujemo jezik za predstavitev znanja. Zaradi omenjenih razlogov govorimo vsaj o naslednjih ravneh predstavitve: - o ravni predstavitve znanja, ki jo imenujemo tudi metaraven, ker je zgrajena nad predstavitvijo konceptov in jo tudi razširja; . o ravni predstavitve ontologije oz. objektni ravni predstavitve znanja, kjer se nahaja vsebina in kjer so izražene ontologije; e o ravni primerkov ontologije, kjer najdemo primerke razredov ontologij. Raven predstavitve znanja (najvišja metaraven) opredeljuje konstrukte, ki se bodo uporabljali na ravni koncepta ontologije. Ti konstrukti so razred, razmerje, primerek itd., kot je prikazano v tabeli 2. Jezike za predstavitev znanja [2] delimo na tiste, ki so nastali pred semantičnim spletom (KL-ONE, Ontolingua, Classic, LOOM, KIF,* 25 26 27 28 CycL, UML29), in jezike, ki jih povezujemo s semantičnim spletom (RDF/S, DAML + OIL, OVVL). Raven Primer konstruktov Raven predstavitve znanja (KR25) Razred, razmerje, primerek, funkcija, atribut, lastnost, omejitev, aksiom, pravilo Raven koncepta ontologije (OC26) Oseba, avto, lokacija, dogodek, financnaTransakcija, nacrtovanjePotovanja, nakupHise itd. Raven primerkov (Ol27) Dejan Lavbič, oseba312, Lanos 1.5 SE itd. Tabela 2: Ravni predstavitve antologij 25 Knowledge representation 26 Ontology concept 27 Ontology instance 28 Knovvledge interchange Format je jezik za predstavitev znanja, ki je bil razvit pred pojavom semantičnega spleta. Temelji na predikatni logiki prvega reda, v današnjem času pa obstaja standard ISO-KIF, ki podpira številne oblike, vključno z XML in konceptualnimi grafi. 29 Unified Modeling Language je jezik za specificiranje, vizualiziranje, modeliranje in dokumentacijo izdelkov pri razvoju objektno usmerjenih sistemov. UML ni omejen samo na modeliranje programske opreme, ampak se pogosto uporablja tudi na drugih področjih (npr. modeliranje poslovnih procesov, organizacijske strukture itd.). Na naslednji ravni, ravni koncepta ontologije, so ontologije, definirane z uporabo konstruktov iz ravni predstavitve znanja. Tukaj se ukvarjamo z modeliranjem generične oz. univerzalne vsebine - domenskega znanja o osebah, lokacijah, dogodkih, finančnih transakcijah itd., kot prikazuje tabela 2. Na najnižji ravni, ravni primerkov, se nahajajo konstrukti, ki so primerki konstruktov na ravni koncepta ontologije. Ta raven se ukvarja z bazo znanja oz. bazo dejstev in je sestavljena iz posameznih primerkov, kot so npr. oseba312, Lanos 1.5 SE itd. 8 Jeziki za predstavitev ontologij Na področju predstavitve znanja poznamo veliko jezikov. Eden prvih je bil KIF. To je računalniški jezik za izmenjavo znanja med različnimi programi in ima deklarativno semantiko (pomen izrazov v predstavitvi je razumljiv brez uporabe prevajalca za omenjene izraze). S svojo splošnostjo (predstavitev poljubnih stavkov v obliki predikatnega računa prvega reda) omogoča predstavitev znanja o znanju, opredelitev objektov, funkcij in relacij. Omembe vreden je tudi OKBC,30 saj je prinesel enoten model predstavitve znanja in temelji na splošni konceptualizaciji razredov, primerkov, dedovanja itd. V nadaljevanju se bomo osredotočili predvsem na jezike za predstavitev ontologij, ki so povezani s semantičnim spletom, saj se v praksi tudi najpogosteje uporabljajo. 8.1 RDF(S) RDE31 je bil razvit za potrebe opisovanja metapodat-kov virov na svetovnem spletu v obliki stavkov, dru- ^ Celje ^ osebek omreznaSkupina predikat (lastnost) predmet gih virov in lastnosti. Stavki v RDE opisujejo vire v obliki < oseba, predikat, predmet >, ki so lahko spletne strani ali dejanski objekti (osebe, organizacije itd.), kot prikazuje primer na sliki 10. Vire in lastnosti opišemo s pomočjo sheme RDE32 (RDF/S), ki RDE razširja z dodatnimi načrtovalskimi gradniki in jih pogosto najdemo pri jezikih za predstavitev ontologij: razredi, dedovanje razredov, dedovanje lastnosti, domena, obseg omejitev itd. S pomočjo sheme RDE lahko predstavimo razrede, vloge in omejitve nad vlogami, medtem ko lahko s pomočjo RDE predstavimo primerke in dejstva. V takšnem jeziku ne moremo predstaviti aksiomov in edini mehanizem sklepanja, ki nam je na voljo, temelji na obstoječih povezavah med razredi. Prednost RDF-ja je v uporabi XML-a in URI-ja,33 saj je njegov namen ponovna uporaba entitet na svetovnem spletu. 8.2 DAML+OIL DAML+OIL34 sta jezika, ki podpirata semantični splet in temeljita na svetovnem spletu in XML. DAME se je razvil iz programa, ki ga sponzorira ameriška DARPA, OIL pa iz projekta, ki ga financira Evropska unija. Skupaj tako tvorita enega semantično najbolj izraznih jezikov za opis dokumentov na svetovnem spletu in ju podpira konzorcij W3C.35 V zadnjem času se je pojavila razširitev DAML-Service36 (DAML-S), ki predstavlja množico ontologij v DAML+OIL in se ukvarja s semantiko spletnih storitev, storitev modeliranih v obliki procesov, profilov storitev, storitvenih modelov in osnov samih storitev (npr. konkretnih realizacij abstraktno definiranih komponent storitev, primerljivih z delom jezika WSDL37 za povezovanje). 03 v______________________________________/ Slika 10: Trditev RDf v obliki grafa in formalnega zapisa 30 Open Knowledge Base Connectivity 31 http://www.w3.org/RDF 32 http://www.w3.org/TR/rdf-schema 33 Uniform Resource Identifier - Splošen identifikator, ki se uporablja za razlikovanje konkretnih in abstraktnih virov na svetovnem spletu [14]. 34 http://www.daml.org/2001l03ldaml-Yoil-index.html 35 VVor/d Wide Web Consortium 36 http://www. dami. org/services/owl-s 37 Web Service Description Language 8.3 OVUL Web Ontology Language38 oz. Ontology Web Lan-guage je v tem trenutku najbolj izrazen jezik za predstavitev znanja na področju semantičnega spleta. V nasprotju z DAML + OIL je OWL nastal pod sponzorstvom W3C, ki je prvo verzijo tega jezika predstavila leta 2003. OWL ima tri ravni: OWL Lite, OWL DL (za opisno logiko) in OWL Full (glej sliko 11). Omenjene ravni predstavljajo naraščajočo stopnjo izraznosti, kjer višje ravni jezika vsebujejo nižje oz. jih razširjajo. Trditev, veljavna v OWL Lite, je še vedno veljavna v OWL DL in OWL Full. Prav tako je trditev, veljavna v OWL DL, veljavna tudi v OWL Full, vendar ne nujno v OVVL Lite. 'Celoten OVVL Npr. razred lahko obstaja kot množica j I posameznih razredov ali kot posameznik. ( (Nekoliko omejen OVVL. Npr. lastnosti ne morejo obstajati ( (samostojno. Bolj izrazne omejitve glede števnosti. ( (Enostavnejši jezik, vendar še vedno bolj izrazen kot RDF/ | (S. Na voljo le enostavne omejitve (0 ali 1) glede števnosti. | Slika 11: Ravni jezika 0WL OVVL je zgrajen na konceptih DAML + OIL, saj ima, podobno kot predhodnik, razrede (in podrazre-de), lastnosti (in podlastnosti), omejitve nad lastnostmi in primerke razredov ter lastnosti. OVVL, podobno kot DAML+OIL, za opisovanje razredov in informacij o podatkovnih tipih (iz XML sheme) uporablja konstrukte subClassOf, disjointWith in omogoča logične kombinacije izrazov nad razredi (intersectionOf, union-Of, complementOf), kot tudi razvrščanje razredov v sezname. OVVL si preprosto lahko predstavljamo kot množico RDF trojčkov, vendar le-ti uporabljajo OVVL slovar, ki jim daje v okviru OVVL jezika poseben pomen. Praktični primer uporabe jezika je predstavljen v razdelku 10. 38 http://wmv.w3.org/TR/owl-features 39 http://protege.stanford.edu/ 110 http://www.kst.stanford.edu/software/ontotingua/ 41 http://www.opencyc.org/ 42 http://oiled.man.ac.uk/ 43 http://www.ontoknowiedge.org/tools/toolrep.shtmi 9 Orodja za obvladovanje ontologij Pri razvoju, integraciji, opisovanju, shranjevanju ontologij in povpraševanju po njih lahko uporabimo številna orodja, ki so na voljo kot komercialni produkti ali plod dela akademskih skupnosti in so prosto dostopna. Če izpostavimo širino in raznolikost lastnosti, je zelo primerno orodje Protege,39 ki so ga razvili na Stanford Medical Informatics. Razvojno okolje je odprtokodna rešitev urejevalnika ontologij, katerega funkcionalnosti je mogoče razširiti s številnimi vtičniki. S stališča natančne podpore jezikom za zapis ontologije sta dobra izbira orodji Ontolingua40 in OpenCyc,41 ki prinašata visoko izrazno moč in popolno podporo specifikacijam. Med urejevalniki, ki neposredno podpirajo DAML+OIL, je zaradi močne podpore pri uporabi opisne logike uporabno orodje OilEd.42 Paket On-To-KnowIedge tool suite43 je prav tako zanimiva rešitev, sestavljena iz številnih orodij: OntoEdit, OntoShare, OntoExtract, OntoVVrapper itd. Vsako od orodij pokriva določeno funkcionalnost: od urejanja ontologij do uporabe ontologij pri souporabi znanja, polavtomatskega učenja ontologij iz naravnega jezika, luščenja strukturiranih informacij iz spletnih virov itd. Nekateri avtorji pa predlagajo uporabo UML-ja kot predstavitvenega jezika ontologij. Prednost uporabe tega jezika je v dostopnosti orodij za modeliranje, slabost pa nekoliko slabša podpora specifikacijam in s tem tudi omejena izrazna moč. Ključ pri uporabnosti orodja za organizacijo in obvladovanje ontologij leži tudi v intuitivni predstavitvi ontologije ter preprostemu obvladovanju povezovanja konceptov in relacij. Ker številni modeli omogočajo večkratno dedovanje pri hierarhičnih konceptih in relacijah, je tudi obvladovanje teh asociacij pogosto velik izziv. Po navadi se uporablja pristop pogledov v obliki drevesne strukture z zmožnostjo razširjanja in ožanja nivojev. Predstavitev v obliki grafa ni tako razširjena, čeprav je lahko zelo uporabna pri urejanju konceptov in medsebojnih relacij. Korak naprej je uporaba grafov za brskanje po ontologiji, kjer lahko povečamo podrobnosti le na določenem delu, ki nas zanima. V orodju Protege obstaja celo vtičnik Jam-balaya, s katerim lahko izvajamo grafično približevanje, kjer podrejeni koncepti ostanejo v sklopu nadrejenega, tako da se lahko prosto sprehajamo po mreži konceptov, povezanih z medsebojnimi relacijami. Ena od pomembnih lastnosti urejevalnika je tudi podpora delu z lupino odločitvenega sistema, ki nam omogoča povpraševanje po ontologiji. Kljub temu da lahko ontologije obravnavamo kot samostojne specifikacije, se navsezadnje uporabljajo tudi za iskanje odgovorov na vprašanja, ki jih vsebuje ontologija. Nekateri urejevalniki celo omogočajo uporabo dodatnih aksiomov in pravil, vendar so rešitve na tem področju implementirane različno za vsako orodje, tako da trenutno ne obstaja standardni jezik za zapis pravil in neposredne manipulacije z izrazi in strukturami v ontologiji. Eden od zelo verjetnih kandidatov, ki bo podprt v naslednjih urejevalnikih ontologij, je prav gotovo RuleML. ID Primer uporabe ontologije V tem razdelku si bomo ogledali preprost primer uporabe ontologije, v katerem bomo za predstavitev znanja uporabili jezik OVVL. Predpostavimo, da je prišlo do oboroženega ropa, kjer ropar na kraju zločina izgubi orožje in pobegne v neznano [4]. Ko na kraj zločina prispe policija, zberejo ustrezne podatke, poberejo dokaze, kjer najdejo tudi izgubljeno orožje. Poročilo je zapisano v obliki, prikazani na sliki 12. .., ... 1234-5678 Coseba />