Я хочу запросить онтологию с помощью SPARQL с выводом из алгоритма NLP.Результатом являются списки, один из которых является существительным, а другой - глаголом.Где существительные соответствуют классам, а глаголы - свойствам данных.Поэтому, когда существует отношение noun1 verb1 noun2
, должна быть показана метка
Почему я хочу извлечь метку?Ярлык не очень важен, я просто хочу получить аннотацию от класса.
Почему?Я извлекаю некоторые существительные и глаголы из отчетов.Когда у меня есть связь noun1 verb1 noun2
в моей онтологии, я хочу получить аннотацию noun2
, потому что она имеет решение для моего случая.
Я использую http://www.ontologydesignpatterns.org/ont/dul/DUL.owl для своих тестов.Я считаю, что мой код не работает из-за множества проблем.
Первая проблема: запрос
SELECT ?label
WHERE { ?subject rdfs:subClassOf ?object }
не дает результата.Во-вторых, приведенный ниже запрос не дает результата.
SELECT ?subject ?object
WHERE { ?subject rdfs:actsFor ?object }
Так что в принципе я не понимаю, как писать запросы SPARQL ...
В конечной версии я должен иметь возможность запрашивать что-тонапример
SELECT rdf:label
WHERE { Agent rdfs:actsFor SocialAgent }
и получить ярлык "Социальный агент"
Надеюсь, мой вопрос не запутывает.Я новичок в SPARQL и онтологии.Спасибо за ваше время!