2013-04-21 61 views
2

我是Sparql的新手,需要一些幫助。SPARQL/RDF查詢:從一個類中選擇一個實例

我有一個名爲「Learning_object」的類和名爲「General_characteristics」的子類,它具有一些屬性(標題,語言和描述)。

我在「Learning_object」類中給出了一個名爲「Introduction_to_HTML」的實例。 我想要做的是爲「Introduction_to_HTML」實例選擇「General_characteristics」。

我已經做了一些谷歌的研究,但還沒有找到解決辦法。

我可以利用這個得到 「Learning_object」 的所有實例:

SELECT ?entity 
WHERE { 
    ?entity rdf:type ?General_characteristics. 
?General_characteristics rdfs:subClassOf* :Learning_object. 
} 

提前感謝! (對不起,我的英語)

回答

1

嘗試是這樣的:

SELECT DISTINCT ?property 
WHERE { 
    ?entity rdf:type ?General_characteristics. 
    ?General_characteristics rdfs:subClassOf* :Learning_object. 
    ?entity ?property ?object. 
    FILTER(?entity=<your_BASE_GRAPH_URI/Introduction_to_HTML>) 
} 

檢索適用於您的實例的屬性名稱的列表。如果您還想爲每個屬性使用?對象值,則應該在SELECT DISTINCT ...部分中添加?對象綁定。 請注意,如果你有空白節點,你應該找到對象中的一些「skelmized」值。

+0

它仍然給我「找不到匹配」。也許我創建的實例有問題。 (順便說一句,我使用protege爲我的本體論)。無論如何非常感謝您的幫助! – user2305030 2013-04-21 23:25:18

相關問題