如何返回模型中涉及指定资源(作为主题或对象)的所有属性......?
返回与该资源相关的属性的字符串 [] 的方法。
AFAIK 没有等效于listSubjectsWithProperty
返回模型中的所有谓词或给定主题的所有谓词。虽然它很容易实现:
使用 Jena SimpleSelector
,您可以遍历模型并将遍历限制在某些条件下。在这种情况下,我只过滤具有主题的语句someRelevantSubject
:
SimpleSelector selector = new SimpleSelector(null, null, (RDFNode)null) {
public boolean selects(Statement st)
{ return st.getSubject().equals(someRelevantSubject);}
}
使用选择器,迭代模型并添加谓词并将谓词添加到标准 Java 集中:
StmtIterator iter = model.listStatements(selector);
while(it.hasNext()) {
Statement stmt = iter.nextStatement();
some_set.add(stmt.getPredicate().toString());
}
如果您想要所有不同的谓词而不管主题,只需true
始终在选择器中返回。