Предполагая, что я ищу такой объект, как "Волшебник страны Оз", и знаю, что меня интересует книга, а не фильм или мюзиклКакой запрос / метод вернет правильные результаты в большинстве случаев?
Вы также можете сделать это с помощью DBpedia Lookup:
http://lookup.dbpedia.org/api/search.asmx/KeywordSearch?QueryClass=book&QueryString=wizard+of+oz
Или с помощью прожектора DBpedia:
http://spotlight.dbpedia.org/rest/candidates?text=wizard+of+oz+book
Вы можете сделать это с помощью запроса:
SELECT * WHERE { ?s <http://dbpedia.org/property/name> ?name . ?s a <http://dbpedia.org/ontology/Book> . FILTER(regex(STR(?name), "wizard of oz", "i")) }
Поскольку каждая книга, и только книги, имеют ISBN, я думаю, вы можете ответить на вопрос Стива Харриса и вместо того, чтобы спросить, является ли она книгой, есть ли у нее ISBN.
SELECT * WHERE { ?s <http://dbpedia.org/property/name> ?name . ?s <http://dbpedia.org/ontology/isbn> ?isbn . FILTER(regex(STR(?name), "wizard of oz", "i")) }