現在、Xalan 2.7.0をXMLで使用していますが、XSLT変換用にSaxon 9に切り替えることを考えています。だから誰かが私にSaxonをXalanよりも使っているという主な賛否両論を挙げることができます。私はSaxonがXSLT 2.0やその他の大きな変更をサポートしていることを知っていますが、代わりにSaxon 9の個人的な経験やその疑惑や短所、その他の利点について知りたいと思います。Saxon 9 XSLTトランスとXalan 2.7
答えて
私は10年前にXalanを使用しました。私は過去10年間ほぼSaxonを使ってきました。
SaxonはXSLT 2.0とXSLT 3.0プロセッサだけでなく、非常に積極的に開発され、維持されています。
Saxon 9.xxは、最も高速なXSLTプロセッサの1つです。その開発者であるMichael Kay博士は、W3C XSLT WG(Working Group)の編集者であり、XSLTの仕様をよく理解している可能性があります。これはSaxonで公開されています。どんな言語機能も厳密かつ正確に実装されています。通常、他のベンダーよりもはるかに優れています。
Kay博士は、W3C XSLTおよびXQuery WGsテストスイートを実行することによって示されたコンプライアンスのレベルを報告することがあります。これは数万のテストから成ります。
サクソンは、いくつかのIDEによってサポートされています。最も重要なのはoXygenです。 Saxonには非常にアクティブなユーザーメーリングリストがあり、一般的な応答時間は通常時間単位で測定されます。
私は約11台のXSLTプロセッサをインストールしていますが、私の時間の99%を使っているものは、サクソンです。
XalanとSaxon(6.5と9)の両方をoXygen XMLエディタに統合するので、基本的にSaxonとXalanの両方を使用するXSLT開発者をサポートします。
私たちの経験から、サクソン9は積極的に開発されていますが、何年にもわたってXalanの開発が停止しています。これはSaxon 9がXSLT 2プロセッサーであり、XalanがXSLT 1プロセッサーであり、XSLT 1にはあまりないことがあるからです。
最近のXSLT開発者のほとんどは、XSLT 2.0を使用しています。 Saxon 9を選んだのはXSLT 2.0エンジンだけで十分です。XSLT 1との苦労はありませんが、XSLT 2はすでに数年前から利用可能です。
XalanはApache 2.0でライセンスされており、SaxonはMozilla Public License(MPL)の下でライセンスされています。使用の観点からは、実際には違いはありません。プロセッサーコードを自分で変更する場合にのみ違いがあります.MPLの場合は、コードに変更を加える必要があります。
Saxon 9の小さな問題点は、拡張機能を直接サポートしていないことですが、APIを使用して統合拡張機能を登録したり、コマンドラインでこれらの拡張機能を登録するInitializerクラスを渡すことができます。ただし、XSLT 2.0には多くの新しい関数と命令が標準で用意されているため、拡張機能が必要になる可能性は低くなります。
サクソン9もXSLT 3.0のサポートが含まれ(現在はこれがワーキングドラフトである)が、サクソンとあなたは、ほぼすべての私たちが使用する社内XSLTタスクのためのXSLTでの新機能が追加3.
の一部への早期アクセスを持っていますサクソン9時。
私はこれが助けてくれることを願っています!
敬具、 ジョージ
はちょうどジョージが言うに追加する:あなたはXalanの/ Wよりサクソン/ Wより多くの機能を取得しますが、あなたが大幅に向上した性能(少ないメモリ、より高速に実行)を取得するだけでなく、多くの場合同様に。
- 1. SaxonとXalanを併用する
- 2. Saxon XSLT passingパラメータ
- 3. Saxon Xsltプロセッサエラー
- 4. XSLT - 9.4.0-9から9.7.0-14への更新時のSaxonエラー
- 5. Xalan XSLT - メモリ不足ヒープスペース
- 6. Xalan XSLT複数の出力ファイル?
- 7. document()のJava XSLTプロセッサ(Xalan)のキャッシング
- 8. XSLT関数が異なる結果を返す[Saxon-EEとSaxon-HE/PE]
- 9. ミュールJSONツーオブジェクト・トランスとDataweaverトランス例外
- 10. トランス
- 11. xsltはSaxonと機能を融合します
- 12. IntellijとSaxonでXSLTをデバッグ - サポートされていないトランスフォーマー
- 13. Xalan-JavaとXPath 2.0
- 14. XalanでサポートされているXSLTバージョンをXalan C++で印刷する方法は?
- 15. トランスHTML(XSL 2.0)
- 16. Xalan - ネームスペース
- 17. コマンドラインSaxon XSLT変換のマニフェストの追加方法
- 18. Saxon xsltはサーバー上では遅いがローカルでは高速
- 19. XSLTインポートステートメントでSaxonエラーが発生しました
- 20. XSLT Saxonで属性名前空間を変更
- 21. XSLT 2.0変換PDFへのJavaのSaxonでのApache FOPとスタイルビジョンの使用
- 22. Saxonを使用して、XSLTのグローバル変数をインクリメントまたはデクリメント
- 23. デフォルトで誤った実装を使用しているJAXP XSLTトランス
- 24. AGGREGERATORトランスにINFORMATICA
- 25. ディンゴAPIトランス
- 26. XSLT with XPAth 2.0とJava式
- 27. XPath式とSaxon collection()関数
- 28. XSLTでSaxon Extensionを使用してSQLサーバーに接続するNullPointerException
- 29. Saxon .NETの使用Visual StudioのIntellisenseでXSLTプロセッサが動作しない
- 30. SaxonのためにXSLTからRDFフレームワークを実行できない
私はそれが古いスレッドを少し知っています。マルチスレッド環境でのXalanの実装では、ロックの問題に直面しています(ブロックされた問題)。 https://stackoverflow.com/questions/46194800/converting-xmlxsl-in-html-using-java –
これら2つのパフォーマンス関連の比較はありますか? –