如何解决Yago/DBpedia中的消歧问题?

发布于 2024-12-21 17:55:39 字数 78 浏览 1 评论 0原文

假设我正在搜索诸如“绿野仙踪”之类的实体,并且知道我对这本书特别感兴趣,而不是对电影或音乐剧。 在大多数情况下哪种查询/方法会返回正确的结果?

Assuming I am searching for an entity such as "Wizard of Oz" and know I am specifically interested in the book rather then movie or musical.
Which query/method will return correct results on most cases?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

卖梦商人 2024-12-28 17:55:39

您可以使用如下查询来做到这一点:

SELECT * WHERE {
  ?s <http://dbpedia.org/property/name> ?name .
  ?s a <http://dbpedia.org/ontology/Book> .
  FILTER(regex(STR(?name), "wizard of oz", "i"))
}

You can do that with a query like:

SELECT * WHERE {
  ?s <http://dbpedia.org/property/name> ?name .
  ?s a <http://dbpedia.org/ontology/Book> .
  FILTER(regex(STR(?name), "wizard of oz", "i"))
}
赠意 2024-12-28 17:55:39

由于每本书(而且只有书籍)都有 ISBN,我想您可以接受 Steve Harris 的查询,您可以询问它是否有 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"))
}

As every book, and only books, have an ISBN, I guess you can take Steve Harris' query and, instead of asking if it is a book, you can ask if it has an 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"))
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文