OWL : un langage d'ontologies pour le web

Une courte présentation en français

par Jérôme Euzenat et Jean-François Baget
INRIA Rh�ne-Alpes
Adaptation d'un texte rédigé pour le site www.standarmedia.com.

Le web s�mantique a l'ambition de construire pour les machines l'infrastructure correspondant au web actuel et d'offrir aux humains la puissance des machines pour g�rer l'information disponible dans ce web.

M�me si RDF ("Resource Description Framework", un langage pour décrire les ressources du Web) est un format tr�s ouvert et mall�able, si l'on d�sire interroger une base documentaire ou le web, il est n�cessaire d'identifier les termes sur lesquels l'interrogation doit porter. Ces termes identifiant les grandes classes d'objets impliqu�s et leurs relations constituent un mod�le conceptuel du domaine et sont d�crits dans une "ontologie". Les ontologies fournissent le vocabulaire propre � un domaine et fixent - avec un degr� de formalisation variable - le sens des concepts et des relations entre ceux-ci. Ces concepts (et ces relations) sont g�n�ralement organis�s par une relation de sp�cialisation.

Ainsi, on voudra d�crire une taxonomie des types de documents (Livre, Rapports) utilis�s dans une organisation, parmi lesquels on identifiera des sous-classes (Biographies, Rapports contractuels, etc.). On voudra contraindre leur structure (par exemple, un livre a un unique titre et un unique num�ro ISBN, une Biographie a pour objet une personne). On voudra interroger des ressources utilisant cette ontologie et en tirer parti (par exemple, si je cherche un Livre, en retournant aussi les Biographies, si je cherche une Biographie en retournant aussi les ouvrages ayant pour objet une personne).

Exprimer de la connaissance sur le web est l'ambition du web s�mantique. Au-del� de ce simple mot d'ordre, diffuser des ontologies sur le web est le moyen de permettre � d'autres de se les approprier, de les �tendre et de les r�utiliser. Mais si les ontologies doivent s'�changer librement sur le web, il est n�cessaire de les int�grer plus aux langages du web. Pour cela on dispose de langages compatibles avec RDF et permettant de le contraindre. Ces langages sont RDFS et OWL qui sont pr�sent�s dans la suite.

Origine

� partir de RDF, le langage RDF Sch�ma (RDFS) a �t� d�velopp�. Ind�pendamment, diff�rents langages de description d'ontologie ont �t� d�velopp�s pour le web. Le projet europ�en ontoknowledge avait d�velopp� le langage OIL comme une extension d'XML Sch�ma proche de RDFS offrant des primitives inspir�es des logiques de descriptions. Le programme am�ricain DAML a pour sa part propos� le langage DAML-ONT, fond� sur RDF, et plus proche des langages objets.

Ces deux langages ont �t� fusionn�s en un langage connu sous le nom de DAML+OIL. OWL est le successeur de DAML+OIL. Il a �t� d�velopp� par le groupe de travail WebOnt du W3C et constitue une recommandation du W3C depuis f�vrier 2004. OWL a principalement �t� d�velopp� par les acteurs � acad�miques � (m�me s'ils travaillent pour des soci�t�s priv�es) et les d�veloppeurs d'outils pour le web s�mantique. La conception du langage a surtout consisté � en d�finir la base s�mantique en liaison avec le Web et avec le langage RDF.

Ce langage est partie prenante dans l'architecture en couches propos�e par le W3C pour le web s�mantique.Il est n�cessaire qu'un langage standard puisse s'imposer pour servir de r�f�rence aux d�veloppements autour du web s�mantique, m�me si cela ne doit pas emp�cher d'autre langages d'exister.

OWL : un dr�le d'oiseau ?

RDF Sch�ma a pour but d'�tendre RDF en d�crivant plus pr�cis�ment les ressources utilis�es pour �tiqueter les graphes. Pour cela, il fournit un m�canisme permettant de sp�cifier les classes dont les ressources seront des instances, comme les propri�t�s. RDFS s'�crit toujours � l'aide de triplets RDF, en d�finissant la s�mantique de nouveaux mots-cl�s comme:

<#041522862X rdf:type Autobiography>
la ressource #041522862X a pour type Autobiography (qui est donc une classe) ;
<Autobiography rdfs:subClassOf Biography>
la classe Autobiography est une sous-classe de Biography, toutes les instances de Autobiography sont donc des instances de Biography ;
<bib:publisher rdf:type rdfs:Property>
affirme que bib:publisher est une propri�t� (une ressource utilisable pour �tiqueter les arcs) ;
<bib:publisher rdfs:range Publisher>
affirme que toute ressource utilis�e comme extr�mit� d'un arc �tiquet� par bib:publisher sera une instance de la classe Publisher.

Ces primitives constituent la base de tout langage d'ontologie, permettant de signifier l'appartenance d'un objet � une cat�gorie, de d�clarer la relation de g�n�ralisation entre cat�gories et de typer des objets reli�s par une relation.

Ainsi que le montre l'extrait suivant, il est possible de d�crire une hi�rarchie de classes de r�f�rences (Reference est plus g�n�ral que Book qui est plus g�n�ral que Biography qui l'est plus que Autobiography). Il est aussi possible de d�crire les types d'objets attendus aux extr�mit�s des arcs : ainsi la propri�t� author s'applique � une oeuvre et a pour valeur une personne.

<rdfs:Class rdf:ID="Reference" />

<rdfs:Class rdf:ID="Book">
	<rdfs:subClassOf rdf:resource="#Reference" />
</rdfs:Class>

<rdfs:Class rdf:ID="Biography">
	<rdfs:subClassOf rdf:resource="#Book" />
</rdfs:Class>

<rdfs:Class rdf:ID=" Autobiography ">
	<rdfs:subClassOf rdf:resource="#Biography" />
</rdfs:Class>

<rdf:Property rdf:ID="bib:author">
	<rdfs:domain rdf:resource="#Reference"/>
	<rdfs:range rdf:resource="&foaf;Person"/>
</rdf:Property>

<rdfs:Class rdf:ID="Publisher">
	<rdfs:subClassOf rdf:resource="&foaf;Organization" />
</rdfs:Class>
Figure 1 : Une taxonomie en RDFS.

RDFS ne fournit que des m�canismes tr�s primitifs pour sp�cifier ces classes. OWL fournit un grand nombre de constructeurs permettant d'exprimer de fa�on tr�s fine les propri�t�s des classes d�finies.

On peut appr�hender le langage OWL en observant la d�finition d'un livre et d'une biographie pr�sent�e ici. Disons qu'en plus des primitives de RDFS, OWL permet de contraindre plus pr�cis�ment la description des classes (en les d�crivant comme union, intersection, compl�mentaire d'autres descriptions ou comme l'ensemble d'un certain nombre d'individus), des domaines de relations (en sp�cifiant le type de toutes leurs valeurs, ou d'un certain nombre de leurs valeurs) ou des relations (en les d�clarant transitives, sym�triques ou en sp�cifiant leur inverse). Par ailleurs, il est possible de d�clarer que deux classes ou ressources sont �quivalentes ou, au contraire, diff�rentes.

Ainsi, les documents pr�c�dents peuvent �tre r�gis par l'ontologie OWL contenant les classes suivantes:

<owl:Class rdf:ID="Book">
	<owl:intersectionOf>
		<owl:Class rdf:resource="#Reference" />
		<owl:Restriction>
			<owl:onProperty rdf:resource="#title" />
			<owl:minCardinality rdf:datatype="&xsd;Integer">1</owl:minCardinality>
		</owl:Restriction>
		<owl:Restriction>
			<owl:onProperty rdf:resource="#publisher" />
			<owl:allValuesFrom rdf:resource="#Publisher" />
		</owl:Restriction>
	</owl:intersectionOf>
</owl:Class>

<owl:Class rdf:ID="Biography">
	<owl:intersectionOf>
		<owl:Class rdf:resource="#Biography"/>
		<owl:Restriction>
			<owl:onProperty rdf:resource="#object"/>
			<owl:allValuesFrom rdf:resource="&foaf;Person"/>
		</owl:Restriction>
	</owl:intersectionOf>
</owl:Class>
Figure 2 : La premi�re expression OWL s'interpr�te comme � la classe Book est l'intersection de la classe Reference, des objets dont la propri�t� title a au moins une valeur et la propri�t� publisher a pour valeur un Publisher � ; la seconde signifie que � Les Biography sont des Book dont l'objet est une Person

Dans les ontologies comme dans les descriptions, l'ouverture est de mise. Ainsi, les ontologies peuvent faire r�f�rence � des concepts introduits dans d'autres ontologies. On peut le voir dans les descriptions pr�c�dentes o� la classe Person n'est pas d�finie dans l'ontologie bibliographique mais dans l'ontologie FOAF ("friend-of-a-friend", http://www.foaf-project.org). Similairement, on a pu voir sur la figure 1 que la classe Publisher est une sous-classe de la classe FOAF Organization : il est donc possible, non seulement d'utiliser mais de prolonger une ontologie existante (pour ses propres besoins, bien entendu). Il est m�me possible d'aller plus loin et d'introduire des classes au sein d'une hi�rarchie existante (par exemple, dans une ontologie du droit, de d�clarer que la classe PersonneMorale est une superclasse des classes FOAF Person et Organization). Il est tout aussi possible de d�clarer deux classes ou deux relations d'ontologies diff�rentes comme �quivalentes ou au contraire incompatibles. Enfin, il est possible de contraindre certaines caract�ristiques de classes ext�rieures � l'ontologie. Ainsi, il est possible d'exprimer que l'image de la propri�t� publisher est un objet de la classe FOAF Organization qui poss�de au moins une address !

Les traits du langage

La syntaxe d'un document OWL est donn�e par celle des diff�rents constructeurs utilis�s dans ce document. Elle est le plus souvent donn�e sous la forme de triplets RDF.

Pour des raisons de modularit�, OWL a �t� fractionn� en trois langages distincts :

Nous donnons ci-dessous un panorama des constructeurs utilis�s dans OWL, dans une syntaxe simplifi�e (les mots-cl�s r�serv�s de OWL sont pr�fix�s de OWL) :

Nous n'avons pas cit� ici certains constructeurs, qui peuvent �tre trivialement impl�ment�s gr�ce � ceux que nous avons �voqu�s (par exemple owl:sameClassAs, servant � affirmer que deux classes sont identiques, peut �tre �crit gr�ce � deux rdfs:subClassOf).

Apports

On peut se demander pourquoi ne pas se contenter d'utiliser XML pour construire ce web s�mantique, ou plut�t XML � la place de RDF et XML Sch�ma � la place de OWL. Il y a plusieurs raisons � cela. La premi�re tient � l'ouverture : introduire la possibilit� d'�tendre tout document XML, ainsi que pr�sent� ci-dessus, va � l'encontre de la philosophie de XML Sch�ma qui tend plut�t � contraindre. Par ailleurs, ces deux langages ne poss�dent pas de s�mantique ce qui rend difficile la justification des inf�rences que l'on pourrait y faire. Enfin, un sch�ma XML n'est pas une ontologie car son but est de valider un document, pas d'en d�finir les cons�quences. Il est donc difficile de l'utiliser pour faire des inf�rences.

Comme RDF, OWL est dot� d'une s�mantique en th�orie des mod�les permettant de sp�cifier tout ce qui est cons�quence d'un ensemble d'assertions de OWL. Elle est directement issue des logiques de descriptions. La s�mantique associ�e aux mots-cl�s de OWL est plus pr�cise que celle associ�e aux documents RDF repr�sentant une ontologie OWL.

L'int�r�t d'utiliser une ontologie est de pouvoir valider ses sources : par exemple, �tre s�r que l'�diteur d'un ouvrage est bien un Publisher et que son adresse est connue. Mais c'est surtout d'augmenter le nombre d'inf�rences possibles � partir des donn�es. Plus pr�cis�ment, une telle mod�lisation devrait permettre de r�pondre � des requ�tes complexes utilisant les mod�les pour compl�ter la connaissance disponible. Ainsi, plus on fait intervenir d'ontologies - pertinentes - dans l'�valuation d'une requ�te, plus les r�ponses sont pertinentes.

Disposer de telles ontologies, et de moteurs d'inférence respectant la sémantique de OWL, ouvre la voie à de nombreuses applications:

Ainsi, si l'on �tudie la vie de Bertrand Russell, on voudra trouver les Biographies de tous les coauteurs et �l�ves de Bertrand Russell. Bien entendu une telle requ�te devra retourner les Biographies et les Autobiographies ; elle devra aussi trouver les personnes dont le doctorat a eu comme superviseur Bertrand Russell. Ces deux informations n'ont pas � �tre dans la requ�te, il suffit qu'elles soient pr�sentes dans l'ontologie pour �tre exploit�es.

L'information sur les �l�ves d'un auteur n'est typiquement pas celle que l'on trouve dans les notices bibliographiques actuelles mais que l'on peut trouver sur les pages web des auteurs comme sur les sites qui leur sont consacr�s. Leur encodage en RDF et OWL permettra de les exploiter.

Disposer d'un langage de description d'ontologies standard permet principalement de publier sur le web des ontologies qui puissent être appréhendées par de nombreux acteurs. Indépendement de l'origine des données, elles pourront être interprétées en fonction d'une ontologie décrite en OWL.

Cela va en outre permettre aux chercheurs d'expérimenter les bases du web sémantique en s'appuyant sur une base relativement consensuelle.

Le futur de OWL

Le futur de OWL est tr�s li� au d�veloppement du web s�mantique. Nous voyons trois points cruciaux � son d�veloppement. Tout d'abord la mise � disposition et la normalisation d'ontologies r�duites mais de port�e g�n�rale. C'est le cas, par exemple, de l'ontologie FOAF. Sur un telle base, il sera alors possible de cr�er des applications int�ressantes. Ensuite, la description de sources d'information � l'aide de ces ontologies permettra de disposer d'applications utiles. Enfin, le d�veloppement d'outils permettant de manipuler les ontologies OWL et ce qu'elles d�crivent en RDF de mani�re transparente offrira des applications peu co�teuses et int�gr�es. Des moteurs d'inf�rence, encore trop peu nombreux, ont d�j� �t� impl�ment�s pour des sous-ensembles significatifs de OWL DL (dans le cadre des logiques de descriptions) et sont utilis�s dans divers outils (OilEd, Prot�g�...).

Il sera alors temps de songer � �tendre le langage, en particulier � l'aide de r�gles.

Ressources

Les principales ressources concernant OWL sont les documents d�crivant le langage. Ils ont tous �t� traduits en fran�ais (pour obtenir la traduction, non normative, cliquez sur le (F), mais la version anglaise reste la r�f�rence. La description du langage est rassembl�e en 6 documents:

La Vue d'ensemble (F)
pr�sente le langage OWL d'une mani�re g�n�rale pour approcher le langage rapidement (pour d�cider) ;
Le Guide (F)
donne une vision illustr�e de l'utilisation de OWL (pour s'initier aux concepts du langage et pour utiliser);
La R�f�rence (F)
est la r�f�rence d�taill� de chacun des �l�ments du langage (pour utiliser);
La S�mantique (F)
d�taille la s�mantique du langage (pour impl�menter un outil).
Les jeux d'essais (F)
donne un ensemble tr�s complet de tests unitaires (pour impl�menter un outil);
Les cas et conditions d'utilisation (F)
pr�sente les cas pour lesquels OWL a �t� con�u (pour d�cider).

Quelques références

Très peu de textes décrivent OWL. On peut cependant citer:


http://www.inrialpes.fr/exmo/cooperation/webont/owl.html © INRIA Rhône-Alpes, 2004

Feel free to comment to Jerome . Euzenat � inrialpes . fr, $Id: owl.html,v 1.4 2016/12/25 21:19:29 euzenat Exp $