私は拡張することにより、フクロウ-API 4.5.2かかわらず、カスタム・ストレージ・レンダラを実装している: AbstractOWLStorer
OWLStorerFactoryImpl
AbstractOWLRenderer
OWLDocumentFormatFactoryImpl
PrefixDocumentFormatImpl
OWLObjectVisitor
OWLClassExpressionVisitorAdapter
門徒5.2カスタム "として保存.." ファイル形式
コードは機能していますが、これをfo Protheme 5.2の「Save as ..」ダイアログを通じて利用可能なrmat。私は、プラグインのサンプルコードをガイドとして使用して、プラグインフレームワークを通してコードを正常にロードしました。
は、私は、プラグインツールメニューの初期化コール
final OWLModelManager modelManager = getOWLModelManager();
OWLOntologyManager om = modelManager.getOWLOntologyManager();
om.getOntologyStorers().add(new mySyntaxStorerFactory());
私はどちらかのマネージャが持続または対話コードが既に初期化されているとして、おそらく保存しないと思われるので、これが動作しない時の記憶手段に引っ掛けてみました。
これを行うより良い方法はありますか?この機能を処理する特定のプラグインの種類ですか?私は、カスタムツールメニュー項目を使ってエクスポートオントロジー機能を実装することができました。しかし、私は "Save as .."にもっときれいになるでしょう。
私はカスタムフォーマットでオントロジーを検索するパーサーも企画しています。この機能をプラグイン経由で実装するための推奨される方法はありますか?
ドキュメントのどこかでこれを忘れてしまったことをお詫び申し上げます。
多くのお客様に感謝します。実装しました
PreKeyDocumentFormatImplを拡張するgetKey()
getKey()およびcreateFromat()を拡張するOWLDocumentFormatFactoryImpl
コードはパッケージに含まれていますが、META-INFマニフェストには含まれていません。私は調査します。 – gbd
私は、プラグインの例からmavenビルドを開始点として使用しています。 私はエントリを追加しようとしました:META-INF/services/org.semanticweb.owlapi.util.OWLStorerFactoryImplそして私の工場の実装のクラス名を与えます。残念ながら、それは動作していないようです。 – gbd
ファイル名にImplを含めることはできません。インプリメンテーションクラスではなく、インターフェイスの名前と一致する必要があります。クラス名は、ファイル内にのみ表示する必要があります。 – Ignazio