2017-11-10 6 views
0

私たちのプロジェクトでは、独自のorg.w3c.dom。*インタフェースを実装しています。Saxonをorg.w3c DOMモデルで使用できますか?

サクソンはXML自体ではなく、org.w3c.dom。*インスタンスのインスタンスでXPath 2.0クエリの評価をサポートしていますか?

+0

https://www.saxonica.com/html/documentation/sourcedocs/thirdparty.htmlを参照してください。 –

答えて

1

はい、あります。 JAXP XPathインターフェースまたはs9apiインターフェースのいずれかを使用できます。たとえば、一連の文字列を戻す方法がないなど、JAXPインターフェースがXPath 2.0のより豊富なデータ・モデル用に設計されたことがないため、s9apiを推奨します。

SaxonのネイティブなTinyTreeモデルを使用する場合よりも、DOMを使用する場合のSaxonの実行速度は、5~10倍です。もちろん、それがDOMを独自に実装している場合は、(a)パフォーマンスが異なる可能性があります。(b)常にバグの危険性があります。あなたのDOMはDOM仕様に100%準拠しているかもしれませんが、Saxonがテスト済みのDOM実装とは異なった動作をします。

Saxon-EE 9.8は、Dominoモデルと呼ばれるDOMツリーのナビゲーションを処理する新しい方法を導入しました。これは、後続のナビゲーションでパフォーマンスを向上させるために、DOMツリーのインデックスを構築する際に前払いコストが発生します。 DOMが変更可能な場合(つまり、あるXPath式評価と別のXPath式評価の間で内容が変化する場合)、この変更はインデックスを無効にするため、これを使用しないでください。

関連する問題