【问题标题】:DBpedia Spotlight: get related contentDBpedia Spotlight:获取相关内容
【发布时间】:2014-10-29 22:23:05
【问题描述】:

我需要获取与某个查询在语义上相关的“令牌”列表:DBpedia 页面的“dcterms:subject”字段将是完美的(例如参见http://dbpedia.org/page/Michelle_Obama)。 我可以使用 CURL http post 请求正确获取与我的查询相关的 dbpedia URL。 这个查询

"text=Michelle%20Obama.&confidence=0.2&support=20";

返回这个对象:

{ "@text": "Michelle Obama.", "@confidence": "0.2", "@support": "20", "@types": "", "@sparql": "", "@policy": "whitelist", "Resources": [ { "@URI": "http://dbpedia.org/resource/Michelle_Obama", "@support": "321", "@types": "DBpedia:OfficeHolder,DBpedia:Person,Schema:Person,Freebase:/award/ranked_item,Freebase:/award,Freebase:/organization/organization_member,Freebase:/organization,Freebase:/book/book_subject,Freebase:/book,Freebase:/celebrities/celebrity,Freebase:/celebrities,Freebase:/people/person,Freebase:/people,Freebase:/tv/tv_actor,Freebase:/tv,Freebase:/education/honorary_degree_recipient,Freebase:/education", "@surfaceForm": "Michelle Obama", "@offset": "0", "@similarityScore": "0.20646192133426666", "@percentageOfSecondRank": "-1.0" }] }

目前,我仅使用此对象获取 URL,并使用 URL 获取 DBpedia 页面的整个 html 内容,然后查找我需要的内容(“dcterms:subject”段落),但我认为有一种更有效的方法可以做到这一点,也许直接来自聚光灯。如何调整我的查询以获取该列表(或类似的东西),只关注一个帖子?我什至不需要链接,只需要一个令牌列表。

【问题讨论】:

    标签: sparql semantic-web dbpedia spotlight-dbpedia


    【解决方案1】:

    如果您想要 DBpedia 资源的 dcterms:subject,您可以简单地使用 SPARQL 查询来请求它:

    select ?subject { dbpedia:Michelle_Obama dcterms:subject ?subject }
    

    SPARQL results

    您可以在DBpedia SPARQL endpoint 上运行该查询,并且不难弄清楚如何构建相应的查询 URL。还有一些不同的结果格式,因此您可以尝试最适合自己的格式。

    如果通过标记您只是指这些类别的名称,那么您也可以直接询问。以下应该可以工作,但我目前无法测试; DBpedia 似乎已关闭。

    select ?subject {
      dbpedia:Michelle_Obama dcterms:subject/rdfs:label ?subject
    }
    

    【讨论】:

      猜你喜欢
      • 2017-05-08
      • 1970-01-01
      • 2013-04-13
      • 2011-11-16
      • 2014-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-07
      相关资源
      最近更新 更多