2016-12-10 28 views
0

的個體具有超一流的它有兩個子類學生員工查詢超類。學生子類包含3個人(姓名屬性):student1,student2,student3。員工子類包含2個人(姓名屬性):員工1和員工2。門徒:(SPARQL)的子類

是它可以查詢類並獲取所有個人,因爲它是超類?

你還能怎麼辦呢?特別是當你有這麼多的子類時?

輸出類似:

-----------

student1

STUDENT2

學生三

STAFF1

staff2

回答

1

你要問項目,是指:Person或任何其子類的成員的所有資源。如果你使用property path,你只需要一個三模式在您的查詢:

SELECT ?person 
    WHERE { ?person a/rdfs:subClassOf* :Person} 

這個查詢請求屬於類:Person,這是情況下,當明星是零,或者是會員的會員資源它的任何子類,當明星是一個或多個時就是這種情況。

如果需要,您可以進一步限制主題爲owl:NamedIndividual

+0

非常感謝。這讓我很頭疼。請你可以解釋一下/ rdfs:subClassOf *。 –

+0

我相信我做過了,但是如果在閱讀了關於SPARQL規範中的屬性路徑之後,仍然不清楚,您可以在此單獨發佈一個問題,因爲它與此無關。 –