2013-11-27 44 views
0

我有一個RDFS本體,其中我有一個類Person和另一個類Department 類Person有一個名爲has_name的屬性和一個名爲member_of屬性的域 Person和Range Department。 類Department具有一個名爲dep_city的屬性,另一個名爲dep_name,都具有域Department和範圍文字。SPARQL查詢RDFS本體

我想創建一個查詢,以便返回每個具有dep_city =「New York」的部門member_of的Person的has_name值。

我的問題是如何連接我需要創建我的查詢的兩個類。

我可以返回所有有dep_city =「紐約」

我也知道如何返回所有的人的所有has_name,但我不知道我是否可以連接兩個部門的dep_name。

請幫幫我 謝謝!

回答

2

我不知道你用什麼名稱空間,所以我會用http://example.org/

SELECT ?name 
WHERE { 
    ?person <http://example.org/has_name> ?name . 
    ?person <http://example.org/member_of> ?department . 
    ?department <http://example.org/dep_city> "New York" 
} 

順便說一句,你讀過SPARQL 1.1 Query規範?這是一個非常簡潔的文件,有很多例子