Доброе утро, я работаю с OWL API, и я пытаюсь получить данные внутри совы: Ограничение. Например, я использую для пиццы онтологию, и я хочу, чтобы получить данные для onProperty и someValuesFrom, который является частьюИзвлечь сову: ограничения с использованием OWL API
<owl:Class rdf:about="#American">
<rdfs:label xml:lang="pt">Americana</rdfs:label>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="#hasTopping"/>
<owl:someValuesFrom rdf:resource="#TomatoTopping"/>
</owl:Restriction>
</rdfs:subClassOf>
...
</owl:Class>
Так что, если у меня есть американский OWLClass, как я могу получить список OwlRestrictions и к свойствам, к которым он относится. Что-то вроде американец -> subClassOf -> Ограничение -> onProperty -> hasTopping. Есть ли способ создать структуру данных, в которой есть все эти шаги?
Что вы пробовали? Что не сработало? OWL-API хорошо документирован, и документация содержит множество примеров. Не слишком сложно получить подклассы класса, проверить, являются ли они ограничениями, и вытащить части ограничения, если они есть. –
Вы также можете взглянуть на этот пример https://github.com/owlcs/owlapi/blob/version3/contract/src/test/java/org/coode/owlapi/examples/Examples.java#L1171-L1267, который описывает его довольно приятно с помощью посетителя. –