Vous êtes sur la page 1sur 89

OWL

Web Ontology Language

Hicham BEHJA
Web Ontology Languag

Langage de représentation de connaissances

Il offre la possibilité de représenter des connaissances riches et complexes


Il est manipulable par les machines

Il est un des piliers de la pyramide du Web Sémantique

2
3
Profils

OWL est fourni avec plusieurs profils qui sont des sous-langages
dont la sémantique formelle diffère selon le champ d’application

4
Profils

OWL est fourni avec plusieurs profils qui sont des sous-langages
dont la sémantique formelle diffère selon le champ d’application

OWL
2 DL OWL2 pour les logiques de description

5
Profils

OWL est fourni avec plusieurs profils qui sont des sous-langages
dont la sémantique formelle diffère selon le champ d’application

OWL2 pour la conception d’ontologies avec une


OWL
2 EL structure complexe avec une expressivité riche
(grand ensemble de classes et propriétés)

6
Profils

OWL est fourni avec plusieurs profils qui sont des sous-langages
dont la sémantique formelle diffère selon le champ d’application

OWL2 pour la conception d’ontologies


OWL possédant un grand nombre d’individus
2 QL avec une expressivité limitée
(Les données peuvent être gérées au sein d’un autre
système)

7
Profils

OWL est fourni avec plusieurs profils qui sont des sous-langages
dont la sémantique formelle diffère selon le champ d’application

OWL2 pour la conception d’ontologies avec


OWL
une sémantique nécessaire et suffisante pour 2 RL
représenter des connaissances

8
Profils

OWL est fourni avec plusieurs profils qui sont des sous-langages
dont la sémantique formelle diffère selon le champ d’application

OWL2 pour la conception d’ontologies OWL


avec une haute expressivité sémantique 2 Full

9
OWL2 offre la possibilité d’utiliser plusieurs syntaxes pour
formaliser des ontologies

10
Individus

11
La structure générale d’une ontologie Ontologie
diffère d’une syntaxe à une autre

Fonctionnelle

Prefix(owl:=<http://www.w3.org/2002/07/owl#>)
Prefix(rdf:=<http://www.w3.org/1999/02/22-rdf-syntax-ns#>)
Prefix(xml:=<http://www.w3.org/XML/1998/namespace>)
Prefix(xsd:=<http://www.w3.org/2001/XMLSchema#>)
Prefix(rdfs:=<http://www.w3.org/2000/01/rdf-schema#>)

Ontology(<http://www.ensem.ac.ma/ontologies>

) 12
La structure générale d’une ontologie Ontologie
diffère d’une syntaxe à une autre

Fonctionnelle
Manchester

Prefix: owl: <http://www.w3.org/2002/07/owl#>


Prefix: rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
Prefix: xml: <http://www.w3.org/XML/1998/namespace>
Prefix: xsd: <http://www.w3.org/2001/XMLSchema#>
Prefix: rdfs: <http://www.w3.org/2000/01/rdf-schema#>

Ontology: <http://www.ensem.ac.ma/ontologies>

13
La structure générale d’une ontologie Ontologie
diffère d’une syntaxe à une autre

Manchester
Turtle

@prefix : <http://www.ensem.ac.ma/ontologies#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@base <http://www.ensem.ac.ma/ontologies> .

<http://www.ensem.ac.ma/ontologies> rdf:type owl:Ontology .


14
La structure générale d’une ontologie Ontologie
diffère d’une syntaxe à une autre

RDF/XML
Turtle
<?xml version = “1.0” ?>
<rdf:RDF xmlns="http://www.ensem.ac.ma/ontologies#"
xml:base="http://www.ensem.ac.ma/ontologies"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
<owl:Ontology
rdf:about="http://www.ensem.ac.ma/ontologies"/>

</rdf:RDF>
15
OWL/XML
<?xml version = “1.0” ?>
Ontologie
<Ontology
xmlns="http://www.w3.org/2002/07/owl#"
xml:base="http://www.ensem.ac.ma/ontologies"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
ontologyIRI="http://www.ensem.ac.ma/ontologies">
<Prefix name="rdf"
IRI="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
<Prefix name="rdfs"
IRI="http://www.w3.org/2000/01/rdf-schema#"/>
<Prefix name="xsd"
IRI="http://www.w3.org/2001/XMLSchema#"/>
<Prefix name="owl"
IRI="http://www.w3.org/2002/07/owl#"/>

</Ontology>
16
Classes

Déclaration de classes
RDF/XML

Attribut RDF pour


Nom de la classe
l’affectation d’une
IRI

<owl:Class rdf:about="http://www.ensem.ac.ma/#NOM_CLASSE">

Balise permettant la
IRI de base de la classe
déclaration d’une classe

17
Classes

Déclaration de sous-classes
RDF/XML
Balise RDFS pour la Nom de la sous-classe
déclaration d’une sous-classe

<owl:Class
<owl:Class
rdf:about="http://www.ensem.ac.ma/onto#SS_CLASSE">
rdf:about="http://www.ensem.ac.ma/onto#SS_CLAS
SE">
<rdfs:subClassOf
<rdfs:subClassOf
IRI de base de la classe
rdf:resource="http://www.ensem.ac.ma/onto#CLASSE_MERE"/
>
rdf:resource="http://www.ensem.ac.ma/onto#CLAS
</owl:Class>
SE_MERE"/>
Attribut RDF permettant de Nom de la classe mère
</owl:Class>
référencer la classe mère 18
Classes

Disjonction entre sous-classes


RDF/XML
Balise OWL pour la création
de classes disjointes

<owl:AllDisjointClasses>
<owl:members rdf:parseType = “collection”>
<owl:Class
rdf:about="http://www.ensem.ac.ma/onto#CLASSE_1"/>
<owl:Class
rdf:about="http://www.ensem.ac.ma/onto#CLASSE_2"/>
<owl:Class
rdf:about="http://www.ensem.ac.ma/onto#CLASSE_3"/>
</owl:members>
Conteneur de la liste des Liste des classes
</owl:AllDisjointClasses>
classes disjointes 19
Classes

Disjonction entre sous-classes


RDF/XML Balise OWL pour déclarer
l’existence d’une disjonction
avec une autre classe
<owl:Class rdf:about="http://www.ensem.ac.ma/onto#CLASSE_1">
<owl:disjointWith
rdf:resource="http://www.ensem.ac.ma/onto#CLASSE_2"/>
<owl:disjointWith
rdf:resource="http://www.ensem.ac.ma/onto#CLASSE_3"/>
<owl:Class>
</owl:Class>
<owl:Class rdf:about="http://www.ensem.ac.ma/onto#CLASSE_2">
<owl:disjointWith
rdf:resource="http://www.ensem.ac.ma/onto#CLASSE_3"/>
<owl:Class>
</owl:Class>
<owl:Class rdf:about="http://www.ensem.ac.ma/onto#CLASSE_3" />

20
Classes

Intersection de deux classes


RDF/XML
Balise OWL signalant
l’intersection entre deux classes

<owl:Class rdf:ID="Mère">
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<owl:Class rdf:ID="Femme"/>
<owl:Class rdf:ID="Parent"/>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
</owl:Class>

21
Classes

Union de deux classes


RDF/XML
Balise OWL signalant l’union
de deux classes

<owl:Class rdf:ID="Personne">
<owl:equivalentClass>
<owl:Class>
<owl:unionOf rdf:parseType="Collection">
<owl:Class rdf:ID="Etudiant"/>
<owl:Class rdf:ID="Salarié"/>
</owl:unionOf>
</owl:Class>
</owl:equivalentClass>
</owl:Class>

22
Classes

L’union disjointe
RDF/XML Balise OWL pour déclarer
l’existence d’une disjonction
avec une autre classe

<owl:Class rdf:about="http://www.ensem.ac.ma/onto#Class_1">

<owl:disjointUnionOf rdf:parseType="Collection">
<rdf:Description
rdf:about="http://www.ensem.ac.ma/
onto#Class_11"/> <rdf:Description
rdf:about="http://www.ensem.ac.ma/
onto#Class_12"/>
</owl:disjointUnionOf> Description de la classe
</owl:Class> faisant partie de l’union

23
Classes

Classes équivalentes
RDF/XML
Balise OWL pour déclarer
l’équivalence avec une autre
classe

<owl:Class
rdf:about="http://www.ensem.ac.ma/onto#classA">
<owl:equivalentClass
rdf:resource="http://www.ensem.ac.ma/onto#classB"/>

</owl:Class>

24
Propriété
s

Les propriétés permettent d’établir des liens entre


les concepts d’une ontologie

Comme pour RDFS, chaque propriété possède :


•Un nom,
•Un Domain,
•Un Range,

25
Propriété
s

OWL a séparé les propriétés en deux catégories

Object Properties

Data Properties

26
Propriété
s

Object Properties
Propriété permettant de relier deux classes
RDF/XML
Balise OWL pour la
définition d’un Object
Property

<owl:ObjectProperty rdf:ID="NOM_PROPRIETE">
<rdfs:domain rdf:resource="#CLASSE_DOMAIN"/>
<rdfs:range rdf:resource="#CLASSE_RANGE"/>
</owl:ObjectProperty>

Balise RDFS pour définir


Balise RDFS pour définir un Domain pour la
un Range pour la propriété
27
Propriété
s

Data Properties
Propriété permettant de relier une classe à un littéral
RDF/XML
Balise OWL pour la
définition d’un Object
Property

<owl:DataProperty rdf:ID="DT_PROPERTY">
<rdfs:domain rdf:resource="#CLASSE_DOMAIN"/>

<rdfs:range rdf:resource="&xsd;string"/>
</owl:DataProperty>
Ressource de type littéral
exprimée en XML Schema
28
Propriété
s

Caractéristiques des propriétés

En OWL2, une propriété peut être : Symétrique

amieDe Propriété

Personne
Classe A

Exemple 29
Propriété
s

Caractéristiques des propriétés


RDF/XML

En OWL2, une propriété peut être : Symétrique

<owl:ObjectProperty rdf:ID="NOM_PROPRIETE">
<rdf:type rdf:resource="&owl;SymmetricProperty"/>
<rdfs:domain rdf:resource="#CLASSE_DOMAIN"/>
<rdfs:range rdf:resource="#CLASSE_RANGE"/>
</owl:ObjectProperty>

Type OWL de l’Object


Balise RDF pour définir un Property
type pour une ressource 30
Propriété
s

Caractéristiques des propriétés

En OWL2, une propriété peut être : Asymétrique

enfantDe Propriété

Personne Classe A

Exemple 31
Propriété
s

Caractéristiques des propriétés


RDF/XML

En OWL2, une propriété peut être : Asymétrique

<owl:ObjectProperty rdf:ID="NOM_PROPRIETE">
<rdf:type rdf:resource="&owl;AsymmetricProperty"/>
<rdfs:domain rdf:resource="#CLASSE_DOMAIN"/>
<rdfs:range rdf:resource="#CLASSE_RANGE"/>
</owl:ObjectProperty>

Type OWL de l’Object


Balise RDF pour définir un Property
type pour une ressource 32
Propriété
s

Caractéristiques des propriétés

En OWL2, une propriété peut être : Réflexive

seConnait Propriété

Personn
e Classe A

Exemple 33
Propriété
s

Caractéristiques des propriétés


RDF/XML

En OWL2, une propriété peut être : Réflexive

<owl:ObjectProperty rdf:ID="NOM_PROPRIETE">
<rdf:type rdf:resource="&owl;ReflexiveProperty"/>
<rdfs:domain rdf:resource="#CLASSE_DOMAIN"/>
<rdfs:range rdf:resource="#CLASSE_RANGE"/>
</owl:ObjectProperty>

Type OWL de l’Object


Balise RDF pour définir un Property
type pour une ressource 34
Propriété
s

Caractéristiques des propriétés

En OWL2, une propriété peut être : Irréflexive

enfantDe Propriété

Personne Classe A

Exemple 35
Propriété
s

Caractéristiques des propriétés


RDF/XML

En OWL2, une propriété peut être : Irréflexive

<owl:ObjectProperty rdf:ID="NOM_PROPRIETE">
<rdf:type rdf:resource="&owl;IrreflexiveProperty"/>
<rdfs:domain rdf:resource="#CLASSE_DOMAIN"/>
<rdfs:range rdf:resource="#CLASSE_RANGE"/>
</owl:ObjectProperty>

Type OWL de l’Object


Balise RDF pour définir un Property
type pour une ressource 36
Propriété
s

Caractéristiques des propriétés

En OWL2, une propriété peut être : Transitive

incluse Propriété

Région Classe A

Exemple 37
Propriété
s

Caractéristiques des propriétés


RDF/XML

En OWL2, une propriété peut être : Transitive

<owl:ObjectProperty rdf:ID="NOM_PROPRIETE">
<rdf:type rdf:resource="&owl;TransitiveProperty"/>
<rdfs:domain rdf:resource="#CLASSE_DOMAIN"/>
<rdfs:range rdf:resource="#CLASSE_RANGE"/>
</owl:ObjectProperty>

Type OWL de l’Object


Balise RDF pour définir un Property
type pour une ressource 38
Propriété
s

Caractéristiques des propriétés

En OWL2, une propriété peut être : Fonctionnelle

Propriété

Classe A Classe B

39
Propriété
s

Caractéristiques des propriétés

En OWL2, une propriété peut être : Fonctionnelle

mariéeA

Femme Homme

Exemple 40
Propriété
s

Caractéristiques des propriétés


RDF/XML

En OWL2, une propriété peut être : Fonctionnelle

<owl:ObjectProperty rdf:ID="NOM_PROPRIETE">
<rdf:type rdf:resource="&owl;FunctionalProperty"/>
<rdfs:domain rdf:resource="#CLASSE_DOMAIN"/>
<rdfs:range rdf:resource="#CLASSE_RANGE"/>
</owl:ObjectProperty>

Type OWL de l’Object


Balise RDF pour définir un Property
type pour une ressource 41
Propriété
s

Caractéristiques des propriétés

En OWL2, une propriété peut être : Inversement Fonctionnelle

Propriété

Classe A Classe B

42
Propriété
s

Caractéristiques des propriétés

En OWL2, une propriété peut être : Inversement Fonctionnelle

mèreBiologique

Femme Personne

Exemple 43
Propriété
s

Caractéristiques des propriétés


RDF/XML

En OWL2, une propriété peut être : Inversement Fonctionnelle

<owl:ObjectProperty rdf:ID="NOM_PROPRIETE">
<rdf:type
rdf:resource="&owl;InverseFunctionalProperty"/>
<rdfs:domain rdf:resource="#CLASSE_DOMAIN"/>
<rdfs:range rdf:resource="#CLASSE_RANGE"/>
</owl:ObjectProperty>
Type OWL de l’Object
Balise RDF pour définir un Property
type pour une ressource 44
Propriété
s

Caractéristiques des propriétés

Une propriété peut être considérée comme étant l’inverse


d’une autre propriété

Propriété 1

Classe A Classe B

Propriété 2
45
Propriété
s

Caractéristiques des propriétés

Une propriété peut être considérée comme étant l’inverse


d’une autre propriété

mariéeA

Femme Homme

mariéA

Exemple 46
Propriété
s

Caractéristiques des propriétés


RDF/XML
Balise OWL pour définir qu’une
propriété est l’inverse d’une autre

<owl:ObjectProperty rdf:ID="NOM_PROPRIETE_1">
<rdfs:domain rdf:resource="#CLASSE_A"/>
<rdfs:range rdf:resource="#CLASSE_B"/>
</owl:ObjectProperty>

<owl:ObjectProperty rdf:ID="NOM_PROPRIETE_2">
<rdfs:domain rdf:resource="#CLASSE_B"/>
<rdfs:range rdf:resource="#CLASSE_A"/>
<owl:inverseOf rdf:resource="#NOM_PROPRIETE_1" />
</owl:ObjectProperty>
47
Propriété
s

Caractéristiques des propriétés

Un ensemble de propriétés peut être déclaré comme clé


pour une classe donnée

<owl:Class rdf:ID="Personne">
<owl:hasKey rdf:parseType="Collection">
<owl:DatatypeProperty rdf:ID="CIN"/>
</owl:hasKey>
</owl:Class>

48
Propriété
s

Caractéristiques des propriétés


RDF/XML
Balise OWL pour définir qu’une
propriété est l’inverse d’une autre

<owl:ObjectProperty rdf:ID="NOM_PROPRIETE_1">
<rdfs:domain rdf:resource="#CLASSE_A"/>
<rdfs:range rdf:resource="#CLASSE_B"/>
</owl:ObjectProperty>

<owl:ObjectProperty rdf:ID="NOM_PROPRIETE_2">
<rdfs:domain rdf:resource="#CLASSE_B"/>
<rdfs:range rdf:resource="#CLASSE_A"/>
<owl:inverseOf rdf:resource="#NOM_PROPRIETE_1" />
</owl:ObjectProperty>
49
Propriété
s

Les propriétés en chaine

Une des grandes nouveautés de OWL2 est la possibilité


de définir des propriétés à partir d’un enchainement
d’autres propriétés

50
Propriété
s

Les propriétés en chaine

Exemple : Le frère d’un père est un oncle

frèreDe
Mohamme
Hassan
d
pèreDe

oncleDe

Salim
51
Propriété
s

Les propriétés en chaine


RDF/XML

Exemple : Le frère d’un père est un oncle


Balise OWL pour la
définition d’une chaine de
propriétés
<rdf:Description>
<owl:propertyChain rdf:parseType="Collection">
<owl:ObjectProperty rdf:resource="#frèreDe"/>
<owl:ObjectProperty rdf:about="#pèreDe"/>
</owl:propertyChain>
<rdfs:subPropertyOf rdf:resource="#oncleDe"/>
</rdf:Description>
Object Properties
Balise RDFS pour définir une composant la chaine
hiérarchie de propriétés 52
Propriété
s

Les propriétés en chaine

Exemple : Le fils d’un frère est un neuveu

frèreDe
Mohamme
Hassan
d
filsDe

neveuDe

Salim
53
Propriété
s

Les propriétés en chaine


RDF/XML

Exemple : Le frère d’un père est un oncle


Balise OWL pour la
définition d’une chaine de
propriétés
<rdf:Description>
<owl:propertyChain rdf:parseType="Collection">
<owl:ObjectProperty rdf:resource="#filsDe"/>
<owl:ObjectProperty rdf:about="#frèreDe"/>
</owl:propertyChain>
<rdfs:subPropertyOf rdf:resource="#neveuDe"/>
</rdf:Description>
Object Properties
Balise RDFS pour définir une composant la chaine
hiérarchie de propriétés 54
Propriété
s

Les propriétés d’annotation

L’objectif des propriétés d’annotation est de fournir une description


textuelle des entités présentes dans une ontologie
(classes ou propriétés)

Chaque annotation consiste en une propriété et une valeur qui peut être
une valeur littérale, une IRI ou un individu anonyme

55
Propriété
s

Les propriétés d’annotation

Il est possible d’utiliser les propriétés d’annotation RDF Schema

rdfs:label Label pour une ressource


rdfs:comment Commentaire pour une ressource
IRI pouvant fournir des informations
rdfs:seeAlso
supplémentaires sur une ressource
rdfs:isDefinedB IRI indiquant une ressource
y permettant de définir le sujet
56
Propriété
s

Les propriétés d’annotation

OWL2 ajoute d’autres propriétés permettant l’annotation de ressources

owl:deprecated Signale qu’une ressource est devenue obsolète


owl:versionInfo Version de la ressource
IRI d’une ontologie contenant la version antérieure
owl:priorVersion
d’une ressource

57
Propriété
s

Les propriétés d’annotation

OWL2 ajoute d’autres propriétés permettant l’annotation de ressources

owl:backwardCompatibleWith
IRI d’une ontologie contenant la dernière version antérieure compatible
pour une ressource (dans l’ontologie courante)
owl:incompatibleWith
IRI d’une ontologie contenant une version antérieure incompatible pour
une ressource (dans l’ontologie courante)
58
Propriété
s

Les restrictions

La recommandation de l’OWL2 propose l’utilisation de restrictions


sur les propriétés

59
Propriété
s

Les restrictions

Quantification existentielle

Elle permet la création d’une classe d’individus qui sont connectés


via une propriété à des individus d’une classe donnée

60
Propriété
s

Les restrictions

Quantification existentielle
Exemple

Homme
pèreDe

est-un

La classe Père regroupe tous les individus qui Père


réalisent l’objectProperty pèreDe via la classe
Homme

61
Propriété
s

Les restrictions
Quantification existentielle
Exemple
<owl:Class rdf:about="Homme">
<owl:Class rdf:about="Père">
<owl:equivalentClass>
<owl:Restriction>
<owl:onProperty rdf:resource="#pèreDe"/>
<owl:someValuesFrom
rdf:resource="#Homme"/>
</owl:Restriction>
</owl:equivalentClass>
<rdfs:subClassOf rdf:resource="#Homme"/> 62
Propriété
s

Les restrictions

Quantification existentielle
Exemple

Personne
age
est-un

Majeur
xsd:positiveInteger

La classe Majeur regroupe tous les individus qui réalisent


la DataProperty age via la classe Homme avec une valeur
supérieur ou égale à 18
63
Propriété
<owl:Class rdf:about="Majeur">
s
<owl:equivalentClass>
<owl:Restriction> Exemple
<owl:onProperty rdf:resource="#age"/>
<owl:someValuesFrom>
<rdfs:Datatype>
<owl:onDatatype rdf:resource="&xsd;positiveInteger"/>

<owl:withRestrictions rdf:parseType="Collection">
<rdf:Description>
<xsd:minInclusive rdf:datatype="&xsd;positiveInteger">
18
</xsd:minInclusive>
</rdf:Description>
</owl:withRestrictions>
</rdfs:Datatype>
</owl:someValuesFrom>
</owl:Restriction>
</owl:equivalentClass>
<rdfs:subClassOf rdf:resource="#Personne"/>
</owl:Class> 64
Propriété
s

Les restrictions

Quantification Universelle

Elle permet la création d’une classe d’individus qui sont connectés


via une propriété à uniquement les individus d’une classe donnée

65
Propriété
s

Les restrictions

Quantification Universelle
Exemple

Conférence
organisée

est-une
ConférenceAfricaine Ville

La classe ConférenceAfricaine regroupe tous les


est-une
individus qui réalisent l’objectProperty organisée
uniquement pour les individus de la classe VilleAfricaine VilleAfricaine
66
Propriété
s

Les restrictions

Quantification Universelle
Exemple

<owl:Class rdf:about="ConférenceAfricaine">
<rdfs:subClassOf rdf:resource="Conférence"/>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="organisée"/>
<owl:allValuesFrom
rdf:resource="villeAfricaine"/>
</owl:Restriction>
</owl:equivalentClass>
</owl:Class>
67
Propriété
s

Les restrictions

Quantification Universelle
Exemple

Etudiant
CNE
est-un

AncienEtudiant rdfs:Litteral

La classe AncienEtudiant regroupe tous les individus


qui réalisent la DataProperty CNE uniquement pour
les valeurs entières
68
Propriété
s

Les restrictions

Quantification Universelle
Exemple

<owl:Class rdf:about="AncienEtudiant">
<owl:equivalentClass>
<owl:Restriction>
<owl:onProperty rdf:resource="#CNE"/>
<owl:allValuesFrom
rdf:resource="&xsd;long"/>
</owl:Restriction>
</owl:equivalentClass>
<rdfs:subClassOf rdf:resource="#Etudiant"/>
</owl:Class>
69
Propriété
s

Les restrictions

Cardinalités

Elle permet la création d’une classe d’individus qui sont connectés


via une propriété aux individus d’une classe donnée
avec un nombre d’occurrences

70
Propriété
s

Les restrictions

Cardinalités
Exemple

Homme
pèreDe

est-un

La classe Père regroupe tous les individus qui Père


réalisent l’objectProperty pèreDe via la classe
Homme au moins une fois
71
Propriété
s

Les restrictions

Cardinalités
Exemple
<owl:Class rdf:about="Père">
<owl:equivalentClass>
<owl:Restriction>
<owl:onProperty rdf:resource="#pèreDe"/>
<owl:minQualifiedCardinality
rdf:datatype="&xsd;nonNegativeInteger"> 1
</owl:minQualifiedCardinality>
<owl:onClass rdf:resource="#Homme"/>
</owl:Restriction>
</owl:equivalentClass>
<rdfs:subClassOf rdf:resource="#Homme"/>
</owl:Class>

72
Individus

Exemple : un étudiant est inscrit dans une université

inscritDans

Etudiant Université

73
Individus

RDF/XML

Exemple : un étudiant est inscrit dans une université

<owl:class rdf:ID = "Etudiant" />


<owl:class rdf:ID = "Université" />

<owl:ObjectProperty rdf:ID="inscrit_dans">
<rdfs:domain rdf:resource="#Etudiant"/>
<rdfs:range rdf:resource="#Université"/>

</owl:ObjectProperty>

74
Individus

Exemple : un étudiant est inscrit dans une université


Instance : Mohammed est inscrit dans l’UH2

inscritDans

Mohammed UH2C

75
Individus

RDF/XML Balise OWL pour la


création d’un individu

<owl:NamedIndividual rdf:ID="UH2">
<rdf:type rdf:resource="#Université"/>
</owl:NamedIndividual>

<owl:NamedIndividual rdf:ID="Mohammed">

<rdf:type rdf:resource="#Etudiant"/>

<inscritDans rdf:resource="#UH2"/>
</owl:NamedIndividual>
Type de l’individu
Nom de la propriété
76
Individus

Exemple : un étudiant possède une date de naissance

dateNaissance

Etudiant xsd:date

77
Individus

RDF/XML

Exemple : un étudiant possède une date de naissance

<owl:class rdf:ID = "Etudiant" />

<owl:DataProperty rdf:ID="dateNaissance">
<rdfs:domain rdf:resource="#Etudiant"/>
<rdfs:range rdf:resource="&xsd;date"/>

</owl:DataProperty>

78
Individus

Exemple : un étudiant possède une date de naissance


Instance : Mohammed est né le 15 Juin 1996

dateNaissance

Mohammed 1996-06-15

79
Individus

RDF/XML Balise OWL pour la


création d’un individu

<owl:NamedIndividual rdf:ID="Mohammed">
<rdf:type rdf:resource="#Etudiant"/>
<dateNaissance>1996-06-15</dateNaissance>
</owl:NamedIndividual>

Type de l’individu
Nom de la propriété

80
n y m e s]
o
[anIndividus

Un individu peut aussi être anonyme (ne possédant pas d’IRI)

Il est possible d’associer cet individu à un nodeID, dans le cas où il n’est


pas destiné à être utilisé en dehors de l’ontologie dans laquelle il a été
déclaré

Concept similaire aux blank Nodes de RDF

81
n ym e s]
o
[anIndividus
Exemple
Un étudiant est inscrit dans une université et possède
une date de naissance dateNaissance

Etudiant
xsd:date
<owl:class rdf:ID = "Etudiant" />
<owl:class rdf:ID = "Université" /> inscritDans

<owl:ObjectProperty rdf:ID="inscrit_dans">
<rdfs:domain rdf:resource="#Etudiant"/> Université
<rdfs:range rdf:resource="#Université"/>
</owl:ObjectProperty>

<owl:DataProperty rdf:ID="dateNaissance">
<rdfs:domain rdf:resource="#Etudiant"/>
<rdfs:range rdf:resource="&xsd;date"/>
</owl:DataProperty>

82
n ym e s]
o
[anIndividus

Exemple : un étudiant possède une date de naissance


Instance : un étudiant inconnu est né le 15 Juin 1996

dateNaissance

? 1996-06-15

83
n ym e s]
o
[anIndividus

RDF/XML Création d’un individu anonyme


(sans rdf:about ou rdf:ID)

<owl:NamedIndividual>
<rdf:type rdf:resource="#Etudiant"/>
<dateNaissance>1996-06-15</dateNaissance>
</owl:NamedIndividual>

Type de l’individu
Nom de la propriété

84
ym es ]
an
[ o n
Individus

Exemple : un étudiant est inscrit dans une université


Instance : Mohammed est inscrit dans une université inconnue

inscritDans

Mohammed ?

85
ym es ]
[ano n
Individus

RDF/XML Création d’un individu anonyme


avec rdf:nodeID

<owl:NamedIndividual rdf:nodeID="_u1">

<rdf:type rdf:resource="#Université"/>
</owl:NamedIndividual>

<owl:NamedIndividual rdf:ID="Mohammed">

<rdf:type rdf:resource="#Etudiant"/>

<inscritDans rdf:resource="_u1"/>
Type de l’individu
</owl:NamedIndividual>
Nom de la propriété
86
[sim ilaires]
Individus

Il est possible de signaler des individus comme étant similaires


(ou différents)

Similarité
Signaler un individus déclaré plusieurs fois avec différents IRI

Différence
Lever l’ambiguïté sur l’équivalence entre deux individus différents
possédant plusieurs propriétés similaires

87
[sim ilaires]
Individus

Exemple : Les individus MohammedAmine et MedAmine sont similaires

<owl:Class rdf:ID="Personne"/>

<owl:NamedIndividual rdf:ID="MohammedAmine">
<rdf:type rdf:resource="#Personne"/>
</owl:NamedIndividual>

<owl:NamedIndividual rdf:ID="MedAmine">
<rdf:type rdf:resource="#Personne"/>
<owl:sameAs rdf:resource="MohammedAmine"/>
</owl:NamedIndividual>

Élément permettant de signaler


un individu comme étant
similaire à un autre 88
[sim ilaires]
Individus

Exemple : Les individus MohammedAmine et MedAmine sont différents

<rdf:Description>
<rdf:type
rdf:resource="http://www.w3.org/2002/07/
owl#AllDifferent"/>
<owl:distinctMembers rdf:parseType="Collection">

<rdf:Description rdf:ID="MohammedAmine"/>
<rdf:Description rdf:ID="MedAmine"/>
</owl:distinctMembers>
</rdf:Description>

89

Vous aimerez peut-être aussi