どのWebアプリケーションでも、3つ以上のレイヤーについてアーキテクチャ上の決定を下す必要があります。
ストレージ層
(イエナ、ヴィルトゥオーゾ、ゴマ、門徒)は、あなたのデータを格納するためのいくつかの方法を提供するオントロジー操作するためのツールのほとんどは:(、モデルインプロセス(メモリ内の)RDBモデルあなたの選択したRDBMSで)、ネイティブ形式のストレージ。選択は、環境の制約とパフォーマンス/スケーラビリティの要件によって異なります。ここでのソリューションを選択する
操作層
は常に抽象化と表現のレベルの間にいくつかのトレードオフをもたらします。これは、すべてのオントロジー構造をオブジェクト指向の構造にマッピングするのが難しいためです。
あなたが間を選択することを考えると
:あなたのオントロジーのクラスに対応するJava POJOクラスを生成
JastorはイエナOntModel
またはModel
をラップが、あなたからイエナの内部を隠し、あなたが見つけた場合、それはあなたが常にそれを延長することができる制限。注意してください、Jastorはもはや維持されていないようです。
表現層
操作層技術を使用すると、HTML出力を生成するためにJSPのような伝統的な技術を使用することができますので、あなたは、表現ビューからオントロジーの内部を非表示にしてみましょう。それでも、いくつかの問題については、RDF/XML形式のモデルを発行し、それにXSL(T)のような変換を適用すると便利かもしれません。私はrx4RDFというPythonベースのツールを見つけました。この種の変換をサポートするのに便利です。
免責事項:私は上記の技術で6年前に働いた。その間に物事が変わったかもしれない。したがって、
- 既存の異なるセマンティックWebアプリケーションのアーキテクチャを確認し、問題に適したアーキテクチャを見つけることをお勧めします。例えば、here。
- セマンティックWebツールの分野では多くの作業が行われていますが、これはまだ技術です。あなたの質問をよりよくターゲットにするには、製品のメーリングリストと調査のための質問をしてみてください。
- また、W3CはRDF処理にかなり長いlist of toolsを維持します。