2017-01-05 4 views
1

でJSON-LDをロードするとき、私はイエナを使用してJSON-LDの文書をロードしています@Contextを上書きすることができます。どのように私はイエナ

Model mj = RDFDataMgr.loadModel([filename]); 

ロードされている実際の内容はここにある:http://build.fhir.org/account-example.jsonld

イエナは行きますオフにしてコンテキストを解決し、エラーを返します(LOADING_REMOTE_CONTEXT_FAILED - 実際の原因をJenaコードで素敵に抑える:-()。しかし、私はコンテキストをオーバーライドして別のソースを使用する必要があります。 build.fhir.orgに投稿されるもの、代わりに自分のローカルバージョンを使用する必要があります。コンテキスト解決を無効にする方法がわかりません

https://github.com/jsonld-java/jsonld-java#code-example - しかし、私はそこからJenaグラフに到達する方法がわかりません(そして私のEclipseコンテキストでカスタム解像度がどのように機能するかを理解していません)

どこのコードで定義されたコンテキストを使ってJenaグラフに到達するにはどうすればよいですか?

答えて

0
  1. 私はJena開発者が関連するタグのRSSストリームを購読していると思います。彼らはLOADING_REMOTE_CONTEXT_FAILEDエラーの明快さに重荷をかけるかもしれません。しかし、それは私には明らかです。

  2. コンテキストをオーバーライドするには、read(Model model, String uri, Context context)メソッドを使用できます。 ModelFactory.createDefaultModel()は、最初の引数として渡すことができるModelのintanceを作成します。 https://github.com/apache/jena/tree/master/jena-arq/src-examples/arq/examples/riot

  3. 代替ライブラリはJenaと互換性がありません(RDF4Jではなく、愚かではありません).Jena依存コードで簡単に使用する方法はありません。

  4. 最後に、モデルを取得するためのコード例を提供しましたが、今度はグラフに言及しました。そのための方法もあります:read(Graph graph, String uri, Context context)

+0

試し{/ *スタッフ* /}キャッチ(最終例外e){新しいJsonLdError(JsonLdError.Error.LOADING_REMOTE_CONTEXT_FAILED、URL)を投げます。 }読み込みに失敗したコンテキストの原因を隠します。間違ったアドレス?設定が間違っている? http認証ですか? CORSがありませんか?間違ったコンテンツタイプですか?多くのことを推測すると、例外からのヒントはありません。 Jenaデベロッパーが読んでいるなら...私はちょうど実際にソースを使用せずにジャーを入手しなければならないと思います... –

+0

.read() - ポインタありがとうございますが見つけられません私の問題を解決するためにコンテキストを使用する方法を示す例。私はちょうどソースを歩かなければならないと思います –

+1

サウンド関連https://issues.apache.org/jira/browse/JENA-1178 - あなたはJenaユーザーのリストに尋ねることができます。誰もがStackOverflowを購読しているわけではありません。 – AndyS