2012-07-11 44 views
1

有关我需要他们的父母的组织名单。在freebase.com的查询编辑器,我使用下面的查询:在Freebase MQL中,如何编写查询以获取组织的父级名称?

{ “ID”: “/ EN/daihatsu_motor_company”, “/机构/组织/父”:{ID:空}}

而且我得到以下结果:

{ “代码”: “/ API /状态/确定”, “结果”:{ “/机构/组织/父”:{ “ID “:”/ m/04kjl82“ }, ”id“:”/ en/daihatsu_motor_company“ }, “状态”: “200 OK”, “TRANSACTION_ID”: “缓存; cache03.p01.sjc1:8101; 2012-07-10T22:54:06Z; 0030” }

然而,我我期待id:toyota_motor_corporation。

从freebase.com的查询编辑器,我可以点击ID( “ID”: “/ M/04kjl82”),这是来查看与该信息,我需要一个链接:

http://www.freebase.com/view/m/04kjl82

我如何直接获得母公司的名称或者它的id(例如toyota_motor_corporation)?

谢谢,

回答

1

克劳迪奥的答案是接近的,但如果你真的想要的ID,你需要调整由于返回的默认属性是名称而不是ID,因此稍有查询。这将让你的ID:

{ 
    "id": "/en/daihatsu_motor_company", 
    "/organization/organization/parent": { 
    "parent": {"id":null} 
    } 
}​ 

将返回

"result": { 
    "/organization/organization/parent": { 
     "parent": { 
     "id": "/en/toyota_motor_corporation" 
     } 
    }, 
    "id": "/en/daihatsu_motor_company" 
    } 

说了这么多,你应该考虑using the MID而不是ID,因为这是建议的标识,这些天。

1

您的查询返回父和子之间的组织关系的ID。你需要的是家长,您可以用下面的查询得到它:

{ 
    "id": "/en/daihatsu_motor_company", 
    "/organization/organization/parent": { 
    "parent": null 
    } 
}​ 

返回

{ 
    "code":   "/api/status/ok", 
    "result": { 
    "/organization/organization/parent": { 
     "parent": "Toyota Motor Corporation" 
    }, 
    "id": "/en/daihatsu_motor_company" 
    }, 
    "status":  "200 OK", 
    "transaction_id": "cache;cache03.p01.sjc1:8101;2012-07-11T21:50:01Z;0045" 
} 
+0

谢谢Claudio!它工作完美。 – user1518419 2012-07-13 18:08:35