Bonjour à tous,

Je crains que cela ne soit pas possible avec l'expressivité des outils d'inférence de Protégé. Mais qui sait !
Si vous avez la réponse à pourquoi cela est possible théoriquement mais que ce n'est pas disponible sous Protégé, je suis preneur aussi.

Avec un exemple tout bête (preuve que l'on peut arriver vite à ce genre de chose en passant) :
Soit une ontologie avec des personnes(class) et des départements(class). Il y a une relation (object property) de type "vit_dans" entre mes instances de personnes et de départements.
Il y a aussi une relation (data property) de type "a_pour_numéro", qui permet de définir le numéro (entier) de département associé.
Imaginons que l'on ait créé une relation "vit_dans_le_département_de_numéro".
Ce que je voudrais savoir, c'est s'il est possible d'inférer automatiquement cette relation entre toutes mes instances de personnes et le numéro de département dans lequel ils vivent ??? (à condition naturellement que toutes les autres relations aient bien été implémentées)

Sur un cas concret : Martin(instance) vit_dans l'Essonne(instance) ; Essonne(instance) a_pour_numéro 91(data::entier)
Comment définir une règle qui me permettra d'obtenir : Martin(instance) vit_dans_le_département_de_numéro 91(data::entier) ???
Si cela est possible bien entendu.

ATTENTION : On a un nombre fini de départements ici, donc les petits malins voudront peut-être créer des instances de numéro de départements (ce qui est déjà embêtant quand même).
Or, le but du jeu est justement d'éviter de faire ça. On pourrait d'ailleurs imaginer des exemples où il y aurait un nombre très grand, voir infini de valeurs possibles (des températures, des distances, etc.).

Dans l'onglet "Data property hierarchy", on a pas la chance d'avoir un "SuperProperty Of (Chain)" comme dans l'onglet "Object property hierrachy".
Et dans "General class axioms", on ne peut définir de règles de composition apparemment (on ne peut que faire des opérations sur des ensembles grosso modo).

Merci d'avance !