我是Freebase中的新成員,我有一個簡單的問題。我想使用Freebase KB來查找兩個實體之間的關係。例如,如果我有名稱實體「華盛頓」和「美國」,我想向Freebase發送一個查詢,並在無關聯的情況下得到: 位置/位置/資本或空值。查找Freebase中兩個實體之間的關係
非常感謝。
我是Freebase中的新成員,我有一個簡單的問題。我想使用Freebase KB來查找兩個實體之間的關係。例如,如果我有名稱實體「華盛頓」和「美國」,我想向Freebase發送一個查詢,並在無關聯的情況下得到: 位置/位置/資本或空值。查找Freebase中兩個實體之間的關係
非常感謝。
如果你只想去一層(即最近的鄰居),如果你使用在線版本的Freebase,使用反射API是非常簡單的。如果您使用的是批量下載,則需要使用您正在使用的任何查詢引擎(可能是SPARQL,除非您將RDF轉換爲其他內容)。
如果你想找到最短的路徑(es),無論它們是誰,它們就會變成圖形搜索算法。
編輯:
[{
"type": "/location/administrative_division_capital_relationship",
"capital": [{
"id": null
}],
"administrative_division": [{
"id": null
}],
"limit": 1
}]
注意,華盛頓特區,因爲數據是不是在這個遊離鹼會返回null:如果你只是想找到議會大廈,您可以在此查詢您的ID填寫。
如果您需要處理任意屬性,則需要使用反射。請參閱https://developers.google.com/freebase/mql/ch03#reflection
謝謝湯姆,但你可以給我一個查詢建議嗎?我正在使用在線API來訪問Freebase,並且讓我說我希望上面提到的(位置/位置/包含)必須在實體之間達到最大3級距離。我有Guid的實體,所以我可以通過GUID進行搜索 – user2831355
您是否找到解決方案? – Anish