使用语言 属性 时 Freebase 不工作
Freebase not working when language property is used
我想获取有关电影的信息,但如果我使用语言 属性(这对我来说很重要),则此查询不起作用。有什么办法可以实现吗?
[{
"type": "/film/film",
"name": "terminator",
"mid": null,
"language": "en",
"starring": [{
"actor": null,
"mid": null
}]
}]
首先,强制性警告 - 所有 Freebase API 都将在不久的将来 消失 ,因此您不应该基于它们编写新代码。
假设您使用的是 MQLread API,您的查询存在一些问题:
- 没有电影叫 "terminator" 您可以将查询更改为 "The Terminator" 或使用单词匹配运算符
- 类型
/film/film
(或/type/object
)没有属性language
- 英文标识符是
/lang/en
此查询将对默认语言(英语)进行近似词匹配并显示所有语言的姓名:
[{
"type": "/film/film",
"name~=": "terminator",
"name": {
},
"mid": null
}]
如果要更改所有标签的语言,可以使用 lang
查询参数,例如
将语言切换为中文,然后在查询中覆盖它以使用英语查询,如下所示:
[{
"type": "/film/film",
"n1:name": {
"value": "The Terminator",
"lang": "/lang/en"
},
"name": null,
"mid": null
}]
我想获取有关电影的信息,但如果我使用语言 属性(这对我来说很重要),则此查询不起作用。有什么办法可以实现吗?
[{
"type": "/film/film",
"name": "terminator",
"mid": null,
"language": "en",
"starring": [{
"actor": null,
"mid": null
}]
}]
首先,强制性警告 - 所有 Freebase API 都将在不久的将来 消失 ,因此您不应该基于它们编写新代码。
假设您使用的是 MQLread API,您的查询存在一些问题:
- 没有电影叫 "terminator" 您可以将查询更改为 "The Terminator" 或使用单词匹配运算符
- 类型
/film/film
(或/type/object
)没有属性language
- 英文标识符是
/lang/en
此查询将对默认语言(英语)进行近似词匹配并显示所有语言的姓名:
[{
"type": "/film/film",
"name~=": "terminator",
"name": {
},
"mid": null
}]
如果要更改所有标签的语言,可以使用 lang
查询参数,例如
将语言切换为中文,然后在查询中覆盖它以使用英语查询,如下所示:
[{
"type": "/film/film",
"n1:name": {
"value": "The Terminator",
"lang": "/lang/en"
},
"name": null,
"mid": null
}]