从id中检索freebase四个转储类型的名称

我目前正在使用freebase转储项目来处理一个项目,该项目将断言插入到每个中间命令的LevelDB中。 我的目标是能够为Bob Dylan之类的特定名称检索与其关联的所有类型的名称。

例如,“鲍勃迪伦”将对应于“音乐家”,“电影制片人”等,每一个都对应于“/音乐/艺术家”,“/电影/制片人”等类型。

不幸的是,如果能够很容易地找到Bob Dylan进入四方垃圾场

/m/bobdylanmid        /common/topic/notable_types   /music/artist
/m/bobdylanmid        /common/topic/notable_types   /film/producer

我希望现在能够以各种语言查找这些类型的名称。 但我无法找到合理的方式在转储中检索它们。

有任何线索吗?


我不是100%确定的,但我不认为这个模式实际上是四轮转储。 我知道它从未曾经是。

您需要使用这样的查询来查找名称。 不幸的是,人类可读的名字只能用英文存在,所以你需要跳过一些其他的语言。 为此,你可以尝试一些更复杂的查询

[{
  "id":   "/music/artist",
  "/freebase/type_profile/equivalent_topic": {
    "name": {
      "lang":  null,
      "value": null
    }
  },
  "name": null
}]​

它取决于所填写的“等效主题”属性,所有类型可能都不是这种情况。 如果您只需要几种语言,则可以修改查询以明确返回(“音乐家”有45种不同的语言版本)。


如果你主要对像你的例子这样的案例感兴趣(一个人是/是一个......)使用属性(而不是类型)可能会完成这个工作,在你的情况下(后者通过cvt):

/people/person/profession
/people/person/employment_history /business/employment_tenure/title

这可能更像你想要的东西,除非你也想显示,例如艾伦图灵是一个“文学主题”。

对于相应的实例(使用types / business / job_title,/ people / profession),您可以使用不同语言(如果存在)获取名称。

链接地址: http://www.djcxy.com/p/64421.html

上一篇: Retrieving freebase quad dump type names from id

下一篇: Finding all possible combinations of numbers to reach a given sum