Précédent   Forum du club des développeurs et IT Pro > Webmasters - Développement Web > Web sémantique > Ontologies
Ontologies Forum d'entraide sur les ontologies (OWL, RDF, RDFS, etc.).
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 27/06/2012, 08h55   #1
jolla
Invité de passage
 
Inscription : mai 2011
Messages : 18
Détails du profil
Informations forums :
Inscription : mai 2011
Messages : 18
Points : 3
Points : 3
Par défaut Peut-on définir une relation ayant un domaine et plusieurs "ranges"

Bonjour à tous,

j'ai une question concernant la conception d'une ontologie OWL,
une relation de type "object property" lient normalement un domaine à un range,
par exemple si je veux exprimer que la classe "voiture" agrège au min 1 moteur et 2 sièges
est-ce que cela peut être exprimé ainsi:

je définis 3 classes: Car, Engine, Seat

(sous protégé) au niveau de la classe Car, Superclasses, je définis ces deux superclasses:
aggregates exactly 1 Engine
aggregates min 2 Seat

ce qui donne en OWL :

Citation:
<owl:Class rdf:about="http://www.example.org/CorpusOnto#Car">
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="http://www.example.org/CorpusOnto#aggregates"/>
<owl:onClass rdf:resource="http://www.example.org/CorpusOnto#Engine"/>
<owl:qualifiedCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:qualifiedCardinality>
</owl:Restriction>
</rdfs:subClassOf>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="http://www.example.org/CorpusOnto#aggregates"/>
<owl:onClass rdf:resource="http://www.example.org/CorpusOnto#Seat"/>
<owl:minQualifiedCardinality rdf:datatype="&xsd;nonNegativeInteger">2</owl:minQualifiedCardinality>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>

je voulais savoir si c'est faisable ?

Merci d'avance
jolla est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2012, 19h34   #2
CesarR
Membre habitué
 
Homme
Inscription : juillet 2005
Messages : 82
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Etats-Unis

Informations forums :
Inscription : juillet 2005
Messages : 82
Points : 105
Points : 105
Envoyer un message via MSN à CesarR
Ici c'est pas plusieurs "ranges" que tu veux, mais faire des contraintes sur le nombre d'instances. Oui c'est possible.

Avoir plusieurs "ranges" c'est possible aussi, mais c'est pas ce que tu cherches a faire.
CesarR est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2012, 20h07   #3
jolla
Invité de passage
 
Inscription : mai 2011
Messages : 18
Détails du profil
Informations forums :
Inscription : mai 2011
Messages : 18
Points : 3
Points : 3
merci pour votre réponse,
mais le fait de définir deux restrictions, une pour Engine et une pour Seat, cela ne veut-il pas dire que je définis implicitement deux ranges pour la relation "aggregates" liée au Domain "Car" et aux ranges "Engine" et "Seat" en définissant en plus les contraintes d'occurence ?
jolla est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2012, 20h31   #4
CesarR
Membre habitué
 
Homme
Inscription : juillet 2005
Messages : 82
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Etats-Unis

Informations forums :
Inscription : juillet 2005
Messages : 82
Points : 105
Points : 105
Envoyer un message via MSN à CesarR
Si, aussi j'avais pas vu ca comme ca
CesarR est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2012, 11h00   #5
April Fool
Membre confirmé
 
Avatar de April Fool
 
Homme Information Inexacte
Fou d'avril
Inscription : février 2012
Messages : 97
Détails du profil
Informations personnelles :
Nom : Homme Information Inexacte
Localisation : France

Informations professionnelles :
Activité : Fou d'avril

Informations forums :
Inscription : février 2012
Messages : 97
Points : 206
Points : 206
Citation:
Envoyé par jolla Voir le message
j'ai une question concernant la conception d'une ontologie OWL,
une relation de type "object property" lient normalement un domaine à un range,
À proprement parler, non, une "object property" lie un individu à un individu. Pour fixer un domain ou un range, il faut le déclarer avec rdfs:domain et rdfs:range. Par exemple:
Code :
:aggregates  rdfs:domain  :Car .
Citation:
Envoyé par jolla Voir le message
(sous protégé) au niveau de la classe Car, Superclasses, je définis ces deux superclasses:
aggregates exactly 1 Engine
aggregates min 2 Seat
Lorsque tu écris ça, tu ne donnes ni un domain ni un range. Prend cet exemple:
Code :
a_pour_parent  exactly  1  Femme
Heureusement que cela ne force pas le range de a_pour_parent à être Femme, sinon on ne pourrait pas avoir de père !

Citation:
Envoyé par jolla Voir le message
ce qui donne en OWL :
Ce qui donne en RDF/XML.

Quand tu écris aggregates exactly 1 Engine, c'est autant du OWL que ton bout de code XML. C'est un peu comme si tu donnais d'abord des tables avec lignes et colonnes, et que tu indiquais ensuite "ce qui donne, en algèbre relationnelle" et tu mets ensuite le code SQL correspondant. RDF/XML, c'est une syntaxe, OWL c'est un formalisme.

Citation:
Envoyé par jolla Voir le message
je voulais savoir si c'est faisable ?
Bien sûr puisque tu l'as fait.
__________________
7susd bl'ham owsql wuul pô!
April Fool est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 19h23.


 
 
 
 
Partenaires

Hébergement Web