2017-10-26 27 views
0

私はトリプレットの世界を新しくしています:-) DotNetRDFを使用して、DotNetRDFを使用してSOLR検索結果をグラフにロードしようとしています。DotNetRDFを使用してURLからrdf/jsonをロード

私はからデータを取得していますURLは次のとおりです。

https://nvv.entryscape.net/store/search?type=solr&query=rdfType:https%5C%3A%2F%2Fnvv.entryscape.net%2Fns%2FDocument+AND+context:https%5C%3A%2F%2Fnvv.entryscape.net%2Fstore%2F1

形式は、 "RDF/JSON" ことになっています。パーサーや私が試したことに関係なく、「無効なURI」しか得られません。 URLからロードしようとしましたが、結果をファイルにダウンロードしてファイルからロードしようとしましたが、同じエラーが発生しました。

私はVS2017を使用しており、DotNetRdfの最新バージョンを「ナゲット」しています。

どうすれば分かりませんか?

よろしく、

ラースSiden

答えて

2

そのエンドポイントによって返されるJSONが有効なRDF/JSONではないように見えます。いくつかのRDF/JSONフラグメントが含まれているように見えますが、別のJSON構造の中にラップされています。 dotNetRDFのRDFJSONParserでは、JSONドキュメント全体がRDF/JSONの有効な1つのチャンクである必要があります。

resource.children[*].metadataの値は、RDF/JSONオブジェクトです。値はresource.children[*].infoです。残りは、有効なIRIではないプロパティ名を使用するラッパーです(したがって、パーサーエラーメッセージ)。

残念ながら、残りのJSONドキュメントをスキップして有効なビットのみを解析する方法はありません。これを行うには、Newtonsoft.JSONを使用してJSONドキュメントをロードし、RDFJSONParserのLoad(IGraph、TextReader)またはParse(IRdfHandler、TextReader)を使用して、目的の各有効なRDF/JSONオブジェクトを文字列としてシリアル化してロードする必要があります。方法。

+0

ありがとうございます!私は昨日ことを試みた同じ結論残念ながら:-(、になってきた - 。私はまだどちらかのグラフオブジェクトに断片を読み込むことができませんでした私は私の次のステップは、「JsonRdfJunk」からパーツをカット&ペーストすることになると思うし、私は解析されるべき部分を得ることができるかどうかを見てください。 –

関連する問題