2011-04-12 102 views
1

是否可以使用JENA獲取OWL文件中存在的所有類的名稱並將其存儲在數組列表中?使用JENA API - 獲取OWL文件中的所有類

OntModel base = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM, null); 
    OntModel model = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM_MICRO_RULE_INF, null); 

    String NS = "http://www.abc.com/abcportal/abc.owl" + "#"; 

base.read("file:abcInstance.owl"); 
    ExtendedIterator<OntClass> iter = base.listClasses(); 

    while (iter.hasNext()){ 
     System.out.println(iter.next()); 
    } 

回答

5

是的,請參閱Javadoc的OntModel.listClasses。您可以輕鬆地將Iterator的內容複製到數組中或List。你問這個問題表明,你可能會從閱讀Jena ontology API documentation

+0

受益,讓我檢查文檔。謝謝 – Allwyn 2011-04-12 19:40:13

+0

如果這回答你的問題,請按照標準的做法爲StackOverlow並接受答案。如果它不回答這個問題,請告訴我們爲什麼不。 – 2011-04-13 09:43:28

+1

Rite現在我可以從owl文件中檢索類名,例如Schema文件。但我無法從實例文件(即由實例/個人構成的owl文件)中檢索類。請參閱編輯我使用的代碼。 – Allwyn 2011-04-14 06:27:07