[英]Non unique query with Freebase MQL read google api
看来我只能用新的freebase MQL读api做独特的查询(即在查询中包含一个实体id):
以下搜索id和type:
https://www.googleapis.com/freebase/v1/mqlread?query={"name":null,"id":"/en/bob_dylan","type":"/people/person"}
并成功返回:
{
"result": {
"type": "/people/person",
"id": "/en/bob_dylan",
"name": "Bob Dylan"
}
}
以下搜索仅使用类型:
https://www.googleapis.com/freebase/v1/mqlread?query={"name":null,"type":"/people/person"}
要么
https://www.googleapis.com/freebase/v1/mqlread?query={"name":[],"type":"/people/person"}
并返回以下错误:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "badRequest",
"message": "Unique query may have at most one result. Got 100"
}
],
"code": 400,
"message": "Unique query may have at most one result. Got 100"
}
}
我希望它能够返回一个人名列表
您必须在[]中包装查询,如下例所示:
https://www.googleapis.com/freebase/v1/mqlread?query=[{"name":[],"type":"/people/person"}]
我最近也遇到过类似的问题。 确保获得单个结果集的最佳方法是在mql查询中使用“limit:1”参数。 例如:
https://www.googleapis.com/freebase/v1/mqlread?query={"type":[],"name":"india","limit":1}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.