1

指定されたリソース(サブジェクトまたはオブジェクトとして)を含むモデルのすべてのプロパティを返す方法...?

そのリソースに関連するプロパティのstring[]を返すメソッド。

4

1 に答える 1

2

listSubjectsWithPropertyAFAIKには、モデル内のすべての述語または特定のサブジェクトのすべての述語を返すことに相当するものはありません。ただし、実装は非常に簡単です。

JenaSimpleSelectorを使用すると、モデルをトラバースして、トラバーサルを特定の条件に制限できます。この場合、件名として次のステートメントのみをフィルタリングします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、常にセレクターに戻ります。

于 2013-03-06T17:58:32.637 に答える