-1

コンパイル中に問題が発生しました。問題を理解するのを手伝ってもらえますか?

`

public static void main(String[] args) throws IOException {

    File dir = new File("C:data\\test");

    String[] fileNames = dir.list();
    FileWriter outFile = new FileWriter("out.ttl");

    RDFWriter writer = org.eclipse.rdf4j.rio.Rio.createWriter(RDFFormat.TURTLE, outFile );

        writer.startRDF();
    for (String fileName : fileNames) {
        System.out.println("Reading from " + fileName);

        File f = new File(dir, fileName);

        Model data = Rio.parse(new FileInputStream(f), "", RDFFormat.TURTLE);
        for (Statement st: data) {
            if ( "efrbroo:F22_Self-Contained_Expression" != null ) { 
                        writer.handleStatement(st);
            }

        }
    }

    writer.endRDF();

}

`

この問題に関する最初の質問は次のとおりです: RDF4J データ マージ

4

1 に答える 1

0

StatementRDF ステートメントの Java 表現、つまり「トリプル」であるオブジェクトをループしています。これには、主語 ( から入手可能Statement.getSubject())、述語 ( Statement.getPredicate())、および目的語 ( Statement.getObject()) があります。https://rdf4j.eclipse.org/documentation/getting-started/の詳細な紹介を参照してください。

たとえばhttp://example.org/F22_Self-Contained_Expression、オブジェクトとして IRI を持つすべてのトリプルを削除したい場合は、次のようにします。

 IRI f22SelfContainedExpression = SimpleValueFactory.getInstance().createIRI("http://example.org/F22_Self-Contained_Expression"); 

 ... 

 if (!st.getObject().equals(f22SelfContainedExpression)) {
      writer.handleStatement(st);
 }
于 2019-03-19T06:29:19.453 に答える