Проблема SPARQL Query - ВЫБЕРИТЕ rdf: label WHERE {class rdf: someRelation otherClass} - PullRequest
0 голосов
/ 24 июня 2019

Я хочу запросить онтологию с помощью 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 и онтологии.Спасибо за ваше время!

...