Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 42

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

Introduction O L! un langage X"L d#ontologie$ e%

auteur : Xavier Lacot <xavier@lacot.org>

Juin 2005

-1-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

Rsum

&n l#e$'ace de 15 an$! le conce't du ( )e% * a +orte,ent -volu-. La $ource di$'arate de $avoir$ .u#-tait le ( r-$eau de$ r-$eaux * dan$ le$ ann-e$ 1//0 c0de 'rogre$$ive,ent la 'lace! ce$ derni0re$ ann-e$! l#envie d#une ,eilleure arc1itecture de$ -c1ange$ de connai$$ance .ue 'er,et le )e%. 2e docu,ent 'r-$ente $o,,aire,ent .uel.ue$ conce't$ du )e% $-,anti.ue! et $#attarde 'rinci'ale,ent $ur le langage d#ontologie$ )e% reco,,and- 'ar le 32 : O L. Mots Cls. e% $-,anti.ue! eXten$i%le "ar4u' Language! 5e$ource 6e$cri'tion 7ra,e)or4! e% Ontolog8 Language! "-tadonn-e.

-2-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

Table des matires


5-$u,-................................................................................................2 9lo$$aire et d-+inition$.............................................................................: Introduction..........................................................................................; 1 Introduction g-n-rale X"L! 567 et au )e% $-,anti.ue.................................<
1.1 =r-$entation $uccinte de X"L......................................................................< 1.1.1 >tructure d#un +ic1ier X"L....................................................................< 1.1.2 &le,ent$ $8ntaxi.ue$.........................................................................< 1.1.3 &xe,'le de docu,ent X"L $i,'le..........................................................< 1.1.? =ro'ri-t-$ additionnelle$...................................................................../ 1.2 =r-$entation de 567 et de 567>.................................................................../ 1.2.1 2ontexte et e% $-,anti.ue................................................................/ 1.2.2 O%@ecti+ de 567...............................................................................10 1.2.3 >8ntaxe de 567...............................................................................11 1.2.? 567>! 'our donner du voca%ulaire 567 ................................................12 1.3 Le )e% $-,anti.ue et le$ ontologie$............................................................12 1.3.1 Ontologie......................................................................................12 1.3.2 6e no,%reux langage$ de d-+inition et de ,ani'ulation d#ontologie$...............12

2 Le langage O L.................................................................................1?
2.1 O%@ecti+$ et ,otivation............................................................................1? 2.2 6i++-rente$ d-clinai$on$ de O L.................................................................1? 2.3 6ocu,ent O L.....................................................................................1? 2.3.1 &$'ace$ de no,,age de O L..............................................................15 2.3.2 A8'e "I"&.....................................................................................15 2.3.3 &xten$ion......................................................................................15 2.? >tructure d#une ontologie O L...................................................................15 2.?.1 &$'ace$ de no,,age........................................................................15 2.?.2 &n-tBte$ d#une ontologie.....................................................................1: 2.5 &l-,ent$ du langage...............................................................................1: 2.5.1 Le$ cla$$e$.....................................................................................1;

2.5.2 Le$ in$tance$ de cla$$e......................................................................1/

2.5.1.1 6-claration de cla$$e.........................................................1; 2.5.1.2 C-ritage........................................................................1< 2.5.2.1 6-+inition d#un individu......................................................1/ 2.5.2.2 D++ecter une 'ro'ri-t- un individu......................................20 2.5.3.1 6-+inition d#une 'ro'ri-t-...................................................20 2.5.3.2 2aract-ri$ti.ue$ de$ 'ro'ri-t-$.............................................21

2.5.3 Le$ 'ro'ri-t-$.................................................................................20

2.: &xe,'le d#ontologie O L 6L - de$cri'tion d#une 'o'ulation................................22 2.:.1 =r-$entation de la 'o'ulation $ur la.uelle 'orte l#ontologie..........................22

-3-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web 2.:.2 &criture de$ cla$$e$..........................................................................23 2.:.3 &criture de$ 'ro'ri-t-$......................................................................2? 2.:.? D$$ertion de +ait$ caract-ri$ti$ant la 'o'ulation........................................2:

3 Outil$ di$'oni%le$...............................................................................2<
3.1 &diteur d#ontologie$ =rot-g-......................................................................2< 3.1.1 6-+inition de$ cla$$e$ et de$ 'ro'ri-t-$..................................................2< 3.1.2 9e$tion de$ in$tance$ de cla$$e et de leur$ 'ro'ri-t-$.................................2/ 3.1.3 7lexi%ilit- de l#inter+ace.....................................................................2/ 3.1.? =o$$i%ilit- d#e++ectuer de$ re.uBte$.......................................................30 3.2 7ra,e)or4 Jena....................................................................................31 3.3 O L validator.......................................................................................31 3.3.1 Ealidateur 567 du 32......................................................................31 3.3.2 onder e% O L Ontolog8 Ealidator......................................................32 3.3.3 Ealidateur vO Lidator......................................................................33

2onclu$ion...........................................................................................3? Fi%liogra'1ie........................................................................................35 Licence..............................................................................................3; 2ode co,'let de l#ontologie exe,'le..........................................................3<

-?-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

Table des figures


&xe,'le de +ic1ier X"L $i,'le.................................................................../ Ari'let 567.........................................................................................10 &xe,'le de tri'let 567GX"L....................................................................11 &xe,'le de +ic1ier 567GX"L - 're,i0re ver$ion.............................................11 &xe,'le de +ic1ier 567GX"L - deuxi0,e ver$ion............................................11 2la$$e$ co,'o$ant la 'o'ulation d-crire...................................................22 Individu$ de la 'o'ulation d-crire...........................................................23 2a'ture de l#-cran 'rinci'al de =rot-g-! onglet ( cla$$e$ *...............................2< &diteur d#in$tance$ int-gr- =rot-g-..........................................................2/ &diteur de +or,ulaire$ de =rot-g-.............................................................30 9e$tionnaire de re.uBte$ de =rot-g-..........................................................31 Ealidation de l#ontologie exe,'le l#aide de onder e% validator.....................32

2a'ture d#-cran du validateur O L vO Lidator.............................................33

-5-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

Glossaire et dfinitions

DOM DTD HTML Jena

6ocu,ent O%@ect "odel 6ocu,ent A8'e 6e+inition C8'erAext "ar4u' language 7ra,e)or4 'our le )e% $-,anti.ue en Java! Jena +ournit un environne,ent 'er,ettant de travailler avec 567! 567> et O L. Hne ,-tadonn-e e$t une in+or,ation 'er,ettant de d-crire une autre in+or,ation! .uel$ .u#en $oient la nature et le $u''ort. D l#origine do,aine '1ilo$o'1i.ue de la ( $cience de l#Btre en tant .u#Btre *! une ontologie e$t! $elon l#entende,ent du e% $-,anti.ue! un en$e,%le $tructur- de $avoir$. Hne ontologie d-+init le$ ter,e$ e,'lo8-$ 'our d-crire et re'r-$enter un do,aine de connai$$ance. e% Ontolog8 Langage -diteur d#ontologie$ et +ra,e)or4 de ge$tion de$ connai$$ance$! d-velo''en o'en-$ource au $ein de l#univer$it- de ,-decine de >tan+ord. 5e$$ource 6e$cri'tion 7ra,e)or4! 'er,et de 'r-$enter de$ donn-e$ et de$ ,-tadonn-e$. 567 >c1e,a! 'er,et de d-+inir de$ voca%ulaire$ 567. >i,'le D=I +or X"L orld ide e% 2on$ortiu,

Mtadonne

Ontologie

OWL Protg

RD

RD ! !"# W$C #ML

eXten$i%le "ar4u' Language

-:-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

%ntrodu&tion

D $a cr-ation 'ar Ai, Ferner$ Lee! au d-%ut de$ ann-e$! l#o%@ecti+ du )e% -tait de 'er,ettre de$ -c1ange$ ra'ide$ de $avoir$ entre individu$ di$tant$. 2#e$t dan$ ce %ut .u#a -t- cr-- le langage CA"L! autori$ant une ,i$e en +or,e ai$-e et ra'ide docu,ent$ en ligne. 6ix an$ 'lu$ tard! au d-%ut du XXI0,e $i0cle! la ( %al4ani$ation * du e% a %ien eu lieu! $i on ,e 'er,et d#e,'runter un ter,e con$acr- 'ar O'en e% IO=& 2005J. Aant au niveau de la 'r-$entation .ue du %ali$age ou du re$'ect de$ $tandard$! le$ docu,ent$ 'r-$ent$ $ur le )e% ne con$tituent 'lu$! de 'ar leur 1-t-rog-n-it-! une $ource de $avoir +ia%le et agr-a%le con$ulter. Le$ connai$$ance$ .ue 'ro'o$ent le$ 'age$ e% ont 'eu 'eu -t- en+er,-e$! au gr0$ de$ ,ode$! dan$ une couc1e 'r-$entationnelle .ui! $i elle n#a 'a$ d-natur- l#in+or,ation! l#a en tout ca$ rendue ,oin$ acce$$i%le. 6e'ui$ 'lu$ieur$ ann-e$! toute+oi$! une nouvelle id-e du e% 'rend cor'$ : celle d#un e% >-,anti.ue. =eu 'eu! le orld ide e% 2on$ortiu, K 32L $e dote de nouveaux langage$ et d#outil$ 'lu$ 'er+or,ant$ : X"L! 567! O L! n#en $ont .ue de$ exe,'le$. Aou$ ont 'our o%@ecti+ co,,un de 'artici'er une +or,ali$ation de$ $avoir$! en 'er,ettant ain$i un ,eilleur 'artage et une tran$,i$$ion 'lu$ ai$-e. Le$ c1a,'$ d#a''lication -ventuel$ $ont va$te$ : rai$onne,ent auto,ati.ue! r-$olution de 'ro%l0,e$ 'ar in+-rence$! re'r-$entation d edon-e$ $tructur-e$! traduction auto,ati$-e! etc. On 'r-$entera donc! dan$ une 're,i0re 'artie! le$ langage$ X"L et 567! ain$i .ue le$ 'rinci'e$ +onda,entaux du e% $-,anti.ue. La deuxi0,e 'artie! .ui con$titue l#introduction O L 'ro're,ent dite! $#a''uie large,ent $ur le$ 5eco,,andation$ du 32. &n+in! une derni0re 'artie 'ro'o$e .uel.ue$ exe,'le$ de logiciel$ en lien direct avec O L et le e% $-,anti.ue.

-;-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

' %ntrodu&tion gnrale ( #ML) RD et au *eb smanti+ue


'.' Prsentation su&&inte de #ML
5eco,,andation du 32 de'ui$ le 10 +-vrier 1//<! le langage eXten$i%le "ar4u' Language KX"LL connait de'ui$ $e$ d-%ut$ un $ucc-$ ind-nia%le. 6-+ini d-$ $on origine co,,e un ,-talangage +acilitant l#-la%oration de langage$ %ali$e$ $'-ciali$-$! X"L a con.ui$ de'ui$ de ,ulti'le$ +or,at$! le$ nouveaux co,,e le$ ancien$. 6e x1t,l au +or,at de docu,ent$ o'eno++ice.org! no,%reux $ont le$ docu,ent$ .ui 'ro+itent au@ourd#1ui du cadre de X"L. Le$ nor,e$ $tricte$ .ui g0rent la $8ntaxe et la $tructure de X"L rendent le langage et $on utili$ation 'lu$ ai$-$! +avori$ant nota,,ent la +actori$ation de$ travaux de d-velo''e,ent d#anal8$eur$ $8ntaxi.ue$. X"L +ournit donc un cadre de $tructuration de$ donn-e$ .ui 'eut Btre e,'lo8- 'our la d-+inition ra'ide et $an$ a,%iguit- $8ntaxi.ue d#un +or,at de docu,ent.

'.'.'

!tru&ture d,un fi&-ier #ML

Hne $ource de donn-e$ e$t un docu,ent X"L $i elle e$t ( %ien +or,-e *! c#e$t dire $i elle corre$'ond 'ar+aite,ent la $'-ci+ication de X"L I 32 200?aJ. Hn docu,ent X"L di$'o$e alor$ de deux $tructure$ : une $tructure logi.ue et une $tructure '18$i.ue! le$ deux corre$'ondant 'ar+aite,ent. Hn docu,ent X"L e$t re'r-$ent- '18$i.ue,ent $ou$ la +or,e d#un +ic1ier texte $tructur- en -l-,ent$! l#aide de %ali$e$ -ventuelle,ent i,%ri.u-e$. &n en-tBte du docu,ent doit +igurer un ( 'rologue *! une d-claration .ui identi+ie le docu,ent co,,e un docu,ent X"L. 2e 'rologue indi.ue la ver$ion de X"L e,'lo8-e! le codage de caract0re$! et $i le docu,ent e$t a$$oci- une 6A6 ou $#il e$t autono,e. Il exi$te un -l-,ent 'articulier : l#-l-,ent ( racine *! encore a''el- ( -l-,ent docu,ent *. 2ette racine doit contenir tou$ le$ autre$ -l-,ent$ du docu,ent et ne 'eut a''araMtre .u#une +oi$ dan$ un docu,ent X"L. &n con$-.uence! aucun autre -l-,ent ne contient la racine.

'.'..

/lements s0nta1i+ues

&n co,'l-,ent de$ 'rinci'e$ +onda,entaux de X"L ex'li.u-$ ci-de$$u$! on 'eut a@outer .uel.ue$ r0gle$ $8ntaxi.ue$ :

X"L e$t $en$i%le la ca$$e c1a.ue -l-,ent doit co,,encer 'ar une %ali$e ouvrante et $e ter,ine 'ar une %ali$e +er,ante. &ventuelle,ent! un -l-,ent vide 'eut Btre re'r-$ent- 'ar une %ali$e $i,'le. l#i,%rication de$ -l-,ent$ du docu,ent $e +ait $an$ c1evauc1e,ent. 2oncr0te,ent! cela $igni+ie .ue $i la %ali$e ouvrante d#un -l-,ent $e trouve l#int-rieur d#un -le,ent 'arent! la %ali$e +er,ante $e trouvera dan$ le ,B,e -l-,ent. La valeur d#un attri%ut doit Btre encadr-e de guille,et$! $i,'le$ ou dou%le$.

'.'.$

/1em2le de do&ument #ML sim2le

L#exe,'le $uivant de docu,ent X"L 'er,et de d-crire une 'er$onne :

-<-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

<?xml version="1.0" encoding="UTF-8"?> <personne> <nom>Dupond</nom> <prenom> e!n</prenom> <n!iss!nce> <lieu> <ville>"!ris</ville> <p!#s>Fr!nce</p!#s> </lieu> <d!$e> <%our>1&</%our> <mois>'</mois> <!nnee>1'8(</!nnee> </d!$e> </n!iss!nce> </personne> Illustration 1 : Exem le de !ic"ier XML sim le

'.'.3

Pro2rits additionnelles

Hn docu,ent X"L %ien +or,- e$t dit ( valide * lor$.u#il e$t con+or,e la d-claration de t8'e de docu,ent K6A6! X"L >c1e,a! etc.L .ui l#acco,'agne. Il e$t noter .ue certaine$ de$ d-claration$ de t8'e de docu,ent N le$ 6A6 nota,,ent N ne 'er,ettent 'a$ de d-+inir le t8'e de$ attri%ut$! li,itant dan$ ce$ ca$ la notion de validit- a$$oci-e aux +ic1ier$ X"L de ce t8'e. Hn docu,ent X"L 'eut Btre tran$+or,- en utili$ant de$ +euille$ de $t8le X>LA en un nouveau docu,ent : +ic1ier X"L! -vide,,ent! ,ai$ -gale,ent tout autre +or,at texte K'age$ 1t,l! +ic1ier 'd+! re.uBte >OL! etc.L. &n+in! X"L 'ro'o$e di++-rente$ inter+ace$ de 'rogra,,ation KD=IL .ui +acilitent la ,ani'ulation de docu,ent$ 'ar le$ 'roce$$eur$ X"L. Le$ deux D=I 'rinci'ale$ $ont 6ocu,ent O%@ect "odel K6O"L! .ui 'roc0de 'ar con$truction et ,ani'ulation d#un ar%re logi.ue co,'let! et >i,'le D=I +or X"L K>DXL! .ui 'er,et de d-%uter le traite,ent d#un docu,ent X"L avant d#en connaMtre le contenu co,'let.

'..
'...'

Prsentation de RD et de RD !
Conte1te et Web smanti+ue

D $a cr-ation 'ar Ai, Ferner$ Lee! au d-%ut de$ ann-e$ 1//0! le )e% -tait exclu$ive,ent de$tin- 'artager de$ in+or,ation$ $ou$ +or,e de 'age$ 1t,l! a++ic1a%le$ 'ar un logiciel ( navigateur )e% *! et g-n-rale,ent de$tin-e$ Btre lue$ 'ar un utili$ateur 1u,ain. Ar0$ ra'ide,ent! on $#e$t rendu co,'te .ue cette conce'tion du )e% -tait %ien tro' li,it-e! et ne 'er,ettait 'a$ un r-el 'artage du $avoir : tout au 'lu$ cela 'er,ettait-il de 'r-$enter de$ connai$$ance$! ,ai$ en aucun ca$ de le$ rendre directe,ent utili$a%le$. L#arriv-e de X"L! en 1//<! a donn- un cadre la $tructuration de$ connai$$ance$! rendant ain$i 'o$$i%le la cr-ation de nouveaux langage$ )e% de$tin-$ non 'lu$ un rendu gra'1i.ue l#-cran 'our un utili$ateur 1u,ain! ,ai$ un r-el 'artage et une ,ani'ulation de$ $avoir$. 2#e$t dan$ cet e$'rit .u#a -t- cr-- en 1/// 567! un langage X"L 'er,ettant de d-crire de$ ,-tadonn-e$ et +acilitant leur traite,ent.

-/-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

'....

Ob4e&tif de RD

Le d-velo''e,ent de 567 'ar le 32 a -t- entre autre$ ,otiv- 'ar la 'er$'ective de$ a''lication$ $uivante$ :

,ani'ulation et cla$$i+ication de$ ,-tadonn-e$ e%! a+in de +ournir de$ in+or,ation$ $ur le$ re$$ource$ e% et le$ $8$t0,e$ .ui le$ utili$ent. d-velo''e,ent de ,od0le$ d#in+or,ation ouvert$ 'lutPt .ue +ix-$ 'our certaine$ a''lication$ K'ar exe,'le le$ activit-$ de 'lani+ication! de de$cri'tion de 'roce$$u$ organi$ationnel$! d#annotation de re$$ource$ )e%! etc.L +aire avec l#in+or,ation traita%le 'ar ,ac1ine ce .ue le e% a +ait 'our l#18'ertexte! en 'er,ettant aux in+or,ation$ d#Btre ,ani'ul-e$ en de1or$ de l#environne,ent 'articulier dan$ le.uel elle$ ont -t- cr--e$! -ventuelle,ent l#-c1elle d#Internet. 2#e$t le conce't d#intero'-ra%ilit- de$ $avoir$. o'ti,i$ation de la coo'-ration entre a''lication$! en 'er,ettant de co,%iner le$ donn-e$ de 'lu$ieur$ a''lication$! 'our g-n-rer de nouvelle$ in+or,ation$. +aciliter le traite,ent auto,ati.ue de l#in+or,ation du e% 'ar de$ agent$ logiciel$! tran$+or,ant ain$i le )e% d#un regrou'e,ent d#in+or,ation$ uni.ue,ent de$tin-e$ aux 1u,ain$! en un -tat de r-$eau de 'roce$$u$ en coo'-ration. 6an$ ce r-$eau! le rPle de 567 e$t de +ournir une lingua !ranca co,'r-1en$i%le 'ar tou$ le$ agent$.

=our ce +aire! 567 'roc0de 'ar une de$cri'tion de $avoir$ Kdonn-e$ tout co,,e ,-tadonn-e$L l#aide d#ex're$$ion$ de $tructure +ix-e. &n e++et! la $tructure +onda,entale de toute ex're$$ion en 567 e$t une collection de tri'let$! c1acun co,'o$- d#un $u@et! un 'r-dicat et un o%@et. Hn en$e,%le de tel$ tri'let$ e$t a''el- un gra'1e 567. 2eci 'eut Btre illu$tr- 'ar un diagra,,e co,'o$- de noeud$ et d#arc$ dirig-$! dan$ le.uel c1a.ue tri'let e$t re'r-$ent- 'ar un lien noeud-arc-noeud Kd#oQ le ter,e de Rgra'1eRL.

$u@et
Illustration # : $ri let %&'

'r-dicat

o%@et

6an$ un gra'1e! c1a.ue tri'let re'r-$ente l#exi$tence d#une relation entre le$ c1o$e$ $8,%oli$-e$ 'ar le$ noeud$ .ui $ont @oint$.

-10-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

'...$

!0nta1e de RD

Ju$.u# 'r-$ent! il n#a 'a$ -t- +ait ,ention de X"L dan$ la de$cri'tion de 567. 567 n#e$t! en $oi! .u#un ,od0le de gra'1e$ arc$ orient-$ et la%ell-$! dont le la%el e$t le ( 'r-dicat * Kou ( 'ro'ri-t- *L! le noeud de d-'art le ( $u@et *! et le noeud ci%le ( l#o%@et *. 567GX"L 'ro'o$e une $8ntaxe de $-riali$ation de 567. =our cela! 567GX"L $#a''uie $ur X"L 'ar $a $8ntaxe! d-+inie 'ar une 5eco,,andation du 32 de 1//<! et ,i$e @our en 200? I 32 200?aJ. 2on$id-ron$ l#in+or,ation $uivante : ( l#auteur de 1tt':GG))).lacot.orgG e$t Xavier Lacot *. On 'eut c1oi$ir de re'r-$enter cette in+or,ation en tri'let 567 'ar la c1aine ( Sauteur de 1tt':GG))).lacot.orgG! Xavier Lacot! e$tT *! ou encore ( e$tKauteur de 1tt':GG))).lacot.orgG! Xavier LacotL *! ou encore! 'lu$ co,,un-,ent! ( <auteur de 1tt':GG))).lacot.orgG><e$t><Xavier Lacot> *. &n 567GX"L! cette in+or,ation $#-crit :
<rd)+Descrip$ion !1ou$="*$$p+//,,,.l!co$.org/"> <sc*em!+!u$eur>2!vier 3!co$</sc*em!+!u$eur> </rd)+Descrip$ion> Illustration , : Exem le de tri let %&')XML

6an$ l#exe,'le ci-de$$u$! le 'r-+ixe d#e$'ace de no, ( $c1e,a * corre$'ond un e$'ace de no, $'-ci+i.ue! .ui doit Btre indi.u- 'ar l#auteur du docu,ent 567GX"L dan$ une d-claration X"L d#e$'ace de no,. Hn +ic1ier 567GX"L ne contenant .ue l#in+or,ation ( l#auteur de 1tt':GG))).lacot.orgG e$t Xavier Lacot * 'eut $#-crire de la +aUon $uivante :
<?xml version="1.0"?> <rd)+rd) xmlns+rd)="*$$p+//,,,.,-.org/1(((/0./..-rd)-s#n$!x-ns/" xmlns+pre)ixe="*$$p+//source0de0sc*em!/sc*em!"> <rd)+Descrip$ion !1ou$="*$$p+//,,,.l!co$.org/"> <pre)ixe+!u$eur>2!vier 3!co$</pre)ixe+!u$eur> </rd)+Descrip$ion> </rd)+rd)> Illustration + : Exem le de !ic"ier %&')XML - remi*re version

2e +ic1ier 'ourrait 'lu$ $i,'le,ent $#-crire! en e,'lo8ant un e$'ace de no, 'ar d-+aut :
<?xml version="1.0"?> <rd) xmlns="*$$p+//,,,.,-.org/1(((/0./..-rd)-s#n$!x-ns/" xmlns+pre)ixe="*$$p+//source0de0sc*em!/sc*em!"> <descrip$ion !1ou$="*$$p+//,,,.l!co$.org/"> <pre)ixe+!u$eur>2!vier 3!co$</pre)ixe+!u$eur> </descrip$ion> </rd)+rd)> Illustration ( : Exem le de !ic"ier %&')XML - deuxi*me version

La n-ce$$it- de d-clarer l#e$'ace de no, e,'lo8- nou$ a,,0ne au >c1-,a 567 K567>L! 'r-$ent- dan$ la 'artie $uivante.

-11-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

'...3

RD !) 2our donner du 5o&abulaire ( RD

2o,,e on le voit dan$ l#exe,'le 'r-c-dent! la 'ro'ri-t- ( auteur * n#a de $en$ 'our d-crire la re$$ource ( 1tt':GG))).lacot.orgG * .ue dan$ un contexte %ien d-+ini :

le lecteur Kutili$ateurL e$t 1u,ain ce lecteur co,'rend le +ranUai$ l#in+or,ation tran$,i$e 'ar le tri'let 567 ( S1tt':GG))).lacot.orgG! Xavier Lacot! auteurT * e$t $u++i$a,,ent triviale 'our co,'rendre .ue $a $igni+ication e$t ( Xavier Lacot e$t l#auteur de 1tt':GG))).lacot.orgG *.

Il e$t donc n-ce$$aire! 'our donner un $en$ aux in+or,ation$ $toc4-e$ $ou$ +or,e de tri'let$ 567! de $e donner un voca%ulaire! de d-+inir la $igni+ication de la 'ro'ri-t- ( auteur *! ain$i .ue $on t8'e! $on c1a,' de valeur$! etc. 2#e$t le rPle de 567 >c1e,a! .ui 'er,et de cr-er de$ voca%ulaire$ de ,-tadonn-e$.

'.$

Le *eb smanti+ue et les ontologies

On a vu .ue 567 et 567> 'er,ettent de d-+inir! $ou$ +or,e de gra'1e$ de tri'let$! de$ donn-e$ ou de$ ,-tadonn-e$. 2e'endant! de no,%reu$e$ li,itation$ %ornent la ca'acitd#ex're$$ion de$ connai$$ance$ -ta%lie$ l#aide de 567G567>. On 'eut citer! 'ar exe,'le! l#i,'o$$i%ilit- de rai$onner et de ,ener de$ rai$onne,ent$ auto,ati$-$ Kauto,ated rea$oningL $ur le$ ,od0le$ de connai$$ance$ -ta%li$ l#aide de 567G567>. 2#e$t ce ,an.ue .ue $e 'ro'o$e de co,%ler O L.

'.$.'

Ontologie

e% Ontolog8 Language KO LL doit $on no, au ter,e ( ontologie *! un ,ot e,'runt- la '1ilo$o'1ie .ui! $#il e$t d#origine grec.ue! ne +ut ,ani+e$te,ent cr-- .u#au XEIIe $i0cle. ( 6i$cour$ $ur l#Btre en tant .u#Btre * $elon Dri$tote! l#ontologie 'rend un tout autre $en$ en in+or,ati.ue! oQ le ter,e d-$igne un en$e,%le $tructur- de $avoir$ dan$ un do,aine de connai$$ance 'articulier. On di$tingue g-n-rale,ent deux entit-$ glo%ale$ au $ein d#une ontologie. La 're,i0re! o%@ecti+ ter,inologi.ue! d-+init la nature de$ -le,ent$ .ui co,'o$ent le do,aine de l#ontologie en .ue$tion! un 'eu co,,e la d-+inition d#une cla$$e en 'rogra,,ation orient-e o%@et d-+init la nature de$ o%@et$ .ue l#on va ,ani'uler 'ar la $uite. La $econde 'artie d#une ontologie ex'licite le$ relation$ entre 'lu$ieur$ in$tance$ de ce$ cla$$e$ d-+inie$ dan$ la 'artie ter,inologi.ue. Din$i! au $ein d#une ontologie! le$ conce't$ $ont d-+ini$ le$ un$ 'ar ra''ort aux autre$ K,od0le en gra'1e de l#organi$ation de$ connai$$ance$L! ce .ui autori$e un rai$onne,ent et une ,ani'ulation de ce$ connai$$ance$.

'.$..

De nombreu1 langages de dfinition et de mani2ulation d,ontologies

&vide,,ent! cette d-+inition tr0$ g-n-rale lai$$e li%re cour$ l#i,agination au $u@et de$ a''lication$ 'otentielle$ : ge$tion de re$$ource$! ,anage,ent! cr-ation de r-+-rentiel$ ,-dicaux! etc. 2#e$t $an$ doute la rai$on 'our la.uelle il exi$te de no,%reux langage$ in+or,ati.ue$! 'lu$ ou ,oin$ r-cent$! $'-ciali$-$ dan$ la cr-ation et la ,ani'ulation d#ontologie$. &n voici .uel.ue$ exe,'le$ :

-12-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web


O'en Vno)ledge Fa$e 2onnectivit8 : OVF2 2.0! 'u%i- en 1//;! e$t une D=I 'er,ettant d#acc-der de$ %a$e$ de connai$$ance KVno)ledge 5e're$entation >8$te,L. IOVF 1//<J Vno)ledge Interc1ange 7or,at e$t un langage de$tin- +aciliter de$ -c1ange$ de $avoir$ entre de$ $8$t0,e$ in+or,ati.ue$ di$'arate$. >on o%@eti+ n#e$t 'a$ de 'er,ettre une interaction avec l#Btre 1u,ain K%ien .ue cela re$te 'o$$i%leL! ,ai$ 'lutPt une coo'-ration entre $8$t0,e$ 1-t-rog0ne$. IVI7 1//<J LOO" e$t un langage de re'r-$entation de$ connai$$ance$ dont le %ut avou- e$t de ( 'er,ettre la con$truction d#a''lication$ intelligente$ *. ILOO 200?J 6D5=D Dgent "ar4u' Language : +ond- $ur X"L et 567! 6D"L-OWA e$t a''aru en Octo%re 2000 $uite un e++ort du 6D5=D K6e+en$e Ddvanced 5e$earc1 =ro@ect$ Dgenc8L! a+in d#autori$er l#ex're$$ion de cla$$e$ 567 'lu$ 'ou$$-e$ .ue ce .ue 'er,ettait l#-'o.ue 567>. Le 'rogra,,e 6D"L $e 'our$uit encore l#1eure actuelle. I6D5 2005J.

&n r-action l#a''arition de ce$ no,%reux langage$ 'our$uivant 'our la 'lu'art de$ %ut$ co,,un$! le orld ide e% 2on$ortiu, K 32L a ,i$ $ur 'ied$! en Wove,%re 2001! le grou'e de travail ( e%Ont *! c1arg- d#-tudier la cr-ation d#un langage $tandard de ,ani'ulation d#ontologie$ )e%. Le 're,ier or4ing 6ra+t ( O L e% Ontolog8 Language 1.0 D%$tract >8ntax * 'araMt en Juillet 2002 et! au +inal! O L devient une 5eco,,andation du 32 le 10 7-vrier 200?. I 32 200?aJ

-13-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

. Le langage OWL
2ette $ection con$titue l#introduction O L 'ro're,ent dite. &lle $#a''uie grande,ent $ur le$ 5eco,,andation$ du 32 du 10 +-vrier 200? Kc+. Fi%liogra'1ieL.

..'

Ob4e&tifs et moti5ation

O L e$t! tout co,,e 567! un langage X"L 'ro+itant de l#univer$alit- $8ntaxi.ue de X"L. 7ond- $ur la $8ntaxe de 567GX"L! O L o++re un ,o8en d#-crire de$ ontologie$ )e%. O L $e di++-rencie du cou'le 567G567> en ceci .ue! contraire,ent 567! il e$t @u$te,ent un langage d#ontologie$. >I 567 et 567> a''ortent l#utili$ateur la ca'acit- de d-crire de$ cla$$e$ Kie. avec de$ contructeur$L et de$ 'ro'ri-t-$! O L int0gre! en 'lu$! de$ outil$ de co,'arai$on de$ 'ro'ri-t-$ et de$ cla$$e$ : identit-! -.uivalence! contraire! cardinalit-! $8,-trie! tran$itivit-! di$@onction! etc. Din$i! O L o++re aux ,ac1ine$ une 'lu$ grande ca'acit- d#inter'r-tation du contenu )e% .ue 567 et 567>! grace un voca%ulaire 'lu$ large et une vraie $-,anti.ue +or,elle.

...

Diffrentes d&linaisons de OWL

=lu$ un outil e$t co,'let! 'lu$ il e$t! en g-n-ral! co,'lexe. 2#e$t cet -cueil .u#a voulu -viter le grou'e de travail e%Ont du 32 en dotant O L de troi$ $ou$-langage$ o++rant de$ ca'acit-$ d#ex're$$ion croi$$ante$ et! naturelle,ent! de$tin-$ de$ co,,unaut-$ di++-rente$ d#utili$ateur$ :

O L Lite e$t le $ou$ langage de O L le 'lu$ $i,'le. Il e$t de$tin- aux utili$ateur$ .ui ont %e$oin d#une 1i-rarc1ie de conce't$ $i,'le. O L Lite e$t ada't-! 'ar exe,'le! aux ,igration$ ra'ide$ de'ui$ d#ancien$ t1-$auru$. I 32200?@J O L 6L e$t 'lu$ co,'lexe .ue O L Lite! 'er,ettant une ex're$$ivit- %ien 'lu$ i,'ortante. O L 6L e$t +ond- $ur la logi.ue de$cri'tive Kd#oQ $on no,! O L 6e$cri'tion Logic$L! un do,aine de rec1erc1e -tudiant la logi.ue! et con+-rant donc O L 6L $on ada'tation au rai$onne,ent auto,ati$-. "algr- $a co,'lexit- relative +ace O L Lite! O L-6L garantit la co,'l-tude de$ rai$onne,ent$ Ktoute$ le$ in+-rence$ $ont calcula%le$L et leur d-cida%ilit- Kleur calcul $e +ait en une dur-e +inieL. O L 7ull e$t la ver$ion la 'lu$ co,'lexe d#O L! ,ai$ -gale,ent celle .ui 'er,et le 'lu$ 1aut niveau d#ex're$$ivit-. O L 7ull e$t de$tin- aux $ituation$ oQ il e$t 'lu$ i,'ortant d#avoir un 1aut niveau de ca'acit- de de$cri'tion! .uitte ne 'a$ 'ouvoir garantir la co,'l-tude et la d-cida%ilit- de$ calcul$ li-$ l#ontologie. O L 7ull o++re ce'endant de$ ,-cani$,e$ int-re$$ant$! co,,e 'ar exe,'le la 'o$$i%ilit- d#-tende le voca%ulaire 'ar d-+aut de O L. Il exi$te entre ce$ troi$ $ou$ langage une d-'endance de nature 1i-rarc1i.ue : toute ontologie O L Lite valide e$t -gale,ent une ontologie O L 6L valide! et toute ontologie O L 6L valide e$t -gale,ent une ontologie O L 7ull valide.

..$

Do&ument OWL

Aout co,,e 567 di$'o$e d#une $tructure logi.ue dont 567GX"L e$t la $-riali$ation! le$

-1?-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web ontologie$ O L $e 'r-$entent $ou$ +or,e de +ic1ier$ texte! de ( docu,ent$ O L *. La cr-ation d#un docu,ent O L +ait l#o%@et de diver$e$ reco,,andation$ :

..$.'

/s2a&es de nommage de OWL


'rovient de l#e$'ace de no, de O L!

L#int-gralit- du voca%ulaire de O L *$$p+//,,,.,-.org/.00./0'/o,l/.

..$..

T02e M%M/

Il n#exi$te aucun t8'e "I"& $'-ci+i.ue O L! un docu,ent O L -tant un docu,ent 567. Il e$t donc reco,,and- d#e,'lo8er le t8'e "I"& li- 567! $avoir !pplic!$ion/rd)4xml ou! la rigueur! le t8'e "I"& de X"L! !pplic!$ion/xml.

..$.$

/1tension

La reco,,andation du grou'e de travail e%Ont indi.ue .u#il e$t 'r-+-ra%le d#e,'lo8er! co,,e $u++ixe de no, de +ic1ier! le$ exten$ion$ ( .rd+ * ou ( .o)l *.

..3

!tru&ture d,une ontologie OWL

2ette 'artie indi.ue le$ 'rinci'aux -l-,ent$ con$tituant une ontologie O L. Dvant de 'our$uivre! il e$t %ien n-ce$$aire de co,'rendre .u#O L n#a 'a$ -t- conUu dan$ un e$'rit +er,- 'er,ettant de %orner le$ +ronti0re$ d#une ontologie. Du contraire! la conce'tion d#O L a 'ri$ en co,'te la nature di$tri%u-e du )e% $-,anti.ue et! de ce +ait! a int-gr- la 'o$$i%ilitd#-tendre de$ ontologie$ exi$tante$! ou d#e,'lo8er diver$e$ ontologie$ exi$tante$ 'our co,'l-ter la d-+inition d#une nouvelle ontologie.

..3.'

/s2a&es de nommage

D+in de 'ouvoir e,'lo8er de$ ter,e$ dan$ une ontologie! il e$t n-ce$$aire d#indi.uer avec 'r-ci$ion de .uel$ voca%ulaire$ ce$ ter,e$ 'roviennent. 2#e$t la rai$on 'our la.uelle! co,,e tout autre docu,ent X"L! une ontologie co,,ence 'ar une d-claration d#e$'ace de no, K'ar+oi$ a''el-e ( de no,,age *L contenue dan$ une %ali$e rd)+5DF. >u''o$on$ .ue nou$ $ou1aiton$ -crire une ontologie $ur une 'o'ulation de 'er$onne$ ou! d#une ,ani0re 'lu$ g-n-rale! $ur l#1u,anite. Eoici la d-claration d#e$'ace de no, .ui 'ourrait Btre e,'lo8-e :
<rd)+5DF xmlns = xmlns+*um!ni$e= xmlns+1!se = xmlns+viv!n$ = xmlns+o,l = xmlns+rd) = xmlns+rd)s = xmlns+xsd =

"*$$p+//dom!in.$ld/p!$*/*um!ni$e/" "*$$p+//dom!in.$ld/p!$*/*um!ni$e/" "*$$p+//dom!in.$ld/p!$*/*um!ni$e/" "*$$p+//o$*erdom!in.$ld/o$*erp!$*/viv!n$/" "*$$p+//,,,.,-.org/.00./0'/o,l/" "*$$p+//,,,.,-.org/1(((/0./..-rd)-s#n$!x-ns/" "*$$p+//,,,.,-.org/.000/01/rd)-sc*em!/" "*$$p+//,,,.,-.org/.001/2637c*em!/">

Le$ deux 're,i0re$ d-calaration$ identi+ient l#e$'ace de no,,age 'ro're l#ontologie .ue nou$ $o,,e$ en train d#-crire. La 're,i0re d-claration d#e$'ace de no, indi.ue .uelle ontologie $e ra''orter en ca$ d#utili$ation de no,$ $an$ 'r-+ixe dan$ la $uite de l#ontologie. La troi$i0,e d-claration identi+ie l#H5I de %a$e de l#ontologie courante.

-15-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web La .uatri0,e d-claration $igni+ie $i,'le,ent .ue! au cour$ de la r-daction de l#ontologie *um!ni$8! on va e,'lo8er de$ conce't$ d-velo''-$ dan$ une ontologie viv!n$! .ui d-crit ce .u#e$t un Btre vivant. Le$ .uatre derni0re$ d-claration introdui$ent le voca%ulaire d#O L et le$ o%@et$ d-+ini$ dan$ l#e$'ace de no,,age de 567! du $c1-,a 567 et de$ t8'e$ de donn-e$ du >c1-,a X"L. D+in de $i,'li+ier l#-criture de$ H5I dan$ la d-claration d#e$'ace de no, et! $urtout! dan$ le$ valeur$ de$ attri%ut$ de l#ontologie! il e$t con$eill- de d-+inir de$ a%%r-viation$ au ,o8en d#entit-$ de t8'e de docu,ent :
<9D:;T<"= rd)+5DF > <9=?T@T< *um!ni$e "*$$p+//dom!in.$ld/p!$*/*um!ni$e/" > <9=?T@T< viv!n$ "*$$p+//o$*erdom!in.$ld/o$*erp!$*/viv!n$/" > A>

Din$i! la d-claration d#e$'ace de no, initiale devient :


<rd)+5DF xmlns = xmlns+*um!ni$e= xmlns+1!se = xmlns+viv!n$ = xmlns+o,l = xmlns+rd) = xmlns+rd)s = xmlns+xsd =

"B*um!ni$eC" "B*um!ni$eC" "B*um!ni$eC" "Bviv!n$C" "*$$p+//,,,.,-.org/.00./0'/o,l/" "*$$p+//,,,.,-.org/1(((/0./..-rd)-s#n$!x-ns/" "*$$p+//,,,.,-.org/.000/01/rd)-sc*em!/" "*$$p+//,,,.,-.org/.001/2637c*em!/">

..3..

/n6t7tes d,une ontologie

Aout co,,e il exi$te une $ection d#en-tBte <*e!d>..</*e!d> en 1aut de tout docu,ent XCA"L %ien +or,-! on 'eut -crire! la $uite de la d-claration d#e$'ace$ de no,! un en-tBte d-crivant le contenu de l#ontologie courante. 2#e$t la %ali$e o,l+:n$olog# .ui 'er,et d#indi.uer ce$ in+or,ation$ :
<o,l+:n$olog# rd)+!1ou$=""> <rd)s+commen$>:n$ologie d8criv!n$ lD*um!ni$8</rd)s+commen$> <o,l+impor$s rd)+resource="*$$p+//o$*erdom!in.$ld/o$*erp!$*/viv!n$"/> <rd)s+l!1el>:n$ologie sur lD*um!ni$8</rd)s+l!1el> ...

Le contenu et la $igni+ication de$ di++-rent$ -l-,ent$ de cette $ection d#en-tBte $ont 'ar+aite,ent d-crit$ dan$ ( O L e% Ontolog8 Language 5e+erence * I 32 200?4J! et il e$t reco,,and- de $#8 re'orter 'our 'lu$ de d-tail$.

..8

/lments du langage

2ette 'artie ne va 'a$ re'rendre toute$ le$ +ine$$e$ de O L Lite! O L 6L et O L 7ull! ,ai$ uni.ue,ent le$ 'lu$ i,'ortante$. =our de$ ex'lication$ ex1au$tive$ du rPle de c1acun de$

-1:-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web -l-,ent$ co,'o$ant le voca%ulaire d#O L! il e$t reco,,and- de $e re'orter la 5eco,,andation du 32 ( O L e% Ontolog8 Language 5e+erence * I 32 200?4J.

..8.'

Les &lasses

Hne cla$$e d-+init un grou'e d#individu$ .ui $ont r-uni$ 'arce .u#il$ ont de$ caract-ri$ti.ue$ $i,ilaire$. L#en$e,%le de$ individu$ d#une cla$$e e$t d-$ign- 'ar le ter,e ( exten$ion de cla$$e *! c1acun de ce$ individu$ -tant alor$ une ( in$tance * de la cla$$e. Le$ troi$ ver$ion$ d#O L co,'ortent le$ ,B,e$ ,-cani$,e$ de cla$$e! ceci 'r0$ .ue O L 7HLL e$t la $eule ver$ion 'er,ettre .u#une cla$$e $oit l#in$tance d#une autre cla$$e Kd#une ,-tacla$$eL. D l#inver$e! O L Lite et O L 6L n#autori$ent 'a$ .u#une in$tance de cla$$e $oit elle-,B,e une cla$$e.

..8.'.'

D&laration de &lasse

La d-claration d#une cla$$e $e +ait 'ar le %iai$ du ,-cani$,e de ( de$cri'tion de cla$$e *! .ui $e 'r-$ente $ou$ diver$e$ +or,e$. Hne cla$$e 'eut ain$i $e d-clarer de $ix ,ani0re$ di++-rente$ :

l#indicateur de cla$$e : La de$cri'tion de la cla$$e $e +ait! dan$ ce ca$! directe,ent 'ar le no,,age de cette cla$$e. Hne cla$$e ( 1u,ain * $e d-clare de la ,ani0re $uivante :
<o,l+;l!ss rd)+@D="Eum!in" />

Il e$t noter .ue ce t8'e de de$cri'tion de cla$$e e$t le $eul .ui 'er,ette de no,,er une cla$$e. 6an$ le$ cin. autre$ ca$! la de$cri'tion re'r-$ente une cla$$e dite ( anon8,e *! cr-e en 'laUant de$ contrainte$ $ur $on exten$ion.

l#-nu,-ration de$ individu$ co,'o$ant la cla$$e : 2e t8'e de de$crition $e +ait en -nu,-rant le$ in$tance$ de la cla$$e! l#aide de la 'ro'ri-t- o,l+one:) :
<o,l+;l!ss> <o,l+one:) rd)+p!rseT#pe=";ollec$ion"> <o,l+T*ing rd)+!1ou$="/D!mien" /> <o,l+T*ing rd)+!1ou$="/:livier" /> <o,l+T*ing rd)+!1ou$="/"*ilippe" /> <o,l+T*ing rd)+!1ou$="/2!vier" /> <o,l+T*ing rd)+!1ou$="/<ves" /> </o,l+one:)> </o,l+;l!ss>

>i ce ,-cani$,e e$t utili$a%le avec O L 6L et O L 7HLL! il ne +ait ce'endant 'a$ 'artie de O L Lite.

La re$triction de 'ro'ri-t-$ : La de$cri'tion 'ar re$triction de 'ro'ri-t- 'er,et de d-+inir une cla$$e anon8,e co,'o$-e de toute$ le$ in$tance$ de o)l:A1ing .ui $ati$+ont une ou 'lu$ieur$ 'ro'ri-t-$. 2e$ contrainte$ 'euvent Btre de deux t8'e$ : contrainte de valeur ou contrainte de

-1;-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web cardinalit-. Hne contrainte de valeur $#exerce $ur la valeur d#une certaine 'ro'ri-t- de l#individu K'ar exe,'le! 'our un individu de la cla$$e Eum!in! sexe X EommeL! tandi$ .u#une contrainte de cardinalit- 'orte $ur le no,%re de valeur$ .ue 'eut 'rendre une 'ro'ri-t- K'ar exe,'le! 'our un individu de la cla$$e Eum!in! !"ourFrere e$t une 'ro'ri-t- .ui 'eut ne 'a$ avoir de valeur! ou avoir 'lu$ieur$ valeur$! $uivant le no,%re de +r0re$ de l#individu. La contrainte de cardinalit- 'ortant $ur !"ourFrere re$treindra donc la cla$$e d-crite aux individu$ 'our le$.uel$ la 'ro'ri-t- !"ourFrere a''araMt un certain no,%re de +oi$L. Il exi$te naturelle,ent di++-rent$ o'-rateur$ de co,'arai$on 'our -ta%lir le$ contrainte$. =our 'lu$ de d-tail$! $e re'orter ( O L e% Ontolog8 Language 5e+erence * I 32 200?4J.

&n+in! le$ de$cri'tion$ 'ar inter$ection! union ou co,'l-,entaire 'er,ettent de d-crire une cla$$e 'ar! co,,e leur no, l#indi.ue! l#inter$ection! l#union ou le co,'l-,entaire d#autre$ cla$$e$ d-@ d-+inie$! ou dont la d-+inition $e +ait au $ein ,B,e de la d-+ition de la cla$$e courante : &tudiant$ de l#&W>A <o,l+;l!ss> <o,l+in$ersec$ion:) rd)+p!rseT#pe=";ollec$ion"> <o,l+;l!ss rd)+!1ou$="/e$udi!n$s=?7T" /> <o,l+5es$ric$ion> <o,l+on"roper$# rd)+resource="/!"ourFrere" /> <o,l+c!rdin!li$# rd)+d!$!$#pe="BxsdCnon?eg!$ive@n$eger"> . </o,l+c!rdin!li$#> </o,l+5es$ric$ion > =er$onne$ a8ant </o,l+in$ersec$ion:)> deux +r0re$ </o,l+;l!ss>

&tudiant$ de l#&W>A a8ant deux +r0re$

..8.'..

Hritage

Il exi$te dan$ toute ontologie O L une $u'ercla$$e! no,,-e T*ing! dont toute$ le$ autre$ cla$$e$ $ont de$ $ou$-cla$$e$. 2eci nou$ a,,0ne directe,ent au conce't d#1-ritage! di$'oni%le l#aide de la 'ro'ri-t- su1;l!ss:) :
<o,l+;l!ss rd)+@D="Eum!in"> <rd)s+su1;l!ss:) rd)+resource="Be$reC/=$reFiv!n$" /> </o,l+;l!ss> <o,l+;l!ss rd)+@D="Eomme"> <rd)s+su1;l!ss:) rd)+resource="/Eum!in" /> </o,l+;l!ss> <o,l+;l!ss rd)+@D="Femme"> <rd)s+su1;l!ss:) rd)+resource="/Eum!in" /> </o,l+;l!ss>

-1<-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web &n+in! il exi$te -gale,ent une cla$$e no,,-e noT*ing! .ui e$t $ou$-cla$$e de toute$ le$ cla$$e$ O L. 2ette cla$$e ne 'eut avoir aucune in$tance.

..8..
..8...'

Les instan&es de &lasse


Dfinition d,un indi5idu

La d-+inition d#un individu con$i$te -noncer un ( +ait *! encore a''el- ( axio,e d#individu *. On 'eut di$tinguer deux t8'e$ de +ait$ :

le$ +ait$ concernant l#a''artenance une cla$$e La 'lu'art de$ +ait$ concerne g-n-rale,ent la d-claration de l#a''artenance une cla$$e d#in individu et le$ valeur$ de 'ro'ri-t- de cet individu. Hn +ait $#ex'ri,e de la ,ani0re $uivante :
<Eum!in rd)+@D=""ierre"> <!"our"ere rd)+resource="/ !cGues" /> <!"ourFrere rd)+resource="/"!ul" /> </Eum!in>

Le +ait -crit dan$ cet exe,'le ex'ri,e l#exi$tence d#un Eum!in no,,- ( "ierre * dont le '0re $#a''elle ( !cGues *! et .u#il a un +r0re no,,- ( "!ul *. On 'eut -gale,ent in$tancier un individu anon8,e en o,ettant $on identi+iant :
<Eum!in> <!"our"ere rd)+resource="/ !cGues" /> <!"ourFrere rd)+resource="/"!ul" /> </Eum!in>

2e +ait d-crit! dan$ ce ca$! l#exi$tence d#un Eum!in dont le '0re $e no,,e ( !cGues * et .ui a un +r0re no,,- ( "!ul *.

le$ +ait$ concernant l#identit- de$ individu$ Hne di++icult- .ui 'eut -ventuelle,ent a''araMtre dan$ le no,,age de$ individu$ concerne la non-unicit- -ventuelle de$ no,$ attri%u-$ aux individu$. =ar exe,'le! un ,B,e individu 'ourrait Btre d-$ign- de 'lu$ieur$ +aUon$ di++-rente$. 2#e$t la rai$on 'our la.uelle O L 'ro'o$e un ,-cani$,e 'er,ettant de lever cette a,%iguit-! l#aide de$ 'ro'ri-t-$ o,l+s!meHs! o,l+di))ren$From et o,l+!llDi))eren$. L#exe,'le $uivant 'er,et de d-clarer .ue le$ no,$ ( 3ouis02@F * et ( 3e05oi07oleil * d-$ignent la ,B,e 'er$onne :
<rd)+Descrip$ion rd)+!1ou$="/3ouis02@F"> <o,l+s!meHs rd)+resource="/3e05oi07oleil" /> </rd)+Descrip$ion>

-1/-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

..8....

"ffe&ter une 2ro2rit ( un indi5idu

Hne +oi$ .ue l#on $ait -crire une cla$$e en O L! la cr-ation d#une ontologie $e +ait 'ar l#-criture d#in$tance$ de ce$ o%@et$! et la de$cri'tion de$ relation$ .ui lient ce$ in$tance$.

..8.$

Les 2ro2rits

"aintenant .ue l#on $ait -crire de$ cla$$e$ O L! il ne ,an.ue 'lu$ .ue la ca'acit- ex'ri,er de$ +ait$ au $u@et de ce$ cla$$e$ et de leur$ in$tance$. 2#e$t ce .ue 'er,ettent de +aire le$ 'ro'ri-t-$ O L. O L +ait la di$tinction entre deux t8'e$ de 'ro'ri-t-$ :

le$ 'ro'ri-t-$ d#o%@et 'er,ettent de relier de$ in$tance$ d#autre$ in$tance$ le$ 'ro'ri-t-$ de t8'e de donn-e 'er,ettent de relier de$ individu$ de$ valeur$ de donn-e$.

Hne 'ro'ri-t- d#o%@et e$t une in$tance de la cla$$e o,l+:1%ec$"roper$#! une 'ro'ri-t- de t8'e de donn-e -tant une in$tance de la cla$$e o,l+D!$!$#pe"roper$#. 2e$ deux cla$$e$ $ont elle$-,B,e $ou$-cla$$e$ de la cla$$e 567 rd)+"roper$#. La d-+inition de$ caract-ri$ti.ue$ d#une 'ro'ri-t- $e +ait l#aide d#un axio,e de 'ro'ri-t- .ui! dan$ $a +or,e ,ini,ale! ne +ait .u#a++ir,er l#exi$tence de la 'ro'ri-t- :
<o,l+:1%ec$"roper$# rd)+@D="!"our"!ren$" />

2e'endant! il e$t 'o$$i%le de d-+inir %eaucou' d#autre$ caract-ri$ti.ue$ d#une 'ro'ri-t- dan$ un axio,e de 'ro'ri-t-.

..8.$.'

Dfinition d,une 2ro2rit

D+in de $'-ci+ier une 'ro'ri-t-! il exi$te di++-rente$ ,ani0re$ de re$treindre la relation .u#elle $8,%oli$e. =ar exe,'le! $i on con$id0re .ue l#exi$tence d#une 'ro'ri-t- 'our un individu donnde l#ontologie con$titue une +onction +ai$ant corre$'ondre cet individu un autre individu ou une valeur de donn-e! alor$ on 'eut 'r-ci$er le do,aine et l#i,age de la 'ro'ri-t-. Hne 'ro'ri-t- 'eut -gale,ent Btre d-+inie co,,e la $'-ciali$ation d#une autre 'ro'ri-t-.
<o,l+:1%ec$"roper$# rd)+@D="*!1i$e"> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="/"!#s" /> </o,l+:1%ec$"roper$#>

6an$ l#exe,'le ci-de$$u$! on a''rend .ue la 'ro'ri-t- *!1i$e a 'our do,aine la cla$$e Eum!in et 'our i,age la cla$$e "!#s : elle relie de$ in$tance$ de la cla$$e Eum!in de$ in$tance$ de la cla$$e "!#s. 6an$ le ca$ d#une 'ro'ri-t- de t8'e de donn-e! l#i,age de la 'ro'ri-t- 'eut Btre un t8'e de donn-e! co,,e d-+ini dan$ le >c1-,a X"L. =ar exe,'le! on 'eut d-+inir la 'ro'ri-t- de t8'e de donn-e$ !nneeDe?!iss!nce :
<o,l+;l!ss rd)+@D="d!$eDe?!iss!nce" /> <o,l+D!$!$#pe"roper$# rd)+@D="!nneeDe?!iss!nce"> <rd)s+dom!in rd)+resource="/d!$eDe?!iss!nce" /> <rd)s+r!nge rd)+resource="BxsdCposi$ive@n$eger"/>

-20-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web


</o,l+D!$!$#pe"roper$#>

6an$ ce ca$! !nneDe?!iss!nce +ait corre$'ondre aux in$tance$ de la cla$$e de d!$eDe?!iss!nce de$ entier$ 'o$iti+$. On 'eut -gale,ent e,'lo8er un ,-cani$,e de 1i-rarc1ie entre le$ 'ro'ri-t-$! exacte,ent co,,e il exi$te un ,-cani$,e d#1-ritage $ur le$ cla$$e$ :
<o,l+;l!ss rd)+@D="Eum!in" /> <o,l+:1%ec$"roper$# rd)+@D="es$De3!F!milleDe"> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="/Eum!in" /> </o,l+:1%ec$"roper$#> <o,l+:1%ec$"roper$# rd)+@D="!"ourFrere"> <rd)s+su1"roper$#:) rd)+resource="/es$De3!F!milleDe" /> <rd)s+r!nge rd)+resource="/Eum!in" /> ... </o,l+:1%ec$"roper$#> </o,l+;l!ss>

La 'ro'ri-t- !"ourFrere e$t une $ou$-'ro'ri-t- de es$De3!F!milleDe! ce .ui $igni+ie .ue toute entit- a8ant une 'ro'ri-t- !"ourFrere d#une certaine valeur a au$$i une 'ro'ri-tes$De3!F!milleDe de ,B,e valeur.

..8.$..

Cara&tristi+ues des 2ro2rits

&n 'lu$ de ce ,-cani$,e d#1-ritage et de re$triction du do,aine et de l#i,age d#une 'ro'ri-t-! il exi$te diver$ ,o8en$ d#attac1er de$ caract-ri$ti.ue$ aux 'ro'ri-t-$! ce .ui 'er,et d#a++iner grande,ent la .ualit- de$ rai$onne,ent$ li-$ cette 'ro'ri-t-. =ar,i le$ caract-ri$ti.ue$ de 'ro'ri-t-$ 'rinci'ale$! on trouve la tran$itivit-! la $8,-trie! la +onctionnalit-! l#inver$e! etc. L#a@out d#une caract-ri$ti.ue une 'ro'ri-t- de l#ontologie $e +ait 'ar l#e,'loi de la %ali$e O L t8'e :
<o,l+:1%ec$"roper$# rd)+@D="!"our"ere"> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="/Eum!in" /> </o,l+:1%ec$"roper$#> <o,l+:1%ec$"roper$# rd)+@D="!"ourFrere"> <rd)+$#pe rd)+resource="Bo,lC7#mme$ric"roper$#" /> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="/Eum!in" /> </o,l+:1%ec$"roper$#> <Eum!in rd)+@D=""ierre"> <!"ourFrere rd)+resource="/"!ul" /> <!"our"ere rd)+resource="/ !cGues" /> </Eum!in>

=ro'ri-t- non $8,-tri.ue

=ro'ri-t$8,-tri.ue

-21-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web L#Eum!in "ierre a 'our +r0re "!ul! de ,B,e .ue K$8,-trieL l#Eum!in "!ul a 'our +r0re "ierre. =ar contre! $i "ierre a 'our '0re !cGues! l#inver$e n#e$t 'a$ vrai K!"our"ere n#e$t 'a$ $8,-tri.ueL.

..9

/1em2le d,ontologie OWL DL 6 des&ri2tion d,une 2o2ulation

L#ontologie O L 'r-$ent-e dan$ ce 'aragra'1e d-crit un grou'e de 'er$onne$ et leur$ relation$ de 'arent-! ain$i .ue leur lieu d#1a%itation. 2ette ontologie ne +era 'a$ l#o%@et de ,ani'ulation$ K-dition! validation! rai$onne,ent auto,ati.ue! etc.L dan$ cette 'artie. =our cela! il e$t 'r-+-ra%le de $e r-+-rer au c1a'itre ( Outil$ di$'oni%le$ *.

..9.'

Prsentation de la 2o2ulation sur la+uelle 2orte l,ontologie

Le diagra,,e de cla$$e$ H"L de la +igure ( 2la$$e$ co,'o$ant la 'o'ulation d-crire * indi.ue le$ cla$$e$ .ui co,'o$ent la 'o'ulation dont on $ou1aite -crire une ontologie O L :

est frre ou soeur de

0..n 0..n
Humain
?om "r8nom D!$eDe?!iss!nce

habite 1..1 0..n

Ville
?omFille

0..n se trouve en 1..1

est pre de

Homme

1..1

est mari 0..1 0..1

Femme
?omDe euneFille

Pays
?om"!#s

Illustration -: .lasses com osant la o ulation d/crire

La 'o'ulation .ue l#on $ou1aite d-crire e$t co,'o$-e d#1u,ain$! divi$-$ en deux $ou$-cla$$e$ Eomme et Femme! et 1a%itant dan$ une certaine ville. Hn 1u,ain 'eut avoir un lien de +raternit- avec un autre 1u,ain. Hn 1o,,e 'eut Btre '0re d#un autre 1u,ain! et un 1o,,e et une +e,,e 'euvent Btre ,ari-$. Le $c1-,a $uivant indi.ue 'lu$ 'r-ci$-,,ent le$ individu$ .ui exi$tent dan$ l#ontologie .ue nou$ allon$ -crire : Le ,onde .ue l#on va d-crire co,'orte troi$ in$tance$ de la cla$$e ( Eomme * Ken vertL! une in$tance de la cla$$e ( Femme * Ken rougeL! ain$i .ue deux in$tance$ de ( Fille * Ken %leuL et de ( "!#s * Ken ,auveL.

-22-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web


D!$eDe?!iss!nce + 1('I-0J-.IT0&+00+00401+00 "r8nom + "!ul ?om"!#s + Hllem!gne ?om + Dupond

se trouve en
?omDe euneFille + 6!r$in ?omFille + Ulm ?om + Dupond

"r8nom + 6!rie

est mari habite

est frre de est pre de

habite
?om + Dupond

"r8nom + "ierre D!$eDe?!iss!nce + 1('I-1.-1'T1'+00+00401+00

D!$eDe?!iss!nce + 1('8-08-18T.1+00+00401+00

?omFille + "!ris

habite se trouve en

?om + Dupond "r8nom + !cGues

Illustration 0: Individus de la o ulation d/crire

?om"!#s + Fr!nce

D!$eDe?!iss!nce + 1(&I-1.-.JT1.+00+00401+00

..9..

/&riture des &lasses

La 're,i0re -ta'e de l#-criture de l#ontologie O L re'r-$entant cette 'o'ulation con$i$te -crire le$ cla$$e$ du ,onde. Il e$t 'o$$i%le de d-+inir avec 'lu$ ou ,oin$ de 'r-ci$ion la nature de$ -l-,ent$ .ui co,'o$ent le ,onde .ue l#on d-crit! en cr-ant 'lu$ ou ,oin$ de cla$$e$. =ar exe,'le! il $erait 'o$$i%le d#-crire une cla$$e ( d!$e * dont $eraient in$tance$ toute$ le$ date$ de l#ontologie. 2ela 'ourrait avoir un interBt dan$ le cadre d#une 'o'ulation 'lu$ va$te! 'our rec1erc1er! 'ar exe,'le! le$ 'er$onne$ n-e$ un ,B,e @our. On 'eut $e 'o$er la .ue$tion du t8'e de d-claration de cla$$e utili$er : 'ar indicateur de cla$$e ou 'ar -nu,-ration Y L#-nu,-ration co,'orte! dan$ le ca$ de cette ontologie! l#inconv-nient de %rider l#exten$i%ilit- du ,onde. &n con$-.uence! on c1oi$it de d-clarer Eum!in 'ar le %iai$ d#un indicateur de cla$$e :
<9-- D8)in$ion des cl!sses --> <o,l+;l!ss rd)+@D="Eum!in" /> <o,l+;l!ss rd)+@D="Eomme"> <rd)s+su1;l!ss:) rd)+resource="/Eum!in" /> </o,l+;l!ss> <o,l+;l!ss rd)+@D="Femme"> <rd)s+su1;l!ss:) rd)+resource="/Eum!in" /> </o,l+;l!ss>

-23-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web


<o,l+;l!ss rd)+@D="Fille" /> <o,l+;l!ss rd)+@D=""!#s" />

2ette 're,i0re d-+inition de$ cla$$e$ de l#ontologie e$t $ati$+ai$ante! ,ai$ elle e$t n-an,oin$ 'er+ecti%le. &n e++et! on 'eut a@outer de$ contrainte$! nota,,ent $ur le$ cla$$e$ Cu,ain et Eille :

un 1u,ain a tou@our$ un '0re. Hne ville $e trouve +orc-,ent dan$ un 'a8$.

6#autre$ contrainte$ $ont i,agina%le$! nota,,ent le$ contrainte$ d#unicit- de$ no,$! date$ de nai$$ance! etc. 2e$ contrainte$ $ont con$ulta%le$ dan$ le code co,'let de l#ontologie O L! con$ulta%le en Dnnexe de ce docu,ent. Eoici la nouvelle -criture! 'lu$ d-taill-e! de$ deux cla$$e$ ( Eum!in * et ( Fille * :
<o,l+;l!ss rd)+@D="Eum!in"> <rd)s+su1;l!ss:)> <o,l+5es$ric$ion> <o,l+on"roper$# rd)+resource="/!"our"ere" /> <o,l+c!rdin!li$# rd)+d!$!$#pe="BxsdCnon?eg!$ive@n$eger">1</o,l+c!rdin!li$#> </o,l+5es$ric$ion> </rd)s+su1;l!ss:)> </o,l+;l!ss> <o,l+;l!ss rd)+@D="Fille"> <rd)s+su1;l!ss:)> <o,l+5es$ric$ion> <o,l+on"roper$# rd)+resource="/seTrouve=n" /> <o,l+c!rdin!li$# rd)+d!$!$#pe="BxsdCnon?eg!$ive@n$eger">1</o,l+c!rdin!li$#> </o,l+5es$ric$ion> </rd)s+su1;l!ss:)> </o,l+;l!ss>

..9.$

/&riture des 2ro2rits

L#-criture de$ 'ro'ri-t-$ e$t l#-ta'e .ui va 'er,ettre de d-tailler la 'o'ulation .ue l#on veut d-crire. &crivon$ tout d#a%ord le$ 'ro'ri-t-$ d#o%@et : 1a%iteD! a=our=ere! aHnLien6e7raternite! e$t"arieD et $eArouve&n :
<9-- "ropri8$8s dDo1%e$ --> <o,l+:1%ec$"roper$# rd)+@D="*!1i$eH"> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="/Fille" /> </o,l+:1%ec$"roper$#>

-2?-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web


<o,l+:1%ec$"roper$# rd)+@D="!"our"ere"> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="/Eomme" /> </o,l+:1%ec$"roper$#> <o,l+:1%ec$"roper$# rd)+@D="!Un3ienDeFr!$erni$e"> <rd)+$#pe rd)+resource="Bo,lC7#mme$ric"roper$#" /> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="/Eum!in" /> </o,l+:1%ec$"roper$#> <o,l+:1%ec$"roper$# rd)+@D="es$6!rieH"> <rd)+$#pe rd)+resource="Bo,lC7#mme$ric"roper$#" /> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="/Eum!in" /> </o,l+:1%ec$"roper$#> <o,l+:1%ec$"roper$# rd)+@D="seTrouve=n"> <rd)s+dom!in rd)+resource="/Fille" /> <rd)s+r!nge rd)+resource="/"!#s" /> </o,l+:1%ec$"roper$#>

Le$ 'ro'ri-t-$ !Un3ienDeFr!$erni$e et es$6!rieH $ont d-+inie$ co,,e de$ 'ro'ri-t-$ $8,-tri.ue$ : $i une telle relation lie un individu D un individu F! alor$ la ,B,e relation lie -gale,ent l#individu F l#individu D. =a$$on$ ,aintenant aux 'ro'ri-t-$ de t8'e de donn-e. 2e $ont ce$ 'ro'ri-t-$ .ui! concr0te,ent! 'er,ettent d#a++ecter de$ 'ro'ri-t-$ .uanti+i-e$ aux in$tance$ de$ cla$$e$ K'ar exe,'le! un no,! un 'r-no,! une date de nai$$ance! etc.L :
<9-- "ropri8$8s de $#pe de donn8e --> <o,l+D!$!$#pe"roper$# rd)+@D="nom"> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="BxsdCs$ring" /> </o,l+D!$!$#pe"roper$#> <o,l+D!$!$#pe"roper$# rd)+@D="prenom"> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="BxsdCs$ring" /> </o,l+D!$!$#pe"roper$#> <o,l+D!$!$#pe"roper$# rd)+@D="nomDe euneFille"> <rd)s+dom!in rd)+resource="/Femme" /> <rd)s+r!nge rd)+resource="BxsdCs$ring" /> </o,l+D!$!$#pe"roper$#> <o,l+D!$!$#pe"roper$# rd)+@D="d!$eDe?!iss!nce"> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="BxsdCd!$e" /> </o,l+D!$!$#pe"roper$#>

-25-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web


<o,l+D!$!$#pe"roper$# rd)+@D="nomFille"> <rd)s+dom!in rd)+resource="/Fille" /> <rd)s+r!nge rd)+resource="BxsdCs$ring" /> </o,l+D!$!$#pe"roper$#> <o,l+D!$!$#pe"roper$# rd)+@D="nom"!#s"> <rd)s+dom!in rd)+resource="/"!#s" /> <rd)s+r!nge rd)+resource="BxsdCs$ring" /> </o,l+D!$!$#pe"roper$#>

L#i,age de ce$ 'ro'ri-t-$ e$t d-+inie $elon X"L >c1e,a Kau.uel +ait r-+-rence la c1aine ( BxsdC *L! ce .ui 'er,et de donner un t8'e aux 'ro'ri-t-$.

..9.3

"ssertion de faits &ara&tristisant la 2o2ulation

La derni0re -ta'e concerne l#a$$ertion de$ +ait$ caract-ri$ant la 'o'ulation! 'r-$ent-$ $ur la +igure ( Individu$ de la 'o'ulation d-crire *. Il $#agit donc non $eule,ent de l#in$tanciation de$ individu$ de la 'o'ulation! ,ai$ -gale,ent de leur de$cri'tion 'ar l#-nonciation de leur$ 'ro'ri-t-$ :
<9-- Eum!ins --> <Eomme rd)+@D="unKno,n"> <!"our"ere rd)+resource="/unKno,n" /> </Eomme> <Eomme rd)+@D=""ierre"> <nom>Dupond</nom> <prenom>"ierre</prenom> <d!$eDe?!iss!nce>1('8-08-18</d!$eDe?!iss!nce> <!Un3ienDeFr!$erni$e rd)+resource="/"!ul" /> <!"our"ere rd)+resource="/ !cGues" /> <*!1i$eH rd)+resource="/Ulm" /> </Eomme> <Eomme rd)+@D=""!ul"> <nom>Dupond</nom> <prenom>"!ul</prenom> <d!$eDe?!iss!nce>1('I-0J-.I</d!$eDe?!iss!nce> <es$6!rieH rd)+resource="/6!rie" /> <!"our"ere rd)+resource="/ !cGues" /> <*!1i$eH rd)+resource="/"!ris" /> </Eomme> <Eomme rd)+@D=" !cGues"> <nom>Dupond</nom> <prenom> !cGues</prenom> <d!$eDe?!iss!nce>1(&I-1.-.J</d!$eDe?!iss!nce> <!"our"ere rd)+resource="/unKno,n" /> <*!1i$eH rd)+resource="/"!ris" />

-2:-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web


</Eomme> <Femme rd)+@D="6!rie"> <nom>Dupond</nom> <prenom>6!rie</prenom> <d!$eDe?!iss!nce>1('I-1.-1'</d!$eDe?!iss!nce> <nomDe euneFille>6!r$in</nomDe euneFille> <!"our"ere rd)+resource="/unKno,n" /> <*!1i$eH rd)+resource="/"!ris" /> </Femme> <9-- "!#s --> <"!#s rd)+@D="Hllem!gne"> <nom"!#s>Hllem!gne</nom"!#s> </"!#s> <"!#s rd)+@D="Fr!nce"> <nom"!#s>Fr!nce</nom"!#s> </"!#s> <9-- Filles --> <Fille rd)+@D=""!ris"> <nomFille>"!ris</nomFille> <seTrouve=n rd)+resource="/Fr!nce" /> </Fille> <Fille rd)+@D="Ulm"> <nomFille>Ulm</nomFille> <seTrouve=n rd)+resource="/Hllem!gne" /> </Fille>

On 'eut o%$erver l#exi$tence d#un individu ( unKno,n *! dont la 'r-$ence e$t n-ce$$it-e 'ar la contrainte de 'arent- .ui caract-ri$e un 1u,ain. >an$ cet individu! ( !cGues * et ( 6!rie *! dont le '0re n#a''arait 'a$ dan$ la 'o'ulation d-crire! 'o$eraient un 'ro%l0,e d#incon$i$tance vi$--vi$ de la d-+inition de la cla$$e ( Eum!in *. 2ette ontologie exe,'le e$t ,aintenant -crite. La 'artie $uivante! .ui traite de$ outil$ exi$tant$! utili$era cette ontologie co,,e r-+-rence. Le contenu co,'let de cette ontologie 'eut Btre con$ult- en Dnnexe de ce docu,ent.

-2;-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

$ Outils dis2onibles
Le$ outil$ 'r-$ent-$ dan$ cette $ection ne $ont 'a$ le$ $eul$ outil$ di$'oni%le$! ni +orc-,ent le$ ,eilleur$ outil$ du do,aine. Il$ $ont cit-$ ici uni.ue,ent titre d#exe,'le de la ric1e$$e logicielle .ui acco,'agne 567 et O L! ,algr- la @eune$$e relative de ce$ deux langage$.

$.'

/diteur d,ontologies Protg

=rot-g- I>AD 2005J e$t un -diteur d#ontologie$ di$tri%u- en o'en $ource 'ar l#univer$it- en in+or,ati.ue ,-dicale de >tan+ord. =rot-g- n#e$t 'a$ un outil $'-ciale,ent d-di- O L! ,ai$ un -diteur 1aute,ent exten$i%le! ca'a%le de ,ani'uler de$ +or,at$ tr0$ diver$. Le $u''ort d#O L! co,,e de no,%reux autre$ +or,at$! e$t 'o$$i%le dan$ =rot-g- grace un 'lugin d-di-.

$.'.'

Dfinition des &lasses et des 2ro2rits

Illustration 1 : .a ture de l'/cran rinci al de 2rot/g/, onglet 3 classes 4

L#inter+ace de =rot-g- e$t a$$eZ $i,'le! l#en$e,%le de$ +onctionnalit-$ de l#-diteur -tant regrou'- en cin. onglet$. Le 're,ier onglet 'r-$ente le$ cla$$e$ de l#ontologie. Il e$t 'o$$i%le de cr-er! ,odi+ier! $u''ri,er une cla$$e! et de lui attac1er de$ 'ro'ri-t-$. 2e$ 'ro'ri-t-$

-2<-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web 'euvent elle$-,B,e Btre caract-ri$-e$. La ca'ture d#-cran de la +igure < : 2a'ture de l#-cran 'rinci'al de =rot-g-! onglet ( cla$$e$ * ,ontre l#exe,'le de l#ontologie d-velo''-e dan$ la 'artie 'r-c-dente. 2ette ontologie! -crite la ,ain! a -t- i,'ort-e dan$ =rot-g- l#aide de $on 'lugin O L! et 'eut ,aintenant Btre ,odi+i-e de +aUon %ien 'lu$ con+orta%le.

$.'..

Gestion des instan&es de &lasse et de leurs 2ro2rits

L#onglet ( In$tance$ * 'er,et de cr-er de$ in$tance$ et de leur a++ecter de$ 'ro'ri-t-$! con+or,-,ent la d-+inition de$ cla$$e$ et de$ 'ro'ri-t-$ e++ectu-e dan$ l#onglet ( 2la$$e$ * :

Illustration 5 : Editeur d'instances int/gr/ 2rot/g/

>ur l#-cran 'r-$ent-! il e$t 'ar exe,'le 'o$$i%le d#-diter le$ in+or,ation$ concernant l#individu ( "!ul *. Il e$t i,'ortant de co,'rendre .ue! dan$ l#In$tance Fro)$er! un individu e$t d-$ign- 'ar $on identi+iant K$on ( rd)+@D *L! et non 'ar $on 'r-no,. &n ce $en$! le no,,age de$ individu$ de l#ontologie -crite en exe,'le e$t $an$ doute un 'eu a,%igu! %ien .ue tout +ait correct. =our de$ rai$on$ '-dagogi.ue$! il aurait -t- 'lu$ indi.u- de no,,er ce$ in$tance$ ( *omme1 *! ( *omme. *! etc.

$.'.$

le1ibilit de l,interfa&e

Hn de$ atout$ ,a@eur$ de =rot-g- e$t la +lexi%ilit- de$ +or,ulaire$ de $ai$ie de l#onglet ( In$tance$ *. &n e++et! ce +or,ulaire d8na,i.ue $#ada'te en +onction de$ cla$$e$ d-crite$ dan$ le 're,ier onglet du logiciel. =ar ailleur$! l#onglet ( 7or,$ * 'er,et de ,odi+ier l#organi$ation de$ +or,ulaire$ d#in$tance$! 'ar un $i,'le 6rag and 6ro' :

-2/-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

Illustration 16 : Editeur de !ormulaires de 2rot/g/

$.'.3

Possibilit d,effe&tuer des re+u7tes

&n+in! une +onctionnalit- int-re$$ante de =rot-g- concerne la 'o$$i%ilit- d#e++ectuer de$ re.uBte$ $ur l#ontologie en cour$ d#-dition. La ca'ture d#-cran de la +igure ( Illu$tration 11 : 9e$tionnaire de re.uBte$ de =rot-g- * 'r-$ente une re.uBte. &n l#occurence! il $#agit de c1erc1er toute$ le$ in$tance$ de la cla$$e ( Eum!in * dont le ( prenom * co,,ence 'ar ( = *. Le r-$ultat de cette re.uBte e$t -vide,,ent l#en$e,%le L"ierreM "!ulN. Le ge$tionnaire de re.uBte$ de =rot-g-! %ien .ue 'rati.ue! re$te ce'endant li,it- en +onctionnalit-$.

-30-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

Illustration 11 : 7estionnaire de re8u9tes de 2rot/g/

$..

rame*or: Jena

Jena IJ&W 2005J e$t un +ra,e)or4 -crit en Java! dont l#o%@ecti+ e$t de +ournir un environne,ent +acilitant le d-velo''e,ent d#a''lication$ d-di-e$ au )e% $-,anti.ue. Jena 'er,et de ,ani'uler de$ docu,ent$ 567! 567> et O L! et +ournit en 'lu$ un ,oteur d#in+-rence$ 'er,ettant de$ rai$onne,ent$ $ur le$ ontologie$.

$.$

OWL 5alidator

Hne +oi$ .u#un docu,ent O L e$t -crit! .ue ce $oit la ,ain ou l#aide d#un -diteur tel .ue =rot-g-! c#e$t une %onne id-e de $#a$$urer de $a validit- et de la co1-rence de$ conce't$ .u#il ex'ri,e. 6#une ,ani0re 'lu$ g-n-rale! le re$'ect d#un $tandard ou de la d-+inition d#un +or,at +avori$e l#intero'-ra%ilit-! en 'er,ettant au d-velo''eur de $#a$$urer de l#int-grit- de$ donn-e$ contenue$ dan$ le docu,ent .u#l vient d#-crire. Aout co,,e le 32 'ro'o$e un validateur CA"L K1tt':GGvalidator.)3c.orgGL! il exi$te di++-rent$ validateur$ d#ontologie$ O L. 2ertain$ valident uni.ue,ent la $8ntaxe du docu,ent! tandi$ .ue d#autre$ v-ri+ient -gale,ent la co1-rence de$ in+or,ation$ contenue$ dan$ l#ontologie.

3.3.1

Ealidateur 567 du

32

La validateur 567 du 32 K1tt':GG))).)3.orgG567GEalidatorGL 'er,et de valider de$ docu,ent$ 567. Il 'er,et donc -gale,ent de $#a$$urer .u#un docu,ent O L re$'0cte la

-31-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web $8ntaxe de 567! ce .ui donne d-@ une 're,i0re indication de la validit- d#une ontologie.

3.3.2

onder e% O L Ontolog8 Ealidator

Le validateur onder e% O L Ontolog8 Ealidator IF&2 200?J a -t- d-velo''- 'ar >ean Fec11o+er et 5a+ael EolZ dan$ le cadre du 'ro@et onder e% K1tt':GG)onder)e%.$e,antic)e%.orgGL. L#ontologie -crite en exe,'le dan$ ce docu,ent valide -vide,,ent :

Illustration 1# : :alidation de l'ontologie exem le l'aide de WonderWeb validator

6#autre$ outil$ en relation avec le )e% $-,anti.ue $ont 'ro'o$-$ 'ar onder e%[ il$ $ont di$'oni%le$ l#adre$$e 1tt':GG'1oe%u$.c$.,an.ac.u4:////GO L. &n outre du converti$$eur d#ontologie$ O L K1tt':GG'1oe%u$.c$.,an.ac.u4:////GO LG2onverterL! on notera $urtout l#outil de g-n-ration de docu,entation ( O L Ontolog8 CA"L =re$entation * K1tt':GG'1oe%u$.c$.,an.ac.u4:////GO LG=re$entationL! .ui 'er,et de cr-er de$ docu,entation$ agr-a%le$ con$ulter 'artir de toute ontologie valide.

-32-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

3.3.3

Ealidateur vO Lidator

Le validateur O L vO Lidator I5D9 2005J e++ectue la validation de docu,ent$ O L en $#a''u8ant $ur le +ra,e)or4 Jena. =u%li- en o'en $ource! vO Lidator e$t di$'oni%le co,,e ex-cuta%le KJava e$t naturelle,ent re.ui$L. Hne ver$ion en ligne K1tt':GGo)l.%%n.co,GvalidatorGL du validateur e$t -gale,ent di$'oni%le et! ,B,e $i elle ne $e,%le 'lu$ ,aintenue de'ui$ Octo%re 2003! elle +ournit un ,o8en de valider ra'ide,ent de$ ontologie$ en ligne.

Illustration 1, : .a ture d'/cran du validateur OWL vOWLidator

&ncore une +oi$! l#ontologie -crite en exe,'le e$t valide. EO Lidator retourne deux in+or,ation$ : la 're,i0re concerne l#utili$ation de +ic1ier$ de cac1e interne$ au validateur! la $econde donne de$ indication$ $ur le c1arge,ent de +ic1ier$ lor$ de la validation.

-33-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

Con&lusion

Ouel.ue$ .uinZe an$ a'r0$ $a cr-ation! le e% $e,%le en+in co,'rendre $on o%@ecti+ initial : le 'artage ra'ide de $avoir$ 'r-ci$. =a$ uni.ue,ent leur 'r-$entation anarc1i.ue ,ai$! 'lutPt! leur ,i$e di$'o$ition dan$ un +or,at non a,%igu! co,'r-1en$i%le 'ar tou$ et exten$i%le. 2r--$ dan$ un o%@ecti+ de 'artage de$ connai$$ance$ en r-$eau! le$ dernire$ langage$ du e% $-,anti.ue .ue $ont 567 et O L $ont en v-rit- le$ 're,i0re$ 'ierre$ d#une nouvelle +or,e de e% : le e% $-,anti.ue! le e% de la connai$$ance. 7acilitant l#a''ro'riation de$ $avoir$ en le$ li%-rant de la couc1e 'r-$entationnelle .ui le$ en+er,ait @u$.u#alor$! le e% $-,anti.ue contri%ue! en ce $en$! re@oindre le$ o%@ecti+$ initiaux de Ai, Ferner$ Lee. "algr- leur @eune$$e relative! 567 et O L $ont d-@ $ource d#un r-el ent1ou$ia$,e. Waturelle,ent o%@et de l#attention de$ univer$itaire$! 567! O L! et le$ autre$ d-velo''e,ent$ du e% $-,anti.ue $e,%lent -gale,ent convaincre certaine$ gro$$e$ entre'ri$e$. L#exe,'le de Jena! $outenu 'ar Ce)lett =ac4ard! e$t +lagrant. 6#une ,ani0re 'lu$ g-n-rale! la ric1e$$e logicielle .ui entoure le$ deux derni0re$ cr-ation$ du 32 ne tro,'e 'a$ : le e% de de,ain $era $-,anti.ue.

-3?-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

;ibliogra2-ie
Rfren&es normati5es <
I 32 200?aJ Ai, Fra8! Jean =aoli! 2. ". >'er%erg-"cOueen! &ve "aler! 7ranUoi$ \ergeau et Jo1n 2o)an. Extensible Mar;u Language <XML= 1>1. 1tt':GG))).)3.orgGA5G200?G5&2x,l11-200?020?G Ken ligne au 1: @uin 2005L. Araduction +ranUai$e : Le langage de balisage extensible <XML= 1>1! 1tt':GG))).8o8ode$ign.orgGdocG)3cGx,l11G. 7ran4 "anola! &ric "iller! 32 et Frian "cFride. %&' 2rimer. 1tt':GG))).)3.orgGA5G200?G5&2-rd+-'ri,er-200?0210G Ken ligne au 1: @uin 2005L. 9ra1a, Vl8ne! Jere,8 J. 2arroll et Frian "cFride. %esource &escri tion 'rame?or; <%&'=: .once ts and @bstract ABntax. 1tt':GG))).)3.orgGA5G200?G5&2-rd+-conce't$200?0210G Ken ligne au 1: @uin 2005L. 6ave Fec4ett et Frian "cFride. %&')XML ABntax A eci!ication. 1tt':GG))).)3.orgGA5G200?G5&2-rd+-$8ntax-gra,,ar-200?0210G Ken ligne au 1: @uin 2005L. =atric4 Ca8e$ et Frian "cFride. %&' Aemantics. 1tt':GG))).)3.orgGA5G200?G5&2-rd+,t-200?0210G Ken ligne au 1: @uin 2005L. Jan 9rant! 6ave Fec4ett et Frian "cFride. %&' $est .ases. 1tt':GG))).)3.orgGA5G200?G5&2-rd+-te$tca$e$-200?0210G Ken ligne au 1: @uin 2005L. 6an Fric4le8! 5.E. 9u1a et Frian "cFride. %&' :ocabularB &escri tion Language 1>6: %&' Ac"ema. 1tt':GG))).)3.orgGA5G200?G5&2-rd+-$c1e,a-200?0210G Ken ligne au 1: @uin 2005L. "ic1ael V. >,it1! 21ri$ elt8 et 6e%ora1 L. "c9uinne$$. OWL Web OntologB Language 7uide. 1tt':GG))).)3.orgGA5G200?G5&2-o)l-guide-200?0210G Ken ligne au 1: @uin 2005L. Araduction +ranUai$e : Le langage d'ontologie Web OWL - 7uide! 1tt':GG))).8o8ode$ign.orgGdocG)3cGo)l-guide-200?0210G. Je++ Ce+lin. OWL Web OntologB Language - Cse .ases and %e8uirements. 1tt':GG))).)3.orgGA5G200?G5&2-)e%ont-re.-200?0210G Ken ligne au 1: @uin 2005L. Araduction +ranUai$e : Les cas et conditions d'utilisation du langage d'ontologie Web OWL! 1tt':GG))).8o8ode$ign.orgGdocG)3cG)e%ont-re.-200?0210G. 6e%ora1 L. "c9uinne$$ et 7ran4 van Car,elen. OWL Web OntologB Language Overvie?. 1tt':GG))).)3.orgGA5G200?G5&2-o)l-+eature$-200?0210G Ken ligne au 1: @uin 2005L. Araduction +ranUai$e : :ue d'ensemble du langage d'ontologie Web OWL! 1tt':GG))).8o8ode$ign.orgGdocG)3cGo)l-+eature$-200?0210G. "i4e 6ean! 9uu$ >c1rei%er! >ean Fec11o+er! 7ran4 van Car,elen! Ji, Cendler! Ian Corroc4$! 6e%ora1 L. "c9uinne$$! =eter 7. =atel->c1neider et L8nn Dndrea >tein. OWL Web OntologB Language - %e!erence. 1tt':GG))).)3.orgGA5G200?G5&2-o)l-re+200?0210G Ken ligne au 1: @uin 2005L. Araduction +ranUai$e : La r/!/rence du langage d'ontologie Web OWL! 1tt':GG))).8o8ode$ign.orgGdocG)3cGo)l-re+-200?0210G. =eter 7. =atel->c1neider! =atric4 Ca8e$ et Ian Corroc4$. OWL Web OntologB Language Aemantics and @bstract ABntax.1tt':GG))).)3.orgGA5G200?G5&2-o)l-$e,antic$200?0210G Ken ligne au 1: @uin 2005L. Araduction +ranUai$e : La s/manti8ue et la sBntaxe abstraite du langage d'ontologie Web OWL! 1tt':GG))).8o8ode$ign.orgGdocG)3cGo)l-$e,antic$-200?0210G.

I 32 200?%J I 32 200?cJ

I 32 200?dJ

I 32 200?eJ I 32 200?+J I 32 200?gJ

I 32 200?1J

I 32 200?iJ

I 32 200?@J

I 32 200?4J

I 32 200?lJ

-35-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web


I 32 200?,J Jere,8 J. 2arroll! Jo$ 6e 5oo. OWL Web OntologB Language - $est .ases. 1tt':GG))).)3.orgGA5G200?G5&2-o)l-te$t-200?0210G Ken ligne au 1: @uin 2005L. Araduction +ranUai$e : Les Deux d'essais du langage d'ontologie Web OWL! 1tt':GG))).8o8ode$ign.orgGdocG)3cGo)l-te$t-200?0210G.

Rfren&es non normati5es <


IF&2 200?J IFO5 200?J >ean Fec11o+er et 5a'1ael EolZ. WonderWeb OWL OntologB :alidator. 1tt':GG'1oe%u$.c$.,an.ac.u4:////GO LGEalidator Ken ligne au 1: @uin 2005L. Xavier Forderie! Journal 6u Wet. %&' et OWL our donner du sens au Web. 1tt':GGdevelo''eur.@ournaldunet.co,GtutorielGx,lG0?0322-x,l-)e%-$e,anti.ue-rd+o)l1a.$1t,l Ken ligne au 1: @uin 2005L. 6D5=D. $"e &@%2@ @gent Mar;u Language Eome age <&@ML=. 1tt':GG))).da,l.orgG Ken ligne au 1: @uin 2005L. 7oundation +or 5e$earc1 and Aec1nolog8 N Cella$ K7O5ACL. $"e %&' FuerB Language <%FL=. 1tt':GG13/./1.1<3.30:/0/0G567G5OLGKen ligne au 1: @uin 2005L. "att1e) Corridge! Colger Vnu%lauc1! Dlan 5ector! 5o%ert >teven$ et 21ri$ roe. @ 2ractical 7uide $o Guilding OWL Ontologies Csing $"e 2rot/g/-OWL 2lugin and .O-O&E $ools. 1tt':GG))).co-ode.orgGre$ource$Gtutorial$G=rotegeO LAutorial.'d+ Ken ligne au 1: @uin 2005L. Hena I @ Aemantic Web 'rame?or; !or Hava. 1tt':GG@ena.$ource+orge.netG Ken ligne au 1: @uin 2005L. Hniver$it8 o+ >out1ern 2ali+ornia#$ - In+or,ation >cience$ In$titute. LOOM 2roDect Eome 2age. 1tt':GG))).i$i.eduGi$dGLOO"G Ken ligne au 1: @uin 2005L. O en Jno?ledge Gase .onnectivitB. 1tt':GG))).ai.$ri.co,G]o4%cG Ken ligne au 1: @uin 2005L. O enWeb, 2005L. our les standards du Web. 1tt':GGo'en)e%.eu.orgG Ken ligne au 1: @uin

I6D5 2005J I7O5 2005J ICO5 2005J

IJ&W 2005J ILOO 200?J IOVF 1//<J IO=& 2005J I5D9 2005J I>AD 1//<J I>AD 2005J I &F 200?J

6avid 5ager! Aro8 >el+. In!ormation sur le roDet vOWLlidator. 1tt':GG'ro@ect$.$e,)e%central.orgG'ro@ect$Gvo)lidatorG Ken ligne au 1: @uin 2005L. >tan+ord Logic grou'. Jno?ledge Interc"ange 1tt':GGlogic.$tan+ord.eduG4i+G Ken ligne au 1: @uin 2005L. 'ormat <JI'=.

Hniver$it- de >tan+ord. $"e 2rot/g/ OntologB Editor and Jno?ledge @c8uisition ABstem. 1tt':GG'rotege.$tan+ord.eduG Ken ligne au 1: @uin 2005L. Wi;i !ranco "one du ?eb s/manti8ue. 1tt':GG)e%$e,anti.ue.orgG Ken ligne au 1: @uin 2005L.

-3:-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

Li&en&e

2e docu,ent e$t 'lac- $ou$ licence 2reative 2o,,on$ - =aternit- - =a$ d#Htili$ation 2o,,erciale - =artage de$ 2ondition$ Initiale$ l#Identi.ue 2.5. Il a -t- r-dig- dan$ le cadre d#un 'ro@et l#&cole Wationale >u'-rieure de$ A-l-co,,unication$.

-3;-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web

Code &om2let de l,ontologie e1em2le


<?xml version="1.0" encoding="@7:-88J(-1"?> <9D:;T<"= rd)+5DF > <9=?T@T< )!mille "*$$p+//l!co$.org/pu1lic/o,l/)!mille/" > <9=?T@T< o,l "*$$p+//,,,.,-.org/.00./0'/o,l/" > <9=?T@T< xsd "*$$p+//,,,.,-.org/.001/2637c*em!/" > A> <rd)+5DF xmlns xmlns+)!mille xml+1!se xmlns+o,l xmlns+rd) xmlns+rd)s xmlns+xsd

= = = = = = =

"B)!milleC" "B)!milleC" "B)!milleC" "*$$p+//,,,.,-.org/.00./0'/o,l/" "*$$p+//,,,.,-.org/1(((/0./..-rd)-s#n$!x-ns/" "*$$p+//,,,.,-.org/.000/01/rd)-sc*em!/" "*$$p+//,,,.,-.org/.001/2637c*em!/">

<o,l+:n$olog# rd)+!1ou$=""> <rd)s+commen$>:n$ologie d8criv!n$ l! )!mille Dupond</rd)s+commen$> <rd)s+l!1el>:n$ologie de l! )!mille Dupond</rd)s+l!1el> </o,l+:n$olog#> <9-- D8)in$ion des cl!sses --> <o,l+;l!ss rd)+@D="Eum!in"> <rd)s+su1;l!ss:)> <o,l+5es$ric$ion> <o,l+on"roper$# rd)+resource="/!"our"ere" /> <o,l+c!rdin!li$# rd)+d!$!$#pe="BxsdCin$">1</o,l+c!rdin!li$#> </o,l+5es$ric$ion> </rd)s+su1;l!ss:)> <rd)s+su1;l!ss:)> <o,l+5es$ric$ion> <o,l+on"roper$# rd)+resource="/nom" /> <o,l+c!rdin!li$# rd)+d!$!$#pe="BxsdCnon?eg!$ive@n$eger">1</o,l+c!rdin!li$#> </o,l+5es$ric$ion> </rd)s+su1;l!ss:)> <rd)s+su1;l!ss:)> <o,l+5es$ric$ion> <o,l+on"roper$# rd)+resource="/prenom" /> <o,l+min;!rdin!li$# rd)+d!$!$#pe="BxsdCnon?eg!$ive@n$eger">1</o,l+min;!rdin!li$#> </o,l+5es$ric$ion> </rd)s+su1;l!ss:)> <rd)s+su1;l!ss:)> <o,l+5es$ric$ion>

-3<-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web


<o,l+on"roper$# rd)+resource="/d!$eDe?!iss!nce" /> <o,l+c!rdin!li$# rd)+d!$!$#pe="BxsdCnon?eg!$ive@n$eger">1</o,l+c!rdin!li$#> </o,l+5es$ric$ion> </rd)s+su1;l!ss:)> <rd)s+su1;l!ss:)> <o,l+5es$ric$ion> <o,l+on"roper$# rd)+resource="/es$6!rieH"/> <o,l+m!x;!rdin!li$# rd)+d!$!$#pe="BxsdCnon?eg!$ive@n$eger">1</o,l+m!x;!rdin!li$#> </o,l+5es$ric$ion> </rd)s+su1;l!ss:)> <rd)s+su1;l!ss:)> <o,l+5es$ric$ion> <o,l+on"roper$# rd)+resource="/*!1i$eH" /> <o,l+c!rdin!li$# rd)+d!$!$#pe="BxsdCnon?eg!$ive@n$eger">1</o,l+c!rdin!li$#> </o,l+5es$ric$ion> </rd)s+su1;l!ss:)> </o,l+;l!ss> <o,l+;l!ss rd)+@D="Eomme"> <rd)s+su1;l!ss:) rd)+resource="/Eum!in" /> </o,l+;l!ss> <o,l+;l!ss rd)+@D="Femme"> <rd)s+su1;l!ss:) rd)+resource="/Eum!in" /> <rd)s+su1;l!ss:)> <o,l+5es$ric$ion> <o,l+on"roper$# rd)+resource="/nomDe euneFille" /> <o,l+m!x;!rdin!li$# rd)+d!$!$#pe="BxsdCnon?eg!$ive@n$eger">1</o,l+m!x;!rdin!li$#> </o,l+5es$ric$ion> </rd)s+su1;l!ss:)> </o,l+;l!ss> <o,l+;l!ss rd)+@D="Fille"> <rd)s+su1;l!ss:)> <o,l+5es$ric$ion> <o,l+on"roper$# rd)+resource="/seTrouve=n" /> <o,l+c!rdin!li$# rd)+d!$!$#pe="BxsdCin$">1</o,l+c!rdin!li$#> </o,l+5es$ric$ion> </rd)s+su1;l!ss:)> <rd)s+su1;l!ss:)> <o,l+5es$ric$ion> <o,l+on"roper$# rd)+resource="/nomFille" /> <o,l+c!rdin!li$# rd)+d!$!$#pe="BxsdCin$">1</o,l+c!rdin!li$#> </o,l+5es$ric$ion> </rd)s+su1;l!ss:)> </o,l+;l!ss>

-3/-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web


<o,l+;l!ss rd)+@D=""!#s"> <rd)s+su1;l!ss:)> <o,l+5es$ric$ion> <o,l+on"roper$# rd)+resource="/nom"!#s" /> <o,l+c!rdin!li$# rd)+d!$!$#pe="BxsdCin$">1</o,l+c!rdin!li$#> </o,l+5es$ric$ion> </rd)s+su1;l!ss:)> </o,l+;l!ss> <9-- d8)ini$ion des propri8$8s --> <9-- "ropri8$8s dDo1%e$ --> <o,l+:1%ec$"roper$# rd)+@D="*!1i$eH"> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="/Fille" /> </o,l+:1%ec$"roper$#> <o,l+:1%ec$"roper$# rd)+@D="!"our"ere"> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="/Eomme" /> </o,l+:1%ec$"roper$#> <o,l+:1%ec$"roper$# rd)+@D="!Un3ienDeFr!$erni$e"> <rd)+$#pe rd)+resource="Bo,lC7#mme$ric"roper$#" /> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="/Eum!in" /> </o,l+:1%ec$"roper$#> <o,l+:1%ec$"roper$# rd)+@D="es$6!rieH"> <rd)+$#pe rd)+resource="Bo,lC7#mme$ric"roper$#" /> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="/Eum!in" /> </o,l+:1%ec$"roper$#> <o,l+:1%ec$"roper$# rd)+@D="seTrouve=n"> <rd)s+dom!in rd)+resource="/Fille" /> <rd)s+r!nge rd)+resource="/"!#s" /> </o,l+:1%ec$"roper$#> <9-- "ropri8$8s de $#pe de donn8e --> <o,l+D!$!$#pe"roper$# rd)+@D="nom"> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="BxsdCs$ring" /> </o,l+D!$!$#pe"roper$#> <o,l+D!$!$#pe"roper$# rd)+@D="prenom"> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="BxsdCs$ring" /> </o,l+D!$!$#pe"roper$#>

-?0-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web


<o,l+D!$!$#pe"roper$# rd)+@D="nomDe euneFille"> <rd)s+dom!in rd)+resource="/Femme" /> <rd)s+r!nge rd)+resource="BxsdCs$ring" /> </o,l+D!$!$#pe"roper$#> <o,l+D!$!$#pe"roper$# rd)+@D="d!$eDe?!iss!nce"> <rd)s+dom!in rd)+resource="/Eum!in" /> <rd)s+r!nge rd)+resource="BxsdCd!$e" /> </o,l+D!$!$#pe"roper$#> <o,l+D!$!$#pe"roper$# rd)+@D="nomFille"> <rd)s+dom!in rd)+resource="/Fille" /> <rd)s+r!nge rd)+resource="BxsdCs$ring" /> </o,l+D!$!$#pe"roper$#> <o,l+D!$!$#pe"roper$# rd)+@D="nom"!#s"> <rd)s+dom!in rd)+resource="/"!#s" /> <rd)s+r!nge rd)+resource="BxsdCs$ring" /> </o,l+D!$!$#pe"roper$#> <9-- Hsser$ion de )!i$s --> <9-- Eum!ins --> <Eomme rd)+@D="unKno,n"> <nom>unKno,n</nom> <prenom>unKno,n</prenom> <d!$eDe?!iss!nce>0001-01-01</d!$eDe?!iss!nce> <!"our"ere rd)+resource="/unKno,n" /> <*!1i$eH rd)+resource="/"!ris" /> </Eomme> <Eomme rd)+@D=""ierre"> <nom>Dupond</nom> <prenom>"ierre</prenom> <d!$eDe?!iss!nce>1('8-08-18</d!$eDe?!iss!nce> <!Un3ienDeFr!$erni$e rd)+resource="/"!ul" /> <!"our"ere rd)+resource="/ !cGues" /> <*!1i$eH rd)+resource="/Ulm" /> </Eomme> <Eomme rd)+@D=""!ul"> <nom>Dupond</nom> <prenom>"!ul</prenom> <d!$eDe?!iss!nce>1('I-0J-.I</d!$eDe?!iss!nce> <es$6!rieH rd)+resource="/6!rie" /> <!"our"ere rd)+resource="/ !cGues" /> <*!1i$eH rd)+resource="/"!ris" /> </Eomme>

-?1-

Xavier Lacot - Introduction OWL, un langage XML d'ontologies Web


<Eomme rd)+@D=" !cGues"> <nom>Dupond</nom> <prenom> !cGues</prenom> <d!$eDe?!iss!nce>1(&I-1.-.J</d!$eDe?!iss!nce> <!"our"ere rd)+resource="/unKno,n" /> <*!1i$eH rd)+resource="/"!ris" /> </Eomme> <Femme rd)+@D="6!rie"> <nom>Dupond</nom> <prenom>6!rie</prenom> <d!$eDe?!iss!nce>1('I-1.-1'</d!$eDe?!iss!nce> <nomDe euneFille>6!r$in</nomDe euneFille> <!"our"ere rd)+resource="/unKno,n" /> <*!1i$eH rd)+resource="/"!ris" /> </Femme> <9-- "!#s --> <"!#s rd)+@D="Hllem!gne"> <nom"!#s>Hllem!gne</nom"!#s> </"!#s> <"!#s rd)+@D="Fr!nce"> <nom"!#s>Fr!nce</nom"!#s> </"!#s> <9-- Filles --> <Fille rd)+@D=""!ris"> <nomFille>"!ris</nomFille> <seTrouve=n rd)+resource="/Fr!nce" /> </Fille> <Fille rd)+@D="Ulm"> <nomFille>Ulm</nomFille> <seTrouve=n rd)+resource="/Hllem!gne" /> </Fille> </rd)+5DF>

-?2-

Vous aimerez peut-être aussi