SPARQL: поиск по конечной точке значения - PullRequest
1 голос
/ 03 апреля 2019

Как запросить SPARQL по значению определенной метки?

Например, если у меня есть URI wikidata для конкретной сущности, как мне выполнить поиск по этому URI, например, owl:sameAs

Я пробовал что-то вроде

SELECT
?item
WHERE {
 ?item owl:sameAs ?wikilink.
 FILTER(?wikilink, <http://www.wikidata.org/entity/Q312> )
}
LIMIT10

Моя цель - иметь возможность искать несколько URI одновременно и возвращать, какой из них имеет результат, что-то вроде эквивалента регулярного выражения URI?Но я могу только искать по метке, а не по значению метки.

1 Ответ

2 голосов
/ 03 апреля 2019

Попробуйте что-нибудь вот так -

SELECT ?item
WHERE
  {
    ?item owl:sameAs <http://www.wikidata.org/entity/Q312> 
  }
LIMIT 10

- или это -

SELECT ?item
WHERE
  {
    ?item owl:sameAs ?wikilink .
    VALUES ( ?wikilink ) 
         { ( <http://www.wikidata.org/entity/Q312> ) }
  }
LIMIT 10

Эта статья также может вам помочь.

...