[英]SPARQL Query to extract subject predicate and object for persons
我是語義 web 的新手,並試圖找出一種方法來獲取有關人員的一些數據,格式如附圖所示。 如果有人可以提供幫助,我將不勝感激。
在您開始時,我將做一些假設。 首先,該圖像過於簡化了將要返回的數據,所有主題和謂詞都是URI,而並非所有數據都在DBpedia中。
我假設您將在處使用SPARQL端點 ,它將在HTML表的瀏覽器中將結果返回給您。 您還可以使用適當的軟件/庫將SPARQL請求發送到相同的URL。
這是一個入門的查詢,DBpedia上有很多人,所以我做到了,您可以選擇想要的人。 該查詢還將僅返回英語的?objects,您可以刪除&& lang(?object) = "en"
以獲取所有對象。 該?subject a dbo:Person.
並不是嚴格要求的,但我將其保留了下來,以便您可以刪除所有過濾條件並且仍然只能吸引人。 LIMIT 20
是它將返回的最大行數。
SELECT DISTINCT *
WHERE {
?subject a dbo:Person.
?subject ?predicate ?object.
FILTER (?subject IN (dbr:John_Lennon, dbr:Yoko_Ono, dbr:Jimmy_Carter,
dbr:Bill_Clinton) && lang(?object) = "en")
} LIMIT 20
將其放在此處的表單中,您將獲得包含三列的表格的結果: ?subject, ?predicate, ?object
您可能想嘗試 wikidata 和命令行工具https://github.com/maxlath/wikibase-cli
npm install -g wikibase-cli
然后配置你的語言為英語
wd config lang en
現在一一搜索你的主題:
wd search "John Lennon"
並選擇/刪除您正在尋找的條目,例如 John Lennon:
Q1203 John Lennon English singer and songwriter, founding member of The Beatles (1940–1980)
檢查您的謂詞是否有聲明,例如
wd claims Q1203 | grep instrument
instrument (P1303):
guitar (Q6607) |
piano (Q5994) |
harmonica (Q51290) |
bass guitar (Q46185) |
keyboard instrument (Q52954) |
voice (Q17172850)
重復...
如果您不確定可用的謂詞使用
wd props
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.