2011-11-15 15 views
5

Estoy tratando de acceder a ontologías a través de Eclipse. Yo uso el búho-api. Creo mis ontologías en Protegé, sin embargo, quiero crear y clasificar nuevos INDIVIDUALES por código. ¿Cómo es eso posible? Busqué en Google todo pero no puedo encontrar ninguna información útil.BÚHO Individuo en java

Macro-ejemplo: - ontología 'a' que tiene las entidades 'B', 'C' y 'D'. - Creo una 'z' individual y quiero saber si puede formar parte de 'B', 'C', 'D' o ninguna de las entidades.

Enfrentado 3 problemas: - No sé cómo crear un individuo de un tipo - No sé cómo llenar las propiedades de los datos del individuo. - No sé si hace funcionar el razonador (bueno, todavía no lo he probado porque no puedo hacer los pasos anteriores).

¿Me puede ayudar? ¡Gracias por adelantado!

Nuno

Respuesta

6

API OWL tiene documentación fresco aquí: http://owlapi.sourceforge.net/documentation.html

Por lo tanto, para crear un individuo de una clase:

OWLClass person = dataFactory.getOWLClass(":Person", pm); 
OWLNamedIndividual mary = dataFactory.getOWLNamedIndividual(":Mary", pm); 
OWLClassAssertionAxiom classAssertion = dataFactory.getOWLClassAssertionAxiom(person, mary); 
manager.addAxiom(ontology, classAssertion); 

Para añadir algunas propiedades:

OWLIndividual matthew = dataFactory.getOWLNamedIndividual(IRI.create(base + "#matthew")); 
OWLIndividual peter = dataFactory.getOWLNamedIndividual(IRI.create(base + "#peter")); 
OWLObjectProperty hasFather = dataFactory.getOWLObjectProperty(IRI.create(base + "#hasFather")); 
OWLObjectPropertyAssertionAxiom assertion = dataFactory.getOWLObjectPropertyAssertionAxiom(hasFather, matthew, peter); 

También hay un ejemplo de razonador, pero es más largo, así que compruébalo.

+0

Si Mary tiene un padre, ¿cómo puedo hacer? –