Question

Imaginez la taxonomie suivante (acyclique & graphe orienté):

<my:Eukaryota> <rdfs:subClassOf> <my:Organism>.
<my:Mammal> <rdfs:subClassOf> <my:Eukaryota>.
<my:Primate> <rdfs:subClassOf> <my:Mammal>.
<my:HomoSapiens> <rdfs:subClassOf> <my:Primate>.
<my:Bacteria> <rdfs:subClassOf> <my:Organism>.
<my:Escherichia> <rdfs:subClassOf> <my:Bacteria>.

1) Est-il possible avec le Jena OWL API pour vérifier si une ressource donnée (par exemple HomoSapiens) est une sous-classe de « mammifère » sans récupérer récursive tous les nœuds parents?

2) La même question SPARQL .

Merci

Était-ce utile?

La solution

Si vous utilisez déjà Jena, vous pouvez utiliser l'utilisation de pellets SPARQL-DL moteur de requête , ce qui devrait vous laisser interroger les individus d'une manière consciente ontologie.

Vous pouvez également utiliser InfModel au lieu de l'interface Model, joindre un raisonneur (et ontologie) à, puis exécutez la requête RobV mentionne. Vous pouvez utiliser raisonneur de pellets pour cela si vous vouliez. Vous n'avez pas besoin d'utiliser le OntModel si vous voulez juste faire le raisonnement.

scroll top