IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ontologies Discussion :

Logique de description : OWL2 et comment définir des règles d’inférence


Sujet :

Ontologies

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 64
    Points
    64
    Par défaut Logique de description : OWL2 et comment définir des règles d’inférence
    Bonsoir a tous,

    C'est mon premier post dans un forum .

    J'ai un question à vous poser s'il vous plaît :

    En se basant sur un langage de logique de description je modélise quelques situations relatives à une activité précise ou à une requête précise.

    Bon, si je prends un exemple concret:

    Supposons qu'on a un utilisateur qui interroge un système de recherche d'information avec une requête SPARQL.

    Cette requête est composée d'un ensemble de concepts relatifs à un domaine précis éventuellement.

    Comment je peux passer de la formalisation en Logique de description à l'implémentation en OWL2.

    A part ça comment je peux enrichir ces données en me basant sur des données déduites de l'environnement ou du cadre spatio-temporel.

    D'après mon encadrante, il me faut répondre soigneusement à ces questions :
    what you mean by 'enrich data'
    how you can translate these into entailment problems (which can then be answered by a reasoner)
    Ca fait maintenant plus de 20 jours que j’essaie de trouver un résultat mais sans y parvenir.

    Avez-vous une idée qui peut m'aider s'il vous plaît.

    Bonne soirée

  2. #2
    Membre actif
    Avatar de cotechnoe
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mars 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 73
    Points : 299
    Points
    299
    Par défaut Ontologie cadre
    Bonjour Daniel 1985,
    Je ne peux pas répondre directement à ta question mais je peux t'exposer ma réflexion. À toi de voir si elle t’aide
    La première de ces réflexions
    Le SPARQL est un langage de requêtes comme l’est le SQL. Je n’ai pas de références là-dessus mais je sais qu’il est possible d’exprimer une requête SQL dans un formalisme logique en passant par la théorie des ensembles
    Deuxième réflexion,
    Le langage OWL est une implémentation directe de la logique des descriptions, il y a beaucoup d’articles qui documentent la correspondance entre la LD et l’OWL (voir plus bas)[1-6] et particulièrement ce site (http://www.cs.man.ac.uk/~ezolin/dl/ ). Pour le problème du spatio-temporel, là c’est un peu plus compliqué…
    Troisième réflexion,
    Les ontologies OWL ont une propriété intéressante c’est celle d’être « réflexif ». En d’autres termes il est possible de définir un cadre langagier ontologique qui permettra la construction d’ontologies de domaine (OD). Par exemple FOAF (friend of a friend utilisé dans des systèmes comme facebook) est un cadre langagier qui permet de définir des OD qui concernent la mise en relation de personnes. Pour le problème que tu mentionnes, il faut construire un cadre langagier qui permettra de construire des ontologies dans le domaine du spatio-temporel. Tu dois donc définir les concepts et les propriétés de ce domaine. Par exemple la classe Étape et la propriété Précède dont le domaine et l’image réfère à Étape. Lorsque le cadre langagier est définit, le « import » du cadre langagier dans l’ontologie de domaine et l’attribution d’un espace de nommage, disons « st » permet d’accéder aux concepts et propriétés du cadre langagier. Par exemple, dans l’OD il sera possible de référer à la classe Étape en l’associant à son espace de nommage « st:Etape ». Il sera ainsi possible de créer un triplet du style st:Etape(etape1)/st:prédèce/ st:Etape(étape2) et st:Etape(étape2)/st:précède/ st:Etape(étape3). Après inférence, le moteur devrait produire une conclusion de style st:Etape(étape1)/st:précède/st:Etape(étape3).
    Il y aurait encore bien des choses à dire, mais j’ai peur de te souler un peu. Je terminerais en t’envoyant sur une piste qui pourrait être intéressante. Il s’agit d’OWL-S qui est un cadre langagier pour l’implantation ontologique de services web. Plusieurs concepts spatio-temporels y sont définis. Peut-être que cela t’aiderais à pousser ta réflexion.
    Espérant le tout aidant.

    1. Baader, F., Calvanese, D., McGuinness, D.L., Nardi, D., Patel-Schneider, P.F.: The Description Logic Handbook. Cambridge University Press (2007)
    2. Horrocks, I.: OWL: A Description Logic Based Ontology Language. In: Springer (ed.) Logic Programming, vol. 3668, pp. 1-4, Berlin / Heidelberg (2005)
    3. Horrocks, I., Patel-Schneider, P.F., van Harmelen, F.: From SHIQ and RDF to OWL: the making of a Web Ontology Language. Web Semantics: Science, Services and Agents on the World Wide Web 1, 7-26 (2003)
    4. Bhoopalam, K.: Fire – A Description Logic Based Rule Engine for OWL Ontologies with SWRL-like Rules. Faculty of Engineering and Computer Science, degree. Master of Computer Science, pp. 71. Concordia University, Montréal (2005)
    5. Concordia University, Computer Science Department, Description Logics and Semantic Web Description Logics: A Logical Foundation of the Semantic Web and its Applications, http://www.cs.concordia.ca/~haarslev.../dl-semweb.pdf
    6. Description Logics, http://dl.kr.org/

  3. #3
    Membre actif
    Avatar de April Fool
    Homme Profil pro
    Fou d'avril
    Inscrit en
    Février 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Fou d'avril

    Informations forums :
    Inscription : Février 2012
    Messages : 99
    Points : 215
    Points
    215
    Par défaut
    Si on a une théorie en logique de description et qu'on débute avec OWL2, le plus simple me semble de créer une nouvelle ontologie OWL avec Protégé 4. Ensuite, pour chaque concept dans ta théorie DL, tu crées une classe dans l'onglet "Classes" (c'est assez intuitif, mais il y a des tutoriels). Pour chaque rôle (abstrait) dans ta théorie DL, tu crées une Object property (onglet "Object Properties"). Pour chaque rôle concret, tu crées une Datatype property (onglet "Data Properties"). Pour chaque individu, tu crées un individu (onglet "Individuals").

    Ensuite, pour chaque assertion de type C(i), tu vas dans l'onglet Individuals, tu sélectionnes l'individu "i" et tu cliques sur le + à côté de "Types". Tu indiques alors la classe "C", qui peut d'ailleurs être complexe. Si elle est complexe, il te faudra te familiariser avec la syntaxe Manchester.

    Pour chaque assertion de type R(i,j), avec "R" rôle abstrait, tu sélectionnes l'individu "i" et tu cliques sur le + à côté de "Object property assertions" et tu choisis "R" dans la liste des propriétés, puis "j" dans la liste des individus.
    Si "R" est un rôle concret, alors il faut utiliser "Data property assertions" et écrire la valeur de "j" et son type de données.

    Pour des inclusions de concepts C < D, si C est un concept atomique, on le sélectionne dans l'onglet "Classes", et on clique sur le + à côté de "Superclasses". On peut alors décrire le concept "D", qui peut être complexe, avec la syntaxe Manchester.

    On peut également créer des inclusions de rôles, y compris avec des chaines de propriété, dans l'onglet "Object properties". Ou des inclusions de rôles concrets dans "Data properties".
    7susd bl'ham owsql wuul pô!

  4. #4
    Débutant
    Inscrit en
    Juin 2007
    Messages
    453
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 453
    Points : 97
    Points
    97
    Par défaut
    Merci beaucoup, ce que vous disez me paraît très intéressant

    Citation Envoyé par cotechnoe Voir le message
    Bonjour Daniel 1985,
    Je ne peux pas répondre directement à ta question mais je peux t'exposer ma réflexion. À toi de voir si elle t’aide
    La première de ces réflexions
    Le SPARQL est un langage de requêtes comme l’est le SQL. Je n’ai pas de références là-dessus mais je sais qu’il est possible d’exprimer une requête SQL dans un formalisme logique en passant par la théorie des ensembles
    Deuxième réflexion,
    Le langage OWL est une implémentation directe de la logique des descriptions, il y a beaucoup d’articles qui documentent la correspondance entre la LD et l’OWL (voir plus bas)[1-6] et particulièrement ce site (http://www.cs.man.ac.uk/~ezolin/dl/ ). Pour le problème du spatio-temporel, là c’est un peu plus compliqué…
    Troisième réflexion,
    Les ontologies OWL ont une propriété intéressante c’est celle d’être « réflexif ». En d’autres termes il est possible de définir un cadre langagier ontologique qui permettra la construction d’ontologies de domaine (OD). Par exemple FOAF (friend of a friend utilisé dans des systèmes comme facebook) est un cadre langagier qui permet de définir des OD qui concernent la mise en relation de personnes. Pour le problème que tu mentionnes, il faut construire un cadre langagier qui permettra de construire des ontologies dans le domaine du spatio-temporel. Tu dois donc définir les concepts et les propriétés de ce domaine. Par exemple la classe Étape et la propriété Précède dont le domaine et l’image réfère à Étape. Lorsque le cadre langagier est définit, le « import » du cadre langagier dans l’ontologie de domaine et l’attribution d’un espace de nommage, disons « st » permet d’accéder aux concepts et propriétés du cadre langagier. Par exemple, dans l’OD il sera possible de référer à la classe Étape en l’associant à son espace de nommage « st:Etape ». Il sera ainsi possible de créer un triplet du style st:Etape(etape1)/st:prédèce/ st:Etape(étape2) et st:Etape(étape2)/st:précède/ st:Etape(étape3). Après inférence, le moteur devrait produire une conclusion de style st:Etape(étape1)/st:précède/st:Etape(étape3).
    Il y aurait encore bien des choses à dire, mais j’ai peur de te souler un peu. Je terminerais en t’envoyant sur une piste qui pourrait être intéressante. Il s’agit d’OWL-S qui est un cadre langagier pour l’implantation ontologique de services web. Plusieurs concepts spatio-temporels y sont définis. Peut-être que cela t’aiderais à pousser ta réflexion.
    Espérant le tout aidant.

    1. Baader, F., Calvanese, D., McGuinness, D.L., Nardi, D., Patel-Schneider, P.F.: The Description Logic Handbook. Cambridge University Press (2007)
    2. Horrocks, I.: OWL: A Description Logic Based Ontology Language. In: Springer (ed.) Logic Programming, vol. 3668, pp. 1-4, Berlin / Heidelberg (2005)
    3. Horrocks, I., Patel-Schneider, P.F., van Harmelen, F.: From SHIQ and RDF to OWL: the making of a Web Ontology Language. Web Semantics: Science, Services and Agents on the World Wide Web 1, 7-26 (2003)
    4. Bhoopalam, K.: Fire – A Description Logic Based Rule Engine for OWL Ontologies with SWRL-like Rules. Faculty of Engineering and Computer Science, degree. Master of Computer Science, pp. 71. Concordia University, Montréal (2005)
    5. Concordia University, Computer Science Department, Description Logics and Semantic Web Description Logics: A Logical Foundation of the Semantic Web and its Applications, http://www.cs.concordia.ca/~haarslev.../dl-semweb.pdf
    6. Description Logics, http://dl.kr.org/

Discussions similaires

  1. comment définir des constantes en C#
    Par samwac dans le forum C#
    Réponses: 11
    Dernier message: 21/01/2009, 18h05
  2. comment définir des constantes applicatives
    Par paolo2002 dans le forum Struts 2
    Réponses: 2
    Dernier message: 03/04/2008, 09h49
  3. Réponses: 7
    Dernier message: 09/02/2008, 08h49
  4. Réponses: 7
    Dernier message: 24/08/2006, 12h21
  5. Comment définir des raccourcis clavier ?
    Par st0nky dans le forum Composants VCL
    Réponses: 3
    Dernier message: 07/12/2005, 20h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo