13

Project Gutenberg の大きな RDF ファイルを解析しようとしています。私のチームの別のメンバーは、Semweb と python ライブラリを試してかなり行き詰まっています。

rdf について少し無知なので、単純な xml 構文解析スクリプトを Ruby で作成しようとしました。複雑すぎて実際に機能しないことにすぐに気付きました。

Intellidimension のツールをダウンロードして使用することを考えています。

SPARQLの使い方がよくわからない。JavaにはJenaというパーサーがあるようです。.NETにそのようなものはありますか?

明らかな質問で申し訳ありません....SPARQLクエリをどこに書くべきかわかりません。Data.SQlClient と同様に、文字列を使用してクエリを作成し、Sparql プロセッサに対して実行できるライブラリはありますか?

何に対して Sparql を実行しますか?

4

4 に答える 4

8

.Netのもう1つのオプションは、dotNetRDFです(免責事項-私はこのプロジェクトのリード開発者です)

現在維持されており、活発な継続的な開発が行われているSemWebに比べて利点があり、さらにRDFaやSPARQL1.1などの新しいセマンティックWebテクノロジーの多くのサポートが含まれています。

Intellidimensionと比較すると、完全に無料であるという利点があります(ニーズに応じて、GPL、LGPL、またはMITから独自のライセンスを選択してください)

Re:SPARQL

SemWebとdotNetRDFの両方に、クエリを実行するためのSPARQLパーサーとエンジンが含まれています。SemWebは、古いJavaベースのSPARQLエンジンのIKVMポートに基づいており、Jenaフレームワークのはるかに優れたARQエンジンに取って代わられています。dotNetRDFには、ARQと同等の機能を備えたリバイアサンエンジンが搭載されています(ただし、一部の種類のクエリでは必ずしもパフォーマンスが優れているとは限りません)。

ARQ(Jena)とLeviathan(dotNetRDF)はどちらも、新しいSPARQL1.1仕様の大部分をサポートしています。SQLの既存の知識がある場合は、これをサポートするエンジンを使用することをお勧めします。これにより、SQLの使い慣れた機能の多くがSPARQL言語に追加されます。たとえば、集計(COUNT、MAXなど)、GROUP BY、HAVING、プロジェクト式( fn:concat(?x、?y)AS?z)

于 2010-12-06T11:14:38.190 に答える
3

その方法は、SemWebライブラリを使用して、RDFファイルをメモリに解析してからデータベースに解析することです。関連するオントロジーをインポートすることもできます。

SemwebにはSPARQLライブラリが組み込まれているため、データベースでSPARQLクエリを実行できます。SPARQLに慣れていない場合は、LINQを使用できます。

Semantic Web Technologiesを初めて使用する場合は、最初にSemantic Web Primer(書籍およびPowerPointファイルとして入手可能)を読むことをお勧めします。JenaWebサイトには素晴らしいSPARQLチュートリアルもあります

于 2010-12-05T03:00:04.210 に答える
2

さらに別のオプションはdotSesameライブラリです。これは、Java RDF フレームワークSesameの IKVM ポートです。これには、RDF パーサー、ライター、SPARQL クエリ エンジン、および推論機能が含まれています。

于 2010-12-06T12:25:38.007 に答える
0

RDFSharp ( http://rdfsharp.codeplex.com/ ) を使用すると、SPARQL クエリを流暢に作成してグラフやストアに適用できるため、SPARQL を知る必要はありません。SPARQL クエリを 1 行も書く必要はありません。

于 2014-01-09T12:13:41.163 に答える