基本的に、Any23 distiller を使用して、RDFa が埋め込まれたファイル (xhtml+xml 出力オプションを使用して DBpedia Spotlight によって作成された実際のファイル) から RDF ステートメントを抽出します。Any23 RDFa distiller を使用すると、RDF ステートメントを抽出できます (Java-RDFa も使用してみましたが、プレフィックスしか抽出できませんでした!)。しかし、ステートメントを Jena モデルに渡して結果をコンソールに出力しようとしても、何も起こりません!
これは私が使用しているコードです:
File myFile = new File("T1");
Any23 runner= new Any23();
DocumentSource source = new FileDocumentSource(myFile);
ByteArrayOutputStream outA = new ByteArrayOutputStream();
InputStream decodedInput=new ByteArrayInputStream(outA.toByteArray()); //convert the output stream to input so i can pass it to jena model
TripleHandler writer = new NTriplesWriter(outA);
try {
runner.extract(source, writer);
} finally {
writer.close();
}
String ttl = outA.toString("UTF-8");
System.out.println(ttl);
System.out.println();
System.out.println();
Model model = ModelFactory.createDefaultModel();
model.read(decodedInput, null, "N-TRIPLE");
model.write(System.out, "TURTLE"); // prints nothing!
誰が私が間違ったことを教えてもらえますか? おそらく複数のこと!
RDF ステートメントのサブジェクトを any23 から (Jena をバイパスして) 直接抽出できる簡単な方法はありますか? 私はプログラミングの経験がまったくないので、助けていただければ幸いです。