Я использую Jena java api для поиска в онтологии и использую команду
Property predicate=model.getProperty("propertyURL");
NodeIterator objects = model.listObjectsOfProperty(predicate);
чтобы найти все экземпляры определенного свойства, где model
- это модель OntModel, в которую загружается файл онтологии.
Теперь мне нужно найти родительский узел / класс, к которому принадлежат эти экземпляры. Поскольку объекты являются RDFNodes, я попробовал метод RDFNode.getClass()
, но он просто возвращает class com.hp.hpl.jena.rdf.model.impl.ResourceImpl
, что мне не нужно.
Мне нужно что-то подобное с Individual.getOntClass()
. Я также попытался преобразовать объекты RDFNode в Individuals, а затем использовать эту функцию, но в этом случае кажется, что класс не сохраняется во время этого преобразования, потому что он возвращает класс #Thing (который является первым из всех).
Есть идеи, как я могу получить класс объектов?
Заранее спасибо!
model.listObjectsOfProperty()
возвращает RDFNodes, которые являются листьями дерева онтологии, я пытаюсь получить родительские классы, к которым они принадлежат. - person missrg   schedule 11.01.2013