(Ez a fordítás a W3C Magyar Irodájának megbízásából,
az
Informatikai és Hírközlési Minisztérium
támogatásával készült)
Kérjük, kövesse figyelemmel a dokumentum eredeti angol nyelvű változatára vonatkozó hibajegyzéket, mert ez normatív korrekciókat is tartalmazhat.
A dokumentumról további fordítások is rendelkezésre állnak.
Copyright © 2004W3C® (MIT, ERCIM, Keio), Minden jog fenntartva. Alkalmazandók a W3C felelősségi, védjegyoltalmi, dokumentumhasználati és szoftverlicenc előírásai.
Ez a dokumentum egy web-ontológianyelv alkalmazási területeit, céljait és követelményeit specifikálja. Az ontológia olyan kifejezések formális definíciója, amelyekkel leírható és ábrázolható valamely tématerület jellemző fogalomköre. Az ontológiákat automatikus eszközök használhatják, amelyekkel megvalósíthatunk olyan fejlett szolgáltatásokat, mint a pontos keresés a Weben, intelligens szoftver ágensek, vagy a tudásbázis-kezelés (knowledge management).
Ezt a dokumentumot a W3C Tagjai és más érdekelt résztvevők ellenőrizték, és az Igazgató W3C Ajánlásként hitelesítette. Az Ajánlás elkészítésével a W3C célja és szerepe az, hogy ráirányítsa a figyelmet a specifikációra, és elősegítse annak széles körű alkalmazását. Ez megnöveli a Web használhatóságát és javítja az együttműködést a Weben.
Ez a dokumentum annak a hat részből álló W3C Ajánlásnak egyik része, mely az OWL Web Ontológia Nyelvet szabványosítja. Ezt az Ajánlást a W3C Szemantikus Web Munkaprogramja keretében a Web Ontológia Munkacsoport dolgozta ki, és 2004. február 10. dátummal publikálta. (Lásd a Munkaprogram-nyilatkozatot és a Munkacsoport Alapszabályát.)
Az OWL konstrukciójának a dokumentumok korábbi verziójában leírt változatát jelentősen átdolgozták, s ez a konstrukció kielégíti a Munkacsoport technikai követelményeit. A Munkacsoport megvizsgálta az összes beérkezett észrevételt, és elvégezte a szükséges javításokat. A dokumentumon az Ajánlástervezet óta a jelen Ajánlás megszületéséig végrehajtott módosításokat a Változtatási napló rögzíti.
A Munkacsoport szívesen fogadja az észrevételeket a public-webont-comments@w3.org (E-mail archívum) címén, az idevágó technológiák általános vitáját pedig a www-rdf-logic@w3.org (E-mail archívum) címén folytatja.
Rendelkezésre áll egy konszignáció az ismert alkalmazásokról.
A W3C listát vezet azokról a felfedett szabadalmi igényekről is, amelyek ehhez a munkához kapcsolódnak.
Ez a szekció a dokumentumnak a publikáláskor érvényes státusát rögzíti. Más dokumentumok hatálytalaníthatják ezt a dokumentumot. A legújabb W3C publikációk listája, valamint e technikai riport utolsó kiadása megtalálható a W3C technikai riportok indexében a http://www.w3.org/TR/ alatt.
A Szemantikus Web víziója egy olyan jövőbeli Web, amelyen az információknak explicit jelentést adunk, hogy ezáltal megkönnyítsük a gépeink számára a Weben tárolt információk automatikus feldolgozását és integrálását. A Szemantikus Web az XML privát tegeket definiáló lehetőségeire [XML], valamint az RDF flexibilis adatábrázoló képességeire épít [RDF Fogalmak]. A következő elem, ami szükséges a Szemantikus Webhez, egy ontológianyelv, amellyel formálisan le tudjuk írni a webdokumentumokban használt terminológia jelentését. Ha elvárjuk a gépeinktől, hogy képesek legyenek hasznos következtetéseket levonni e dokumentumok tartalmából, akkor a leíró nyelv szemantikájának meg kell haladnia az RDF Séma alapvető szemantikáját [RDF Szókészlet].
Ez a dokumentum az OWL Web Ontológia Nyelv leírásának egyik darabja. Az OWL Áttekintés dokumentum 1.1 A javasolt olvasási sorrend szekciója bemutatja az összes többi dokumentumot. A jelen dokumentum felsorolja egy web-ontológia nyelvvel szemben támasztandó követelményeket, ahogyan azt a Munkacsoport látja. Mindazonáltal várható, hogy a jövőbeli nyelvek kiterjesztik majd az OWL-t olyan elemekkel, amelyek (egyebek között) megnövelik a logikai kifejezőképességeit, és elősegítik, hogy megszilárduljon a bizalom a Szemantikus Web iránt.
Ebben az anyagban hat alkalmazási eset bemutatásával megindokoljuk egy web-ontológia nyelv szükségességét. Ezek közül néhány olyan fejlesztéseken alapul, amelyek már folyamatban vannak az iparban és egyes kutatóhelyeken, a többi pedig hosszabb távú lehetőségeket villant fel. Az alkalmazási esetek után a Tervezési célokat ismertetjük, amelyben leírjuk a nyelv fejlesztésének főbb céljait és irányelveit. A nyelv újabb elemeire vonatkozó javaslatok kiértékelésénél ezeket a tervezési célokat tekintjük irányadónak.
A Követelmények szekciója bemutat egy sor olyan lehetőséget, amelyet feltétlenül tartalmaznia kellene a nyelvnek, és meg is indokolja, hogy miért. A Célkitűzések szekció felsorol néhány olyan elemet, amelyek sok alkalmazásnál hasznosak lehetnek ugyan, de amelyekkel nem feltétlenül foglalkozik a Munkacsoport.
A Web Ontológia Munkacsoport Alapszabálya azt a feladatot testálja a csoportra, hogy hozzon létre egy olyan, magasabb kifejezőképességű szemantikát, és specifikáljon olyan mechanizmusokat, amelyekkel a nyelv le tud írni "összetettebb viszonyokat az entitások között, beleértve: olyan elemeket, amelyekkel a számaik és típusaik tekintetében korlátozni lehet az osztályok tulajdonságait; olyan elemeket, amelyek révén kikövetkeztethető, hogy a különféle tulajdonságú entitások egy bizonyos osztálynak az egyedei; egy jól definiált modellt a tulajdonságok öröklésére, és más, hasonló szemantikai bővítéseket az alapnyelvhez képest". A web-ontológia nyelv részletes specifikációja figyelembe kívánja venni:
Egy ontológia azokat a kifejezéseket definiálja, amelyek egy tudásterület leírására és ábrázolására alkalmasak. Az ontológiákat olyan emberek, adatbázisok és alkalmazások használják, akiknek/amelyeknek egy bizonyos tudásterületen együtt kell működniük (ilyen lehet egy szűkebb tudományos, gazdasági vagy kulturális terület, mint például az orvostudomány, a szerszámgépgyártás, az ingatlangazdálkodás, a pénzügyi igazgatás stb.). Az ontológiák a tudásterület alapfogalmainak, valamint ezek összefüggéseinek géppel értelmezhető definícióit tartalmazzák (jegyezzük meg, hogy itt, és végig a dokumentumban a "definíció" kifejezést a szónak nem a technikai értelmében használjuk, ahogy a logika szakemberei értik). Az ontológiák lekódolják egy-egy terület tudásanyagát, sőt azokat a tudás-elemeket is, amelyek átívelnek ezek között, hogy ezáltal többszörösen felhasználhatóvá tegyék az ismereteket.
Az "ontológia" szót különböző strukturáltsági fokú alkotások megnevezésére használjuk. Ezek az egyszerű taxonómiáktól kezdve (mint pl. a Yahoo hierarchia), a metaadat-sémákon keresztül (mint a Dublin Core), egészen a logikai elméletekig terjedhetnek. A Szemantikus Web komoly strukturáltsági fokú ontológiákat igényel. Ezeknek specifikálniuk kell az alábbi kategóriákat:
Az ontológiákat általában egy logikán alapuló nyelven fogalmazzák meg úgy, hogy részletes, pontos, egyértelmű, megbízható és értelmes megkülönböztetéseket tehessünk osztályok, tulajdonságok és viszonyok között. Néhány ontológiai eszköz képes automatikus következtetéseket is levonni az ontológiák révén, és ezáltal fejlett szolgáltatásokat képes nyújtani olyan modern alkalmazásokhoz, mint pl. a fogalmi/szemantikai alapú keresés, a szoftver ágensek, a döntéstámogatás, a természetesnyelv-értés, a tudásbázis-kezelés, az intelligens adatbázisok és az elektronikus kereskedelem.
Az ontológiák különös jelentőséggel bírnak a kialakulóban lévő Szemantikus Web szempontjából, hiszen ezek kitűnő eszközök a dokumentumok szemantikájának ábrázolására, és annak biztosítására, hogy a web alkalmazások és az intelligens ágensek ezt a szemantikát ki is használhassák. Az ontológia igen hasznosnak bizonyulhat egy közösség számára, mint olyan módszer, amellyel sruktúrálni tudja az összegyűjtött és szabványosított meta-adat kifejezéseit, és definiálni tudja azok jelentését. Az ontológiák használatával a jövő alkalmazásai "intelligensebbek" lehetnek, abban az értelemben, hogy pontosabban dolgozhatnak az emberi fogalmak szintjén.
Az ontológiák döntő fontosságúak az olyan alkalmazások számára, amelyeknek különböző közösségek adatait végigpásztázva kell valamit megtalálniuk, vagy ilyen közösségek adatait kell egyesíteniük. Igaz ugyan, hogy az XML DTD-k (dokumentumtípus-definíciók) és az XML Sémák elegendőek arra, hogy adatokat cseréljünk olyan partnerekkel, akikkel előzőleg megállapodtunk ilyen definíciókban, azt azonban a szemantika hiánya már nem teszi lehetővé, hogy megbízhatóan végrehajtsuk ugyanezt a feladatot, pl. megváltozott XML szótárak esetén. Így aztán előfordulhat, hogy a különböző környezetekben ugyanazt a kifejezést használjuk különböző vagy pontatlan jelentéssel, vagy hogy különböző kifejezéseket használunk azonos jelentéssel. Az RDF és az RDF Séma úgy próbál közelíteni ehhez a problémához, hogy az azonosítókhoz egyszerű szemantikát rendel. Az RDF Sémával definiálhatunk olyan osztályokat, amelyek több alosztállyal és főosztállyal rendelkeznek, és definiálhatunk olyan tulajdonságokat, amelyeknek altulajdonságai, érvényességi köre és értéktartománya van. Ebben az értelemben az RDF Séma egy ontológianyelv. Ahhoz azonban, hogy biztosítsuk az együttműködést több, önállóan fejlesztett és kezelt séma között, már gazdagabb szemantikára van szükségünk. Az RDF Séma nem tudja például specifikálni, hogy az Ember és az Autó osztály diszjunkt halmazok, vagy hogy egy vonósnégyesnek pontosan négy zenész tagja van.
E dokumentum egyik célja, hogy specifikálja, mire van szükség egy web-ontológia nyelvben. Ezeket a követelményeket a várható alkalmazási területek igényei, valamint olyan általános tervezési célok motiválják, amelyek figyelembe veszik azokat a nehézségeket is, amelyek az általános ontológia fogalomnak a Web egyedülálló környezetére való alkalmazása során felmerülnek.
Az ontológiák javíthatják a meglévő web alapú alkalmazásainkat, de lehetővé teszik a Web újfajta alkalmazásait is. Ebben a szekcióban bemutatjuk az ontológiák hat reprezentatív alkalmazását. Megjegyezzük, hogy ez nem egy kimerítő lista, hanem inkább egy keresztmetszete az érdekesebb alkalmazási területeknek. Ezek az alkalmazási változatok iránymutatóul szolgáltak az OWL nyelvvel szemben támasztott követelmények megfogalmazásához (lásd a 4. szekciónál). A követelményeket annak alapján választotta ki a munkacsoport, hogy mely alkalmazásokat tekintett a legfontosabbaknak, miközben figyelembe kellett vennie az OWL alapszabályát, és más tervezési korlátokat is. Egy ilyen nyelvtől nem várható el tehát, hogy közvetlenül támogassa az alkalmazási esetek minden aspektusát.
A webportál egy olyan webhely, mely információtartalmat publikál valamilyen közös témáról, például egy adott városról, vagy egy érdeklődési területről. A portál lehetővé teszi, hogy azok az egyének, akik érdeklődnek az adott téma iránt, megtalálhassák egymást, társaloghassanak egymással, közösséget alkothassanak, és kapcsolatokat találhassanak más, hasonló témakörű webhelyekkel.
Ahhoz, hogy egy portál sikeres legyen, olyan kiindulóponttá kell válnia, amelyen keresztül érdekes tartalomhoz lehet jutni. Az ilyen tartalmat tipikusan a közösség tagjai szolgáltatják, akik gyakran indexelik is ezeket valamilyen alárendelt téma alatt. A tartalomgyűjtés másik módja arra épül, hogy a tartalmat szolgáltatók "felcímkézik" az információt, ami lehetővé teszi azok tematikus csoportosítását. Ez a címkézés tipikusan meta-tegek formájában történik, amelyek azonosítják a témát.
A témák egyszerű indexelése azonban nem nyújt elegendő lehetőséget ahhoz, hogy a közösség tagjai megtalálják mindazokat az információkat, amelyekre szükségük van. Annak érdekében, hogy lehetővé tegyék az információk intelligensebb csoportosítását, a webportálok definiálhatnak egy ontológiát a közösség számára. Ez az ontológia egyrészt terminológiát nyújthat a tartalom leírására, másrészt axiómákat bocsáthat rendelkezésre, amelyek új fogalmakat definiálhatnak az ontológia más fogalmainak felhasználásával. Például egy ontológia tartalmazhatna egy olyan terminológiát, hogy "újságcikk", "publikáció", "személy" és "szerző". Ez az ontológia tartalmazhatna olyan definíciókat, amelyek kijelentik például, hogy "minden újságcikk publikáció", vagy hogy "minden publikáció szerzője ember". Tényekkel kombinálva ezek a definíciók lehetővé teszik olyan újabb tények kikövetkeztetését, amelyek szükségszerűen igazak. Ezek a következtetések azután segítik a felhasználókat abban, hogy olyan találatokat kapjanak, amelyek nem lennének elérhetők a hagyományos kereső rendszerekkel. Egy ilyen technika arra épül, hogy a tartalomszolgáltatók a web-ontológia nyelv alkalmazásával jól hasznosítható ontológiai összefüggéseket képesek kinyerni. Az OWL egyik célja ezért éppen az, hogy egy elegendően gazdag és elegendően hasznos metaadat-tárat hozzon létre, mely motiválja a további erőfeszítéseket. Az ilyen erőfeszítések minimalizálása pedig már egy külön kihívás, tehát egy ontológianyelvnek bizonyára nagyobb jelentősége lesz, ha az információt előállító folyamatok nonintruzív elemeként meg tudja könnyíteni a meta-adatok kinyerését.
Az ontológia alapú portál egyik példája lehet az OntoWeb. Ez a portál azokat az ipari és kutatói közösségeket szolgálja, amelyek az ontológiakutatásban érdekeltek. Egy másik példa az olyan portálra, mely Szemantikus Web technológiákat használ, és jól tudna hasznosítani egy ontológianyelvet, az Open Directory Project, mely egy emberek által szerkesztett, nagy és átfogó directory a Weben. Ezt nagy tömegű önkéntes szerkesztőkből álló, globális közösség építi és tartja karban. (Az Open Directory adatbázisának RDF kódja letölthető.)
Az ontológiák arra is alkalmasak, hogy segítségükkel szemantikai annotációkkal lássuk el a képek, hangok és egyéb, nem szöveges objektumok gyűjteményeit. A gépeink számára még a természetes nyelvű szövegekből történő információszerzésnél is nehezebb feladat az értékes szemantikai tartalom kiemelése a multimédiás anyagokból. Ezért az ilyen típusú forrásokat a felirataik vagy meta-tegjeik alapján indexelik. De, minthogy különböző emberek különböző módon írják le ezeket a nem szöveges objektumokat, ezért a keresőeszközöknek túl kell lépniük az egyszerű kulcsszó-azonosításon. Ideális esetben az ontológiák többletinformációt képesek generálni az adott területről, amelyekkel eredményesebb lehet pl. a képek keresése.
A multimédia ontológiák kétféle típusba sorolhatók: vagy média-specifikusak, vagy tartalom-specifikusak. A média-specifikus ontológiák taxonómiaszerűen osztályozhatják a különböző médiatípusokat, és leírhatják a különböző médiumok tulajdonságait. Például egy videofelvételnek lehetnek olyan jellemzői, amelyek azonosítják a felvétel hosszát és a jelenetek közötti vágások helyét. A tartalom-specifikus ontológiák pedig leírhatják a forrás témáját, mint például a beállítást vagy a szereplőket. Mivel az ilyen ontológiák nem specifikusak a konkrét médiumra, ezért más olyan dokumentumok is felhasználhatják, amelyek hasonló tématerülettel foglalkoznak. Az efféle újrahasznosítás javítaná az olyan keresés eredményességét, mely egy bizonyos témára irányul, és független a forrás konkrét formátumától. Az olyan keresések, amelyeknél a médium típusa is lényeges, ott kombinálni lehetne a tartalom-specifikus és a média-specifikus ontológiát.
Egy multimédia gyűjteményre példaként képzeljünk el egy antik bútorokat ábrázoló kép-archívumot. Egy antik bútorokra vonatkozó ontológia nagyszerűen segíthetné az ilyen archívumban való keresést. Például egy taxonómia osztályozhatná a különböző bútor típusokat. Ugyancsak hasznos lehetne, ha az ontológia tárgyi tudást is ábrázolna. Így, ha az indexelő személy, mondjuk, egy antik komóddal kapcsolatban a stílus/korszak tulajdonsághoz a "késő georgiánus" értéket rendelné, ez lehetővé tenné később annak kikövetkeztetését, hogy a "készítés ideje" tulajdonság értékének valahol 1760 és 1811 között kell lennie, valamint, hogy a bútor a brit kultúrához tartozik. Az efféle háttér-információk rendelkezésre állása nagymértékben megnövelné azt a támogatást, amelyet mind az indexeléshez, mind a kereséshez nyújtani lehetne. Egy másik opció, mely szintén nagyon hasznos volna, az az "alapértelmezett tulajdonságok" ábrázolása. Például kijelenthetnénk, hogy a "késő georgiánus komódok", egyéb információ hiányában úgy tekintendők, hogy mahagóni fából készültek. Ez az ismeret döntő fontosságú lehet a valóban szemantikus kereséseknél. Egy olyan felhasználói kereső kritériumnak, mint pl. "antik mahagóni tároló bútor", találatot kellene adnia minden olyan képpel kapcsolatban, mely késő georgiánus komódot ábrázol, még akkor is, ha a kép annotációja semmit sem árul el arról, hogy milyen fából készült ez a komód.
A nagyobb cégek jelentős számú weblapot használnak olyan információk publikálására, mint sajtónyilatkozatok, áruajánlatok, esettanulmányok, ügyintézési eljárások, belső produktumismertetők és összehasonlítások, brosúrák és folyamatleírások. Az ontológiák az ilyen dokumentumok indexeléséhez és visszakereséséhez egyaránt komoly segítséget nyújthatnak. Habár sok nagy szervezetnél alkalmaznak taxonómiákat az információk szervezésére, ezek gyakran nem elegendőek. Egyetlen ontológia használhatósága általában limitált, mert az azt alkotó kategóriák a tématerületnek valószínűleg csak egyik nézetét, és egyféle részletezését ábrázolják; az a lehetőség, hogy egyidejűleg több ontológiával dolgozhatunk, megnövelheti az ábrázolás gazdagságát. Továbbá az a lehetőség, hogy különböző paraméterek értékeire kereshetünk, gyakran hasznosabb, mint a kulcsszavas keresés a taxonómiáknál.
Egy ontológia-vezérelt cégportált jól használhat
Az összes ilyen felhasználó tipikus problémája, hogy ő esetleg más terminológiát használ, mint azok, akik a keresett tartalmat megszerkesztették. Egy kereskedő lehet, hogy rosszul tudja a kívánt műszaki paraméter nevét, vagy a különböző területen dolgozó szakemberek különböző szakkifejezéseket használnak ugyanarra a fogalomra. Ilyen problémák kezelésére hasznos lenne, ha a felhasználók minden kategóriája egy külön taxonómiával rendelkezne, mely megfelel a saját szaknyelvének, és ezek a taxonómiák összekapcsolhatók lennének, hogy a fordítás automatikusan megtörténhessék.
A másik nagy probléma a lekérdezések megszerkesztése az absztrakció megfelelő szintjén. Lehetővé kellene tenni például, hogy egy projektvezető megtalálhassa azt az alkalmazottat, aki mind a Unixban, mind a Windowsban járatos.
Egy nagy szolgáltató szervezet általában nagyon sokféle kapacitással rendelkezik. Amikor azonban egy nagyobb szerződésre pályázik, ezeket új módon kellene integrálnia, de általában nincs olyan korábbi projektje, amelyik egyedül megfelelne ennek az új feladatnak. Ilyenkor azzal a kihívással találja szembe magát, hogy ki kellene következtetnie: a régebbi modelleket és dokumentumokat hogyan lehet egy új konfigurációban egyesíteni úgy, hogy megfeleljenek egy egészen más feltételcsoportnak.
Ez az alkalmazási eset az olyan, nagyobb méretű műszaki dokumentációkra vonatkozik, mint amilyeneket például a repülőgépiparban használnak. Az ilyen dokumentáció több különböző részdokumentációból állhat, mint például tervezési dokumentáció, gyártási dokumentáció és tesztelési dokumentáció. Ezeknek a különböző dokumentumoknak megvan a saját hierarchikus szerkezetük, amelyek azonban különböznek egymástól. Van néhány olyan rejtett belső "tengely" is ezekben, mely végighúzódik az összes dokumentáción (a repülőgépgyártás területén például egy olyan komponens, mint a "szárnyfőtartó" (Wing spar) megjelenik minden típusú dokumentációban).
Ontológiákat lehetne használni egy olyan információs modell építésére, mely alkalmas az adott információs tér végigkutatására az ábrázolt komponensek, a köztük lévő kapcsolatok, a komponensek tulajdonságai, valamint a linkek mentén, amelyek a dokumentációnak arra a helyére mutatnak, ahol az adott komponenst definiálják és jellemzik (vagyis azokra a külső leírásokra mutatnak, melyek kívülről igazolják az adott komponens létezését a modellben). Ez azt jelenti, hogy az ontológia és a taxonómia nem független azoktól a fizikai komponensektől, amelyeket reprezentálnak, de tandemben fejleszthetők és böngészhetők.
Egy konkrét példa az ilyen alkalmazási esetre a repülőgépipari terület dokumentációja, amelynek tipikus felhasználója lehet például:
Hogy lehetővé tegyük az ilyen alkalmazást, nagyon lényeges, hogy korlátokat tudjunk definiálni. Ezek a korlátok felhasználhatók a keresés pontosítására és az egyértelműség ellenőrzésére. A korlátozás egyik példája lehet az alábbi definíció:
biplane(X) => CardinalityOf(wing(X)) = 2 wingspar(X) AND wing(Y) AND isComponentOf(X,Y) => length(X) < length(Y)
[Ez egy nem OWL szintaxisú kijelentéslogikai példa, mely két tényt állapít meg a megadott feltételek (korlátok) alapján: 1. Ha X kétfedelű repülőgép, akkor két szárnya kell hogy legyen. 2. Ha adva van egy szárnyfőtartó (X) és egy szárny (Y), és ha a szárnyfőtartó a szárny alkatrésze, akkor a szárnyfőtartó hossza kisebb, mint a szárnyé– a ford.]
Az ilyen típusú ontológia másik tipikus alkalmazása olyan diagramok szerkesztésének és megjelenítésének a támogatása, amelyek az információs térnek egy kiragadott részét ábrázolják, és amelynek középpontjában egy adott fogalom áll (pl. egy osztály vagy egyed. Ezek tipikusan aktivitás/szabály diagramok vagy entitás-viszony diagramok).
A szemantikus Web lehetővé teszi az ágenseknek (intelligens ügynökprogramoknak), hogy megértsék és integrálják a különböző forrásokból származó információkat. Egy jellegzetes példa erre a szabadidő tevékenységet tervező ágens példája, amelyik a felhasználó preferenciáiból kiindulva (pl., hogy milyen filmeket kedvel, milyen ételeket fogyaszt szívesen) megtervezi annak esti programját. Az ilyen programok megtervezése a szolgáltató környezet ajánlatának gazdagságától és a felhasználó igényeitől függ. A szolgáltatás keresésének és ütköztetésének folyamatában a közönség és a professzionális szervezetek minősítő adatait is elemezheti az ágens, hogy a felhasználói igényeknek megfelelő találatot érjen el (pl. megvizsgálhatja a filmekre és éttermekre vonatkozó elégedettségi statisztikákat és kritikákat, hogy kiválaszthassa a "legjobb" szolgáltatást).
Az ilyen típusú ágensnek szüksége van egy ágazati ontológiára, amely az éttermek, szállodák stb. hálózatát ábrázolják, valamint szüksége van egy szolgáltatási otológiára, mely azokat a fogalmakat reprezentálja, amelyeket az egyes szolgáltatásoknál használnak. Ezek az ontológiák lehetővé teszik az alkalmazások számára olyan információk kinyerését, amelyek alapján megkülönböztethetik ezeket a szolgáltatásokat, és összepárosíthatják a felhasználói igényekkel. Az ilyen információk különböző forrásokból származhatnak: pl. portálokról, szolgáltatás-orientált weblapokról, helyfoglalási szolgáltatásoktól, vagy bárhonnan a Webről.
Az Agentcities jó példa egy olyan kezdeményezésre, mely ügynökök használatának lehetőségeit kutatja egy olyan, elosztott szolgáltatási környezetben, mely az egész Internetre kiterjed. Ez magában foglalja egy olyan ágensplatform-hálózat kiépítését, mely reális városokat (mint pl. San Francisco) virtuális városokkal ábrázol, benépesítve ezeket az ábrázolt városokban található szolgáltatásokkal. Kezdetben ezek a szolgáltatások fogyasztó-orientált (B2C) típusúak lesznek, mint pl. szállodák, éttermek, szórakoztatóipar stb., de később esetleg kiterjeszthetők az üzletközi (B2B) szolgáltatásokra is.
Mindehhez különböző ágazati és szolgáltatási ontológiákra lesz szükség; ezzel kapcsolatban az alapvető problémák a következők:
Ez a személyi számítástechnika egyik kialakulóban lévő, új paradigmája, amelynek jellemzője az átmenet a célra orientált számítógépektől a tömeges használatú számítástechnikai eszközök felé, mélyen beágyazódva a mindennapi környezetünkbe. A mobil-kooperatív számítástechnika jellemzője a kis méretű, zsebben hordható, vezeték nélküli számítógépes eszközök használata. A készülékek széles körű elterjedtsége és vezeték nélküli kommunikációs üzemmódja olyan hálózati architektúrát igényel, mely támogatja az automatikus, ad hoc hálózati konfigurálást. Egy ilyen konfigurációs módszer megvalósítását az is erősen motiválja, hogy az ilyen számítástechnikával a hétköznapi felhasználót célozzák meg (lásd mobiltelefonok).
Az igazi ad hoc hálózatok kulcstechnikája a szolgáltatások automatikus felismerése, vagyis egy olyan funkció, amellyel a szolgáltatások (amelyeket a különböző készülékek, pl. mobiltelefonok, nyomtatók, érzékelők nyújtanak) leírhatók, meghirdethetők, és más ilyen eszközök által automatikusan felfedezhetők. A jelenlegi szolgáltatás leíró/kereső mechanizmusok (mint pl. a Sun JINI rendszere vagy a Microsoft UPnP produktuma) mind ad hoc reprezentációs sémákra épülnek, és erősen függenek a szabványosítástól (ugyanis szükségük van azoknak a dolgoknak ez előzetes specifikálására, amiket a felhasználók várhatólag közölni vagy egyeztetni kívánnak egymással).
A mobil-kooperatív számítástechnika kulcskérdése (és célja) a váratlan rátaláláson alapuló kölcsönös együttműködés ("serendipitous interoperability"), azaz együttműködés "nem koreografált" körülmények között. Ez azt jelenti, hogy olyan készülékeknek, amelyeket nem terveztek arra, hogy valaha is együttműködjenek (mert különböző gyártók, különböző időpontokban, különböző célokra készítették őket), fel kell ismerniük, és ki kell használniuk egymás funkcionalitását. Nélkülözhetetlen tehát az a képesség, hogy egyik készülék "meg tudja érteni a másikat", és "rá tudjon jönni" arra, hogy az milyen szolgáltatást tud nyújtani, hiszen a teljesen kiépült, mobil-kooperatív szcenáriók több tucat (ha ugyan nem több száz) készülékre is kiterjedhetnek, és az ilyen szcenáriók előzetes szabványosítása megoldhatatlan feladat.
Az együttműködési szcenáriók dinamikus természetűek – azaz, készülékek jelennek meg és tűnnek el egyik pillanatról a másikra, amint a tulajdonosaik egyik szobából a másikba, vagy egyik épületből a másikba viszik át őket –, és a szcenáriók a (re)konfiguráláshoz nem támaszkodhatnak emberi segítségre. A szolgáltatások kölcsönös igénybevétele olyan feladatok elvégzését igényli, mint a felfedezés, a megrendelés és az összeállítás. A szolgáltatások megrendeléséhez olyan információk ábrázolására lehet szükség, amelyeket a biztonság, a privát szféra védelme és a megbízhatóság igényel, de szükség lehet olyan információk ábrázolására is, amelyek a kompenzációval összefüggő részleteket tisztázzák, hiszen egy adott szolgáltató esetleg kompenzációt vár el az általa nyújtott szolgáltatásokért. Különösen fontos cél, hogy a vállalatok vagy szervezetek biztonságpolitikáját alkalmazásfüggetlen módon lehessen kifejezni, hogy ezáltal lehetővé váljék a korlátozások érvényesítése a legkülönbözőbb védelmi mechanizmusokon keresztül (mint, pl. tűzfalak, szűrők, forgalomfigyelő rendszerek, alkalmazási szintű útvonalválasztók vagy terheléselosztók).
Ennek megfelelően egy ontológianyelvet fogunk használni olyan információk leírására, mint a készülékek jellemzői, a hozzájuk történő csatlakozás módja, a készülékek tulajdonosainak a használattal kapcsolatos politikája, valamint egyéb, olyan technikai korlátozások és követelmények leírására, amelyek befolyásolhatják a készülékek mobil-kooperatív hálózati konfigurációban való részvételét. A DAML-S-szel szemben megfogalmazott igények (különösen a nyelv kifejezőképességére vonatkozóak), és a készülék-jellemzők leírására használt RDF sémák (nevezetesen a W3C Composite Capability/Preference Profile-ja (CC/PP), és a WAP Fórum User Agent Profile-ja (UAProf)) közvetlenül kapcsolódnak ehhez az alkalmazási területhez. Vagyis kapcsolódnak ahhoz az adatforrás-infrastruktúrához, mely olyan alkalmazások támogatására szolgál, amelyek automatikus egyeztetés és dinamikus konfigurálás útján ad hoc hálózatokat építenek fel egymás között.
A tervezési célok olyan általános motivációkat fogalmaznak meg a nyelvre vonatkozóan, amelyek nem szükségszerűen következnek egyetlen konkrét alkalmazási esetből sem. Az Alkalmazási esetek mellett ezek motiválják a Követelményeket és a Célkitűzéseket, amelyeket a 4. és az 5. szekció tárgyal. A jelen szekcióban leírjuk a web-ontológia nyelv tervezésének nyolc célját, amelyek teljesülése mindenekelőtt lehetővé teszi:
Minden egyes cél megfogalmazásánál leírjuk azokat a feladatokat, amelyeket támogat, és azokat a megokoló érveket, amelyek az adott cél kitűzésének szükségességét igazolják. Összehasonlításul arra is kitérünk, hogy az RDF és az RDF Séma jelenleg milyen mértékben támogatja a tárgyalt célt.
Az ontológiáknak nyilvánosan elérhetőknek kell lenniük, és biztosítanunk kell, hogy különböző adatforrások kötődhessenek ugyanahhoz az ontológiához, ha közös a jelentésük. Ezen túlmenően lehetővé kell tennünk, hogy az ontológiák bővíthessenek más ontológiákat, és ezáltal növeljék a definíciók számát.
Támogatott feladatok:
Minden alkalmazási eset, amelyben osztott adatforrások közös terminológiát
használnak.
Igazolás:
Az együttműködő képesség biztosítása megállapodásokat igényel az azonosítók
definíciói tekintetében. Az ontológiák az azonosítók szabványos csoportjait
tartalmazhatják, és formálisan definiálhatják az ezekben lévő azonosítókat.
Azok az adatforrások, amelyek ugyanahhoz az ontológiához kötődnek, explicite
megállapodnak abban, hogy ugyanazokat az azonosítókat mindig ugyanabban a
jelentésben használják.
Néha a közös ontológiák nem bizonyulnak elégségesnek. Egy szervezet úgy találhatja, hogy egy meglévő ontológia 90%-ban fedi az igényeit, de a fennmaradó 10% kritikus. Ilyen esetekben a szervezetnek nem szükséges egy új ontológiát nulláról indulva kidolgoznia, hanem elegendő egy olyan ontológiát létrehoznia, amelyik kiegészíti a meglévő ontológiá(ka)t a kívánt azonosítókkal és definíciókkal.
RDF(S) támogatás:
Az RDF-ben minden egyes sémának megvan a maga névtere, amelyet egy URI
azonosít. A sémában minden adatforrásnak van egy azonosítója, amelyből
"globálisan egyedülálló" azonosítót lehet előállítani az azonosító és a
névtér-URI kombinálásával. Tehát minden adatforrás, amelyik ezt az URI-t
használja, ugyanarra a kifejezésre hivatkozik, amelyet ebben a sémában
definiáltak. Az RDF azonban bizonytalan az olyan kifejezések a
definíciójában, amelyeket parciálisan definiáltak több sémában. Úgy tűnik, a
specifikáció feltételezi, hogy a definíció minden olyan leírás halmazuniója,
mely ugyanazt az azonosítót használja, tekintet nélkül a forrásra. Ez azonban
problémákhoz vezethet egy elosztott környezetben, ahol egyes sémák hibás vagy
hamis definíciókat tartalmazhatnak. Az RDF-ben nincs semmilyen lehetőség
arra, hogy egy adatforrás jelezze, melyik definíció-csoporthoz kötődik.
Egy ontológia változhat az élettartama során. Ezért az adatforrásnak specifikálnia kellene annak az ontológia verziónak a számát, amelyhez kötődik.
Lényeges kérdés, hogy azok a dokumentumok, amelyek egy ontológia egyik verziójához kötődnek, kompatibilisek-e azokkal, amelyek egy másik verzióra bízták magukat. Biztosítani kell, hogy kompatibilis és inkompatibilis változatok egyaránt létezhessenek, de lehetővé kell tenni a megkülönböztetésüket. Jegyezzük meg, hogy mivel a formális leírások a legtöbb azonosítónak csak közelítő jelentést adnak, ezért egy új verziónak lehetősége van arra, hogy megváltoztassa egy azonosító eredeti jelentését anélkül, hogy változtatna a formális leírásán. Emiatt a szemantika visszamenőleges kompatibilitásának eldöntéséhez nem elegendő a kifejezések leírásának egyszerű összehasonlítása. Ilyen körülmények között az ontológia szerzőjének lehetőséget kell kapnia arra, hogy explicit módon jelezhesse az efféle változtatásokat.
Támogatott feladatok:
Minden olyan alkalmazási eset, amelyben egy ontológia potenciálisan változik,
és különösen az olyan esetek, amelyekben az ontológia tulajdonosa nem azonos
az adat szolgáltatójával.
Igazolás:
Lévén, hogy a Web folytonosan növekszik és változik, fel kell tételeznünk,
hogy az ontológiák is változni fognak. Az ontológiáknak meg kell változniuk,
ha például hibák voltak az előző verzióban, ha egy tématerületen új modell
megalkotása válik szükségessé, vagy ha egy új terminológiát kell definiálni
(mert pl. új technológiát találtak fel az adott területen). Egy web-ontológia
nyelvnek alkalmazkodnia kell az ontológiák verzió-váltásának
problematikájához. Jegyezzük meg azonban, hogy az ontológia fejlődése nem
azonos az ontológia bővítésével (ez utóbbi ugyanis nem érinti az eredeti
ontológiát).
RDF(S) támogatás:
Az RDF Séma specifikációja azt ajánlja, hogy a séma minden verziója legyen
egy-egy külön forrás (resource), saját URI azonosító alatt. Az
rdfs:subClassOf és az rdfs:subPropertyOf tulajdonságok
használhatók az osztályok és tulajdonságok új verziójának a régihez való
kapcsolására. Ennek azonban az a hátránya, hogy az inkorrekt definíciókat nem
lehet korrigálni. Tegyük fel például, hogy a séma első verziójában (v1) az
szerepel, hogy a Delfin a Hal alosztálya (v1:Dolphin rdfs:subClassOf
v1:Fish). Amikor ezt a hibát észreveszik, a séma új verziója (v2)
azt mondja: a Delfin helyesen az Emlős alosztálya (v2:Dolphin
rdfs:subClassOf v2:Mammal). Ha azonban a v2:Delfin osztályt a
v1:Delfin osztály alosztályává tesszük, akkor ezzel implicite azt is mondjuk,
hogy a v2:Delfin a v1:Hal alosztálya (v2:Dolphin rdfs:subClassOf
v1:Fish), vagyis állandósul a hiba.
Különböző ontológiák különböző módon modellezhetik ugyanazt a fogalomkört. A nyelvnek tartalmaznia kell tehát olyan elemi konstrukciókat, amelyekkel össze lehet kapcsolni a különböző reprezentációkat, lehetővé téve ezáltal, hogy az adatokat különböző ontológiákra lehessen konvertálni, és létre lehessen hozni az "ontológiák Webjét".
Támogatott feladatok:
Minden olyan alkalmazási eset, amelyben a különböző tartalomszolgáltatóktól
származó, más-más ontológiákhoz kötődő adatokat egyesíteni szükséges.
Igazolás:
Habár a közösen használt ontológiák és ontológia-kiterjesztések lehetővé
tesznek egy bizonyos fokú együttműködést a különböző szervezetek és területek
között, mégis gyakran előfordulnak olyan esetek, amikor többféle módon
valósul meg ugyanannak az információnak a modellezése. Ezek a módok a
különböző szervezetek, foglalkozási ágak, nemzetek nézőpontjának
különbözőségét tükrözhetik. Hogy a gépeink integrálni tudják az olyan
adatokat, amelyek eltérő ontológiákhoz kötődnek, szükség van olyan nyelvi
elemekre, amelyek segítségével egyik ontológia fogalmait le lehet képezni egy
másik ontológia azonos fogalmaira.
RDF(S) támogatás:
Az RDF nyújt egy minimális támogatást az ontológiák együttműködéséhez az
rdfs:subClassOf és az rdfs:subPropertyOf tulajdonság
révén.
A különböző ontológiák és adatforrások ellentmondásosak lehetnek. Garantálni kell tehát a következetlenségek felismerését.
Támogatott feladatok:
Minden olyan alkalmazási eset, amelynél az adatok decentralizálása (egy
hivatalos ellenőrző szervezet hiányában) konfliktusokhoz vezethet az
adatokban. Minden olyan ontológia kiterjesztő feladat, mely következetlen
leírásokat eredményezhet (esetleg azáltal, hogy oly módon terjeszti ki az
ontológiát, hogy az egy túlkorlátozott fogalomhoz vezet).
Igazolás:
A Web egy decentralizált háló, amelyen bárki, bármit állíthat.
Következésképpen, a különböző nézőpontok ellentmondásosak lehetnek, sőt akár
hamis információ is keletkezhet. Ha meg akarjuk védeni az ágenseket attól,
hogy inkompatibilis adatokat kombináljanak, vagy hogy inkonzisztens adatok
alapján bizonytalan állapotba kerülhessenek, nagyon fontos, hogy a
következetlenségeket időben és automatikusan detektálni lehessen.
RDF(S) támogatás:
Az RDF és az RDFS nem teszi lehetővé az inkonzisztencia kifejezését.
A nyelvnek képesnek kell lennie nagyon sokféle ismeret kifejezésére, de biztosítania kell azt is, hogy hatékonyan lehessen feldolgozni ezeket az ismereteket. Minthogy azonban e két követelmény teljesülése csak egymás rovására növelhető, ezért a web-ontológia nyelvnek meg kell találnia azt az egyensúlyt, amely mellett az ismeretek legfontosabb típusait ki tudjuk fejezni vele.
Támogatott feladatok:
Minden olyan alkalmazási eset, amelynél terjedelmes ontológiákat vagy nagy
méretű adathalmazokat használnak, és különböző ismeretek ábrázolására van
szükség.
Igazolás:
Több mint egy milliárd lapot tárolnak már a Weben, és a Szemantikus Web
várható alkalmazása a mobil-kooperatív számítástechnikában és az
ágenstechnológiában még tovább növeli azoknak az információknak a tömegét,
amelyeket kezelni szükséges. Ezért a web-ontológia nyelvnek támogatnia kell,
hogy a következtető rendszerek jól skálázhatóak legyenek. Ugyanakkor a nyelv
kifejezőképességének is olyannak kell lennie, hogy a felhasználók leírhassák
vele azt az ismeretanyagot, ami az alkalmazásaikhoz szükséges.
A kifejezőképesség meghatározza, hogy mit lehet kijelenteni az adott nyelven, és így meghatározza azt a következtető képességet és teljesítményt is, ami elvárható azoktól a rendszerektől, amelyek teljes mértékben implementálják a nyelvet. Egy jó kifejezőképességű nyelv olyan alapvető nyelvi konstrukciók gazdag választékát kínálja, melyek lehetővé teszik egy széleskörű ismeretanyag formális leírását. Egy túl alacsony kifejezőképességű nyelv viszont nem nyújt annyi következtetési lehetőséget, hogy érdemes legyen használni, tehát nem jelent többletet a meglévő nyelvekhez képest.
RDF(S) Támogatás:
Az RDF nagyon jól skálázható (az XML szintaxis kivételével, mely rendkívül
bőbeszédű), de a kifejezőképessége nem igazán nagy.
A nyelvnek csökkentenie kell az elsajátítását nehezítő korlátokat, és világos fogalmakat kell használnia egyértelmű jelentésben. A fogalmaknak függetleneknek kell lenniük a szintaxistól.
Támogatott feladatok:
Szemantikus Web dokumentumok felhasználó általi készítése és keresése akár
közvetve, akár közvetlenül.
Igazolás:
Noha ideális esetben a legtöbb felhasználót a front-end eszközök elszigetelik
a nyelvtől, a nyelv alapvető filozófiájának mégis természetesnek és könnyen
tanulhatónak kell lennie. Emellett a korai alkalmazók, az eszközfejlesztők és
az intenzív használók valószínűleg közvetlenül is dolgoznak a szintaxissal,
ami azt jelenti, hogy ember által olvasható (és írható) szintaxisra van
szükség.
RDF(S) támogatás:
Az RDF használata meglehetősen egyszerű, de az RDF Séma jóval komplexebb. Úgy
tűnik, hogy a szintaxis sokak számára komoly akadályt jelent.
A nyelvnek kompatibilisnek kell lennie más, általánosan használt Web szabványokkal és ipari normákkal. Különösen érvényes ez az XML-re és a vele kapcsolatos szabványokra (mint pl. az XML Séma és az RDF), és esetleg az olyan modellező szabványokra, mint az UML.
Támogatott feladatok:
Ontológiák és szabványos formátumú adatok cseréje.
Igazolás:
A más szabványokkal való kompatibilitás megkönnyíti a fejlesztést és a nyelv
alkalmazását.
RDF(S) támogatás:
Az RDF az XML szerializációs szintaxisát használja [RDF Szintaxis].
A nyelvnek támogatnia kell a többnyelvű ontológiákat, és várhatólag lehetővé kell majd tennie a többféle nézőpont alapján készült ontológiákat is, amelyek a különböző kultúrák sajátosságait tükrözik.
Támogatott feladatok:
Az olyan feladatok, amelyeknél ugyanazt az ontológiát használják több
országban vagy kultúrában.
Igazolás:
A Web egy nemzetközi eszköz. A Szemantikus Webnek elő kell segítenie az
eszmék és információk cseréjét a különböző kultúrák között, és ezért meg kell
könnyítenie a különböző nemzetek tagjainak az azonos ontológiák
használatát.
RDF(S) támogatás:
Amilyen mértékben az XML támogatja a nemzetközi használatot, ugyanolyan
mértékben támogatja az RDF is.
Az alkalmazási esetek és a tervezési célok megokolják azokat a követelményeket, amelyeket a web-ontológia nyelvvel szemben kell támasztanunk. A Munkacsoport jelenleg úgy véli, hogy az alább megfogalmazott követelmények lényegesek a nyelv számára. Minden egyes követelményhez tartozik egy rövid leírás és egy indoklás a fenti tervezési célok alapján.
[Az alábbi lista számozásában az "R" betű a "Requirement" (alapvető követelmény) rovidítése, megkülönböztetésül a később "O" betűvel sorszámozott "opcionális", (nem véglegesített) követelményektől – a ford.]
Az ontológiáknak olyan forrásoknak kell lenniük, amelyeknek megvan a saját, egyedülálló azonosítójuk (pl. egy URI hivatkozás formájában).
Indoka: Az ontológiák közös használata
A fogalmaknak a különböző ontológiákban eltérő, abszolút azonosítóval kell rendelkezniük (a relatív azonosítójuk azonban ugyanaz lehet). Lehetővé kell tenni, hogy egy fogalomra egy ontológiában globálisan egyedülálló azonosítóval hivatkozhassunk egy URI referencia segítségével.
Indokai: Az ontológiák közös használata; Az ontológiák együttműködése
Az ontológiáknak képeseknek kell lenniük más ontológiák explicit kiterjesztésére, hogy felhasználhassanak azokból meglévő fogalmakat, miközben ki is bővítik azokat újabb osztályokkal és tulajdonságokkal. Egy ontológia kiterjesztésnek tranzitív (áthidaló) viszonynak kell lennie: ha az A ontológia kiterjeszti B antológiát, és a B ontológia kiterjeszti a C ontológiát, akkor az A ontológia implicite kiterjeszti a C ontológiát is.
Indoka: Az ontológiák közös használata
Az adatforrások számára biztosítani kell, hogy explicit módon kötődhessenek meghatározott ontológiákhoz, pontosan megjelölve, hogy melyik definícióhalmazról (pl. melyik ontológia verzióról) van szó.
Indoka: Az ontológiák közös használata
Lehetővé kell tenni, hogy minden egyes ontológiához meta-adatokat lehessen csatolni, mint pl. a szerző neve, a publikálás dátuma stb. Ezek a jellemzők esetleg átvehetők a Dublin Core elemek halmazából, de más módon is definiálhatók.
Indoka: Az ontológiák közös használata
A nyelvnek eszközöket kell biztosítania ugyanazon ontológia két különböző verziójának egymáshoz kapcsolására és összehasonlítására. Ezen eszközöknek lehetővé kell tenniük a korábbi verzió és annak javított változata közötti asszociációt, a visszamenőleges kompatibilitás explicit kifejezhetőségét, és azt a lehetőséget, hogy elavultnak nyilváníthassunk azonosítókat (jelezvén, hogy azok csak a visszamenőleges kompatibilitás miatt maradtak az ontológiában, de új alkalmazásokhoz vagy dokumentumokhoz már nem használhatók).
Indoka: Az ontológiák fejlődése
A nyelvnek lehetővé kell tennie komplex osztálydefiníciók kifejezését. Ebbe beleértendő (legalább) az alosztályok képzése és az osztálykifejezések Boole-algebrai kombinációi (osztályok metszetének, uniójának és komplementerének képzése).
Indokai: A kifejezőképesség és skálázhatóság egyensúlya; Az ontológiák együttműködése; A következetlenségek felismerése
A nyelvnek alkalmasnak kell lennie a tulajdonságok és korlátaik kifejezésére. Ebbe minimálisan beleértendő az altulajdonságok képzése, a tulajdonságok érvényességi körének és értéktartományának korlátozása, a tulajdonságok tranzitivitása, és a fordított tulajdonság kifejezése.
Indokai: A kifejezőképesség és skálázhatóság egyensúlya; Az ontológiák együttműködése; A következetlenségek felismerése
A nyelvnek tartalmaznia kell egy sor szabványos adattípust. Ezek az adattípusok az XML Séma adattípusaira épülhetnek [XML-SCHEMA2].
A nyelv tegye lehetővé olyan állítások megfogalmazását, hogy két osztály vagy két tulajdonság egyenértékű.
Indoka: Az ontológiák együttműködése
Indoka: Az ontológiák együttműködése
A nyelv tegye lehetővé, hogy a deklarációinkat "felcímkézhessük" olyan információkkal, mint eredet, időbélyeg, megbízhatósági fok stb. Nem szükséges azonban, hogy a nyelv egy standard tulajdonsághalmazt definiáljon ehhez; inkább teremtsen egy általános mechanizmust arra, hogy a felhasználó csatolhasson ilyen információkat a deklarációihoz. Az RDF pl. tartalmaz olyan kifejezéseket, amelyek segítségével generálni lehet más RDF mondatokat. Ezt "tárgyiasításnak" (reification) nevezik. Ez esetleg az OWL címkézés megvalósításának is egy lehetséges módja lenne, habár ez az opció még az RDF környezetében is eléggé vitatott.
Indokai: Az ontológiák közös használata; Az ontológiák együttműködése
A nyelvnek támogatnia kell az osztályok és az egyedek megfelelő kezelését, annál is inkább, mivel ugyanaz a fogalom egyik tekintetben lehet osztály, egy másikban pedig egyed, attól függően, hogy a felhasználó milyen perspektívából nézi. Például egy biológiai ontológiában az Orangután osztály egyedei a különböző ilyen állatok, azonban maga az Orangután osztály is egyede egy másik osztálynak (a Fajok osztályának). Jegyezzük meg azonban, hogy az Orangutánról mégsem állíthatjuk, hogy alosztálya a Fajok osztályának, hiszen ekkor azt is állítanánk ezzel, hogy minden egyes konkrét állat az egy Faj.
Indoka: Az ontológiák együttműködése
A nyelvnek lehetőséget kell biztosítania arra, hogy specifikálhassuk a tulajdonságok kardinalitásának korlátozását. Ezek a korlátozások azt fejezik ki, hogy egy adott tulajdonsággal (relációval) egy adott osztály bármelyik egyede minimálisan, maximálisan vagy konkrétan hány más egyedhez kapcsolódhat.
Indokai: A kifejezőképesség és skálázhatóság egyensúlya; A következetlenségek felismerése
A nyelv szintaxisa alkalmazza az XML szerializációs szintaxisát. Az XML-t széles körben használják az iparban, és számtalan eszközt fejlesztettek ki az XML szintaxis feldolgozására. Ha a web-ontológia nyelvnek XML szintaxisa van, akkor ezek az eszközök kiterjeszthetők, és itt is felhasználhatók.
Indoka: Kompatibilitás más szabványokkal
Támogatni szükséges a felhasználó által megjeleníthető alternatív címkék specifikálásának lehetőségét az ontológiában szereplő források számára. Ezek, pl. arra használhatók, hogy ugyanaz az ontológia több természetes nyelven is olvasható legyen.
Indokai: Nemzetközi használhatóság; Könnyű használat
A nyelvnek támogatnia kell a többnyelvű karakterkészletek használhatóságát.
Indokai: Nemzetközi használhatóság; Kompatibilitás más szabványokkal
Néhány karakterkódban (pl. a Unicode-ban) néha előfordulnak olyan esetek, hogy két különböző karaktersorozat azonosnak látszik, és ezért a legtöbb felhasználó azt várja, hogy ezek a gépi összehasonlítás során is egyenlőnek bizonyulnak. Példa lehet erre a c-cedilla karakter esete, amelyet általában egyetlen karakterkóddal, de néha kettővel ('c' karakter + 'cedilla' karakter) jelölnek. Lévén, hogy a W3C I18N WG a korai, egyöntetű normalizálás (Unicode Normal Form C) mellett döntött, ezért minden más elgondolást alaposan meg kell indokolni.
Indokai: Nemzetközi használhatóság; Kompatibilitás más szabványokkal
Azokon a nyelvi konstrukciókon kívül, amelyekről az előző szekcióban igazoltuk, hogy benne kell lenniük a nyelvben, vannak más olyan opciók is, amelyek sok alkalmazási esetben hasznosak lennének. Ezekkel az opciókkal megpróbál foglalkozni a Munkacsoport, ha lehet, de úgy is dönthet, hogy jó oka van kihagyni ezeket a nyelvből, vagy hogy a megvalósításukat egy későbbi munkacsoportra hagyja. E célkitűzések közül néhány nincs teljes mértékben definiálva, és mint ilyenek, további tisztázást igényelnek, ha mégis fel kell venni a nyelvbe. Megjegyezzük, hogy az alábbi felsorolás sorrendje nem tükrözi sem az opciók relatív prioritását, sem az elfogadásukkal kapcsolatos konszenzus mértékét.
[Az alábbi lista számozásában az "O" betű az "Objectives" (célkitűzések) rovidítése, de felfogható az "Opció" szó rövidítéseként is, hiszen ezek még nem végleges igények, szemben a fentebb "R" betűvel jelölt "Requirement" (követelmény) szintű igényekkel – a ford.]
A nyelv támogathat különböző komplexitási szinteket az ontológiák definiálásában. A különböző alkalmazások megfelelhetnek egy bizonyos nyelvi rétegnek anélkül, hogy támogatnák a teljes nyelvet. Az egyes rétegek meghatározásának alapelvei azokon a funkciókon alapulhatnak, amelyek a különböző típusú adatbázis- és tudásbázis-rendszerekben megtalálhatók.
A nyelvnek támogatnia kell, hogy a tulajdonságoknak alapértelmezett értéket lehessen adni. Az ilyen értékek segítségével következtetetéseket lehet levonni az osztályok tipikus egyedeiről. A valódi alapértelmezett tulajdonságértékek – amilyeneket pl. az érvényteleníthető tulajdonságöröklés módszerét használó következtető rendszerek használnak [lásd alább a fordító megjegyzését ] – azonban nem monoton jellegűek, s ez problematikus lehet a Weben, ahol állandóan új információk keletkeznek, és adódnak az ontológiákhoz. Emellett, nincs is általánosan elfogadott módszer az alapértelmezett értékek kezelésére. A nyelvspecifikáció olyan alternatív megoldást ajánlhat, mely lehetővé teszi, hogy a felhasználók kialakíthassák saját alapértelmezés kezelő mechanizmusukat.
A fordító megjegyzése
Mivel a jelen dokumentum "nulladik" szintű OWL bevezetőnek is igen
alkalmas (pl. olyan magyar olvasók számára, akik csak most, a
Szemantikus Web inspirációjára kezdenek érdeklődni a tudásábrázolási és
a leíró logikai témák iránt), ezért nem lenne helyes magyarázat nélkül
átugrani a "monotonitás" fentebb megpendített, de az eredeti szövegben
nem kommentált problematikáját, hiszen ez egy elégé kardinális kérdése
a tudásábrázolásnak, ezen belül a leíró logikának (s így az OWL
nyelvnek is).
Az érvényteleníthető tulajdonságöröklés alapú következtetés (angolul
"defeasible inheritance reasoning" az un. nem-monoton logika egyik ága,
és az a lényege, hogy ha valamely osztályra alapértelmezett
tulajdonságot tételezünk fel (pl. a Madár osztályra azt, hogy "repül"),
és később olyan új információval bővül a tudásbázisunk, amelyik ezt
kétségessé teszi (pl. az, hogy a strucc is egy madár), akkor a
nem-monoton logika visszavonja, azaz érvényteleníti (a strucc egyed
esetében) ezt a tulajdonságot. Ezzel szemben a monoton logika az
információ bővülésétől, tehát a specificitás bármilyen növekedésétől
függetlenül, ugyanazokból a premisszákból mindig ugyanazokat a
következtetéseket vonja le (vagyis, a struccra is alkalmazza azt a
tulajdonságot, hogy repül). Az ilyen logikai hibákat úgy kerülhetjük
el, hogy vagy lemondunk az alapértelmezett tulajdonságokról, és monoton
logikát használunk, vagy megtartjuk az alapértelmezett tulajdonságokat,
de bevezetünk egy újabb osztályt a "nem repülő madarak" számára, és a
régi osztály egyedeit kétfelé szortírozzuk. Csakhogy, ez az eljárás
megszakítaná azt a kívánatos folyamatot a Szemantikus Weben, hogy
mindig csak hozzáteszünk a tudásbázishoz, a meglévő részeit azonban
érintetlenül hagyjuk). Ha viszont nem mondunk le az alapértelmezett
tulajdonságokról (hiszen ehhez is komoly logikai érdekek fűződnek),
akkor nem-monoton logikát kell használnunk, ám ez tudományosan még nem
teljesen tisztázott rendszer. Az OWL tudásábrázoló és következtető
rendszerét ezért egyelőre monotonként specifikálták, ami azt jelenti,
hogy rendszerszerűen nem kezeli az alapértelmezett értékeket. Az O2
célkitűzés keretében azonban az OWL lehetőséget próbál teremteni ahhoz,
hogy a felhasználó maga alakíthassa ki a saját
alapértelmezett-tulajdonság kezelő mechanizmusait (a tézis és antitézis
feloldására tehát ez lehetne a szintézis).
A Weben végbemenő változások mérete és üteme miatt a zárt világ feltételezése (ami azt mondja, hogy amit nem lehet levezetni, az hamis) nem járható út. Van azonban sok olyan szituáció, ahol a zárt világ tételezése hasznos lehet. Ezért a nyelvben lehetővé kell tenni annak kijelentését, hogy egy adott ontológia teljesnek tekintendő. Ez aztán lehetővé teszi további érvényes következtetések levonását az ilyen ontológiából. Egy efféle deklaráció pontos szemantikáját (és a segítségével levonható következtetések halmazát) még definiálni szükséges. A zártság deklarációjánál mindenesetre szóba jöhet például a véglegesség feltételezése az egyedek tulajdonságai, az osztályhoz való tartozásuk, vagy az alosztályaik száma tekintetében.
Indokai: Az ontológiák közös használata; A következetlenségek felismerése
A nyelvnek támogatnia kell a tulajdonságok értéktartományának deklarálhatóságát. Ez a mechanizmus kölcsönvehető az XML Séma adattípusaiból [XML-SCHEMA2].
Indoka: A következetlenségek felismerése
A nyelv támogathatja az osztályokra és tulajdonságokra vonatkozó állításoknál a tulajdonságok kompozícióját. Példa lehet erre annak a kijelentése, hogy a "nagybácsija" tulajdonság ugyanaz, mint az "apja" "fivére" kompozíció.
A nyelvnek eldönthetőnek kell lennie. [Ez azt a követelményt takarja, hogy az OWL nyelven készült ontológiából minden konklúzió garantáltan levezethető, és ez a levezetés véges időn belül be is fejeződik – a ford.]
A nyelvnek lehetővé kell tennie az adatforrások kötődését az ontológiák részeihez is ugyanúgy, mint az ontológia egészéhez. Nem világos azonban, hogy milyen granularitás alkalmazható az ilyen részek meghatározásánál. Dönthetünk úgy, hogy a fogalmak egy részhalmazát választjuk ki, azok teljes definíció-készletével, de választhatunk egy-egy önálló definíciót is. Megjegyzendő azonban, hogy a fogalmak rész-definíciójához való kötődés együttműködési problémákhoz vezethet, mert a különböző alkalmazások így esetleg ugyanazt az azonosítót használják más-más jelentésben.
Indoka: Az ontológiák közös használata
A nyelvnek támogatnia kellene az ontológiák különböző nézeteinek előállítását, ahol pl. egy ontológia részhalmaza képezhető, vagy ahol alternatív neveket adhatunk a fogalmaknak. Ez különösen fontos, amikor az ontológiák multikulturális változatait kívánjuk előállítani. Megjegyezzük, hogy ez a követelmény kielégíthető, ha van több ontológia változatunk, és egy ontológia leképező mechanizmust használunk.
Indokai: Nemzetközi használhatóság; Az ontológiák együttműködése
A W3C XML Digital Signature specifikációja fontos építőelem a bizalmatlan felek közötti kommunikációban, ami nélkülözhetetlen a legtöbb ontológia alkalmazásban. A web-ontológia nyelvet úgy kell tervezni, hogy természetes módon használja az XML Szignatúrákat.
Indoka: Kompatibilitás más szabványokkal
A nyelvnek támogatnia kell az aritmetikai funkciók használatát. Ezek pl. a különböző mértékegységek közötti konverzióra használhatók.
Indoka: Az ontológiák együttműködése
A nyelv támogatja a karakterláncok egybetoldását és egyszerű összehasonlítását. A karakterlánc műveletek elősegítik az olyan ontológiák együttműködését, amelyek összetett információkat kezelnek formátumozott karakterláncok formájában, az olyan ontológiákkal, amelyek a külön tulajdonsággal rendelkező elemeket külön karakterlánccal ábrázolják. Például: egyik ontológia ábrázolhat egy e-mail címet egyetlen karakterláncként, míg egy másik feloszthatja ezt két karakterláncra (felhasználónév és szervernév). Ahhoz, hogy integrálhassuk a két ontológiát, szükségünk lesz annak deklarálására, hogy a felhasználónév, a '@' karakter és a szervernév egybetoldása egyenértékű a másik ontológiában lévő, egyetlen karakterláncból álló e-mail címmel (ez lényegében a "konkatenáció" művelete).
Indoka: Az ontológiák együttműködése
A nyelvnek támogatnia kell az információk csoportosítását, nagyon hasonlóan ahhoz, ahogy az SQL nyelv GROUP BY klauzulája teszi. Továbbá lehetővé kell tennie minden egyes csoportnál a számlálást, az összeg képzését és az egyéb számítási műveletek elvégzését. Ez biztosíthatja az együttműködést olyan ontológiák között is, amelyek különböző granuláltsági szinten ábrázolják az adatokat. (Például így kapcsolatba lehetne hozni az egyik ontológiában ábrázolt Költségvetési Főöszeget egy másik ontológia egyedi Költségvetési Tételeinek összegével, vagy az Akalmazottak Száma adatot az Alkalmazott osztály egyedeinek összeszámolása útján nyert adattal.)
Indoka: Az ontológiák együttműködése
A nyelvnek támogatnia kell a procedurális végrehajtható kódok használatát a komplexebb kritériumok kiértékelésére. A procedúra mellékletek nagymértékben növelik a nyelv kifejezőképességét, de nem jól alkalmazkodnak a formális szemantikához. A web ontológiáknál használandó procedúra mellékletek mechanizmusának specifikálnia kell, hogy miként lehet megtalálni és végrehajtani a procedúrát. Egy lehetséges jelölt a procedúrák nyelvére a Java lehet, mely jól átvihető egyik platformról a másikra a Weben.
Indoka: Az ontológiák együttműködése
Általában a nyelv nem feltételezi a helyi nevek egyediségét, vagyis nem szükséges, hogy különböző egyedekre különböző neveken hivatkozzunk (lásd: R11 követelmény). Vannak azonban olyan alkalmazások, ahol az egyedi nevek megkövetelése hasznos lehet. Ezért a felhasználónak rendelkeznie kell egy olyan lehetőséggel, hogy deklarálhassa: egy adott névtér minden egyes neve külön egyedre hivatkozik.
Indoka: A következetlenségek felismerése
A nyelvnek támogatnia kell az összetett/strukturált adattípusok definiálását és használatát. Az ilyen adatok kifejezhetnek, pl. dátumokat, koordináta-párokat, címeket stb.
Az Ajánlástervezet óta bevezetett változtatások fordított kronológiai sorrendben:
Raphael Volz és Jonathan Dale jelentős szerzői munkát végeztek ezen a dokumentumon, és a jelenlegi szerkesztő mellett az eredeti munkaanyag társszerkesztői voltak. A célok és követelmények meghatározására irányuló kezdeti munkákat Deborah McGuinness és a szerkesztő irányította. Néhány követelmény megfogalmazása – mely az ontológia alapú rendszerek területén végzett több, mint egy évtizedes munkán alapszik – közvetlenül Dr. McGuinness-től származik [DWM]. Más követelmények azonosítása a szerkesztő Ph.D. disszertációján alapszik, amelynek tárgya egy Szemantikus Web prototípus építése [Hef]. A vállalati webportál kezelés szekciót Michael Smith írta.
Ez a dokumentum azoknak a széles körű eszmecseréknek és egyeztetéseknek az eredménye, melyeket a Web Ontológia Munkacsoporton mint egészen belül folytattunk. A résztvevők ebben a munkacsoportban: Yasser alSafadi, Jean-François Baget, James Barnette, Sean Bechhofer, Jonathan Borden, Frederik Brysse, Stephen Buswell, Jeremy Carroll, Dan Connolly, Peter Crowther, Jonathan Dale, Jos De Roo, David De Roure, Mike Dean, Larry Eshelman, Jérôme Euzenat, Tim Finin, Nicholas Gibbins, Sandro Hawke, Patrick Hayes, Jeff Heflin, Ziv Hellman, James Hendler, Bernard Horan, Masahiro Hori, Ian Horrocks, Jane Hunter, Francesco Iannuzzelli, Rüdiger Klein, Natasha Kravtsova, Ora Lassila, Massimo Marchiori, Deborah McGuinness, Enrico Motta, Leo Obrst, Mehrdad Omidvari, Martin Pike, Marwan Sabbouh, Guus Schreiber, Noboru Shimizu, Michael Sintek, Michael K. Smith, John Stanton, Lynn Andrea Stein, Herman ter Horst, David Trastour, Frank van Harmelen, Bernard Vatant, Raphael Volz, Evan Wallace, Christopher Welty, Charles White, and John Yanosy.