14

RDFやOWLのデータを扱えるライブラリを探しています。

これまでのところ、私は見つけました:

  • semweb (私の知る限り、フクロウはサポートされていません)
  • rowlex (「ブラウザ」アプリケーションのほうが多い)

あなたの推奨事項:

  • LinqToRdf (非常に興味深い、ありがとうマーク!)
4

5 に答える 5

12

ROWLEXは実際には非常にクールです(内部でSemWebを使用します)。これは単なるブラウザアプリではなく、C#で記述されたSDKです。ROWLEXを使用する場合、RDFのトリプルと直接対話することはもうありませんが(可能ですが)、オブジェクト指向のルックアンドフィールを提供します。2つの主な使用シナリオがあります。

  1. 最初のビジネスクラス: .NETビジネスクラスがあります。XMLシリアル化属性の場合と同様に、宣言的にクラスに属性を追加します。この後、ROWLEXは、ビジネスクラスに対応するオントロジーを抽出したり、ビジネスオブジェクトをRDFにシリアル化したりできます。
  2. オントロジーファースト:オントロジーがあり、ROWLEXはRDFドキュメントの構築/閲覧に使用できる.NETクラスを生成します。素晴らしいことは、これらの自動生成されたクラスが、コードジェネレーターの典型的な結果よりもはるかに優れていることです。継承グラフ全体をカバーする暗黙的および明示的なキャスト演算子を提供することにより、OWLの複数の継承機能を快適に使用および模倣できます。

典型的な使用法は、オントロジーの最初のアプローチです。たとえば、オントロジーが次の複数の継承シナリオを記述しているとしましょう。

車はSubClassOf車両です

車isSubClassOfCompanyAsset

ROWLEXを使用すると、Car、Vehicle、およびCompanyAssetの.NETクラスを取得できます。次のC#コードは、問題なくコンパイルされます。

    RdfDocument rdfDoc = new RdfDocument();
    Car car = new Car("myCarUri", rdfDoc);
    Vehicle vehicle = car; // implicit casting
    CompanyAsset companyAsset = car; // implicit casting 
    vehicle.WheelCount = 4;
    companyAsset.MonetaryValue = 15000;
    Console.WriteLine(rdfDoc.ToN3());

これは印刷されます:

myCarUri typeOf Car 
myCarUri WheelCount 4 
myCarUri MonetaryValue 15000

「車」ビジネス・オブジェクトは、RdfDocument内でトリプルとして表されます。自動生成されたC#/VBクラスはビューとして動作します。同じビジネスオブジェクト上に複数のC#ビュー(それぞれが完全に異なるタイプ)を持つことができます。これらのビューを操作するときは、実際にRdfDocumentを変更します。

于 2009-02-13T12:27:04.090 に答える
10

BrightstarDB は、LINQ と OData をサポートする .NET エンティティ フレームワークである SPARQL をサポートする、ネイティブの .NET NoSQL RDF トリプル ストアです。開発者とオープン ソース プロジェクトは無料で、商用利用の場合はランタイム コストがわずかです。

BrightstarDB は、3 つのレベルの API を提供します。

  1. SPARQL クエリと単純なトランザクション API。
  2. トリプルのコレクションをデータ オブジェクトにグループ化する汎用オブジェクト API
  3. インターフェイス定義を取得し、データを RDF として BrightstarDB インスタンスに格納する、厳密に型指定された .NET ドメイン モデルを生成する Visual Studio 統合。.NET モデルは LINQ をサポートしており、OData サービスとして公開することもできます。

BrightstarDB のすべてのドキュメントはオンラインで提供されており、ソフトウェアは登録なしでhttp://www.brightstardb.comからダウンロードできます。

于 2012-03-01T14:19:48.900 に答える
7

私はオープン ソース ライブラリdotNetRDFを作成しています。

于 2010-08-23T14:43:38.303 に答える
2

CodeplexでRDFSharpを試してください。若いようですが、有望です。

于 2012-07-09T21:11:21.787 に答える
2

私はこれを数ヶ月前に少し調べました。私が見つけることができるより興味深いプロジェクトの 1 つ: http://www.hookedonlinq.com/linqtordf.ashx

于 2008-10-27T18:30:37.323 に答える