Web Ontology Language
|
Cet article est une ébauche concernant le Web sémantique. Vous pouvez partager vos connaissances en l’améliorant (comment ?) — pour plus d’indications, visitez le projet Web Sémantique.
|
Web Ontology Language (OWL) est un langage de représentation des connaissances construit sur le modèle de données de RDF. Il fournit les moyens pour définir des ontologies web structurées. Sa deuxième version est devenue une recommandation du W3C fin 2012[1],[2].
Le langage OWL est basé sur les recherches effectuées dans le domaine de la logique de description. Il peut être vu en quelque sorte comme un standard informatique qui met en œuvre certaines logiques de description, et permet à des outils qui comprennent OWL de travailler avec ces données, de vérifier que les données sont cohérentes, de déduire des connaissances nouvelles ou d'extraires certaines informations de cette base de données. Il permet notamment de décrire des ontologies, c'est-à-dire qu'il permet de définir des terminologies pour décrire des domaines concrets. Une terminologie se constitue de concepts et de propriétés (aussi appelés « rôles » en logiques de description). Un domaine se compose d'instance de concepts.
Une extension de RDF
En pratique, le langage OWL est conçu comme une extension de Resource Description Framework (RDF) et RDF Schema (RDFS) ; OWL est destiné à la description de classes au travers de caractéristiques des instances de cette classes et de types de propriétés. De ce fait, il est plus expressif que RDF et RDFS, auxquels certains reprochent une insuffisance d'expressivité due à la seule définition des relations entre objets par des assertions. OWL apporte aussi une meilleure intégration, une évolution, un partage et une inférence plus facile des ontologies.
RDF permet par exemple de décrire que <Jean> est le père de <Paul>, au travers des individus <Jean>, <Paul>, et de la relation est le père de. RDFS ajoute les concepts, qui permettent de regrouper les individus en groupe comme <humain>, <hommes>, <femmes>, de préciser des relations entre ces groupes (ou concepts), comme toute <femme> est un <humain>, qui se formalise en <femme> sous-classe de <humain> (SubclassOf dans la terminologie RDFS/OWL), et de préciser que Jeanne est une femme sous la forme d'une affirmation comme <Jeanne> est une instance de <femme> (InstanceOf en OWL, qu'on pourrait traduire par exemple par est un exemple de).
Aux concepts de classe, de ressource, de littéral et de propriétés des sous-classes, de sous-propriétés, de champs de valeurs et de domaines d'application déjà présents dans RDFS, OWL ajoute les concepts de classes équivalentes, de propriétés équivalentes, d'égalité de deux ressources, de leurs différences, du contraire, de symétrie et de cardinalité… OWL permet de préciser les concepts d'<humain>, d'<homme> et <femme> en exprimant formellement qu'un humain a certaines caractéristiques, comme un sexe, et donc que si <Jean> est un <humain>, on doit pouvoir écrire une affirmation comme <Jean> a pour sexe <masculin> en décrivant la classe des humains. Ce qui permet aussi par conséquent de préciser les concepts d'<homme> et de <femme> en décrivant en OWL que non seulement les <hommes> ont un sexe comme tout humain, mais que les hommes ont la propriété supplémentaire d'avoir un sexe masculin.
Les trois niveaux d'OWL
OWL permet, grâce à sa sémantique formelle basée sur une fondation logique largement étudiée, de définir des associations plus complexes des ressources ainsi que les propriétés de leurs classes respectives. OWL définit trois sous-langages, du moins expressif au plus expressif : OWL-Lite, OWL-DL et OWL-Full. Des algorithmes décidables existent pour la totalité de OWL-Lite. Quoique les problèmes d'inférence d'OWL-DL puissent être résolus en temps exponentiel de façon générale, le comportement est souvent satisfaisant. Il n'existe aucun algorithme d'inférence décidable pour OWL-Full. La deuxième version d'OWL étend notamment OWL-DL pour permettre certaines formes simples de métamodélisation, en l’occurrence de créer des concepts de concepts.
OWL-Lite
OWL-Lite est la version la plus simple du langage OWL. Il correspond à la logique de descriptions . Sa simplicité lui permet d’avoir une théorie de complexité faible, et de garantir que les questions qu'on peut poser à un moteur d'inférence sur une base de donnée travaillant avec ce standard ont toujours une réponse et que cette réponse est calculable en temps raisonnable.
OWL-DL
OWL-DL (sigle pour Ontology Web Language Description Logics)[3] est une version décidable du langage informatique OWL.
Ce langage correspond à la logique de descriptions [4].
OWL-Full
OWL-Full est une version indécidable du langage informatique OWL.
Applications pour le Web sémantique
Le Web sémantique a pour objectif le partage de connaissances contenues dans des silos d'informations, appelés aussi bases de données. Les données contenues dans une base de données classique sont dites non structurées vis-à-vis d'autres bases de données s'il n'existe aucune grammaire commune entre elles. Comme c'est le cas pour le langage humain, la structuration syntaxique et grammaticale permet la création de phrases, éléments complexes d'où peut émerger un sens compréhensible par d'autres personnes. Sans grammaire, il ne peut y avoir de dialogues entre les différentes bases de données, et sans dialogues, aucune connaissance pérenne due à des synergies cognitives ou des partages ne peut émerger. L'existence d'une grammaire commune entre bases de données est la condition de structuration des données, donc du dialogue et de la confrontation productive des données. La recommandation OWL [5], en tant que grammaire commune, permet d'une part la vérification des données par la confrontation, leur fiabilité, et d'autre part une augmentation du volume de l'information. Cela signifie que la confrontation des données, rendue possible par le langage OWL, permet la création de nouvelles données (par exemple, lorsque deux informations lacunaires appartenant chacune à deux bases de données séparées sont mises en relation et se révèlent être complémentaires, la donnée qui en résulte est à la fois plus sûre et ouvre la porte à des avancées ultérieures).
En pratique, une sémantique définie strictement permettra aux machines d'effectuer des raisonnements automatisés sur les inférences et conclusions sur ses nouveaux silos de connaissance.
Les langages sur lesquels il est construit sont largement interprétables, beaucoup d'applications savent déjà manipuler le XML, le RDF qui est un standard bien répandu ainsi que le SPARQL. Le partage et l'échange de connaissances dans ces formats est d'autant plus facile pour les machines et en théorie pour les humains aussi (voir le débat sur les Microformats).
Le Web sémantique peut donc profiter de ce format pour structurer, partager et échanger les différentes connaissances qui s'y trouvent. Il y a déjà plusieurs ontologies modélisées à l'aide d'OWL.
Outils pour appliquer OWL au Web sémantique
Nom de l'outil | Description |
---|---|
Protégé | éditeur/framework gratuit et open source pour les ontologies. L'extension Protégé-OWL permet d'enregistrer le travail en format OWL. |
SMW+ | Participe avec Semantic Mediawiki à la création d'outils pour constituer des outils pour manipuler des ontologies OWL. |
Moteurs d'inférences
Plusieurs moteurs d'inférences gratuits ou commerciaux tels que Racer, Pellet, Fact, Fact++, Surnia, F-OWL et Howlet existent. La plupart de ces moteurs sont conçus pour raisonner sur les logiques de description, mais acceptent en entrée des fichiers OWL. Certains moteurs d'inférence ne peuvent raisonner qu'au niveau terminologique (c'est-à-dire au niveau des concepts et des propriétés) alors que des moteurs comme Pellet et Racer permettent de raisonner aussi sur les instances de concepts.
Logiciels d'édition
Il est possible de créer et d'éditer une ontologie au format OWL avec le logiciel Protégé. Il propose plusieurs formats de fichiers pour les ontologies dont OWL.
Notes et références
- ↑ (en) « http://www.w3.org/TR/2012/REC-owl2-overview-20121211/ »Description du standard Ontology Web Language 2 sur le site du W3C
- ↑ (en) « OWL 2 Web Ontology Language New Features and Rationale (Second Edition) », sur w3c.orgLes nouveautés d'OWL2
- ↑ http://jargonf.org/wiki/OWL_DL
- ↑ http://www.obitko.com/tutorials/ontologies-semantic-web/owl-dl-semantics.html
- ↑ via un consensus - voir le débat sur la MetaUtopie
Voir aussi
Article connexe
- Web Ontology Language for Web Services (OWL-S)
Liens externes
- OWL sur le site de W3C
- Le moteur d'inférence Racer
- Le moteur d'inférence Pellet
- Le logiciel d'édition Protégé
- Michel Héon, Web Sémantique et modélisation ontologique avec (G-OWL): Guide du développeur Java sous Eclipse, avril 2014, Editions ENI, Collection Epsilon
Il existe une liste plus complète sur la page http://www.cs.man.ac.uk/~sattler/reasoners.html
- Portail de l’informatique
- Portail du Web sémantique