規格適合に関する記述
プロセッサーは、XSL Transformations (XSLT) バージョン 2.0 および XQuery 1.0 W3C 勧告 の実装です。
プロセッサーは、XSLT 2.0、XQuery 1.0、および XPath 2.0 の各勧告の初版を、このトピックに記載されている
規格に適合したレベルで実装しています。また、XSLT 2.0、XQuery 1.0、XPath 2.0 および
付属の各勧告の第 2 版で、編集段階の勧告案として公開されているすべての正誤表も実装しています。
プロセッサーの規格適合基準について詳しくは、 XSLT 2.0 勧告のセクション 21 および XQuery 1.0 勧告のセクション 5 を参照してください。
XSLT 2.0 規格適合
プロセッサーは、スキーマ認識 XSLT プロセッサー
として XSLT 2.0 に準拠します。また、XSLT 2.0 の以下のオプションのフィーチャーもサポートします。
XQuery 1.0 規格適合
プロセッサーは、最小限のレベルで XQuery 1.0 の規格に
適合しています。また、XQuery 1.0 の以下のオプションのフィーチャーもサポートします。
- プロセッサーは、Infoset または PSVI による XQuery/XPath Data Model のインスタンスの標準構造
をサポートします。デフォルトで、データ・モデルのインスタンスの構造は、Infoset による構造になります。
XFactory インスタンスの setValidating メソッドを値を true に設定して呼び出すと、
プロセッサーによって作成されるデータ・モデルのインスタンスは、PSVI による構造になります。
詳しくは、基本的な XQuery 操作の実行を参照してください。
プロセッサーは、XML 1.0 と XML 1.1 の両方をサポートします。
拡張サポート
プロセッサーは、以下の追加拡張機能をサポートします。
- XSLT スタイルシートで明示的または暗黙的な xsl:result-document 命令に対して
インデント・シリアライゼーション・パラメーターの値が yes に設定されていると、
プロセッサーは、関連した xsl:output 宣言の indent-amount 拡張属性の値を使用して、
シリアライズされた結果において要素の各ネスト・レベルごとに増分されるインデント数を
決定します。
indent-amount 拡張属性は、 http://xml.apache.org/xalan 名前空間にあります。
- XSLT 1.0 スタイルシートのマイグレーションを容易にするために、プロセッサーは、
EXSLT コミュニティー主導により定義された多くの拡張関数をサポートします。
多くの場合、これらの関数は、XSLT 2.0、XPath 2.0、および XQuery 1.0 に組み込まれている
関数と重複しています。
EXSLT について詳しくは、EXSLT Web サイトを参照してください。
- プロセッサーは、node-set 共通拡張関数のみをサポートします。この関数は、XSLT 2.0 では一時ツリーで実行できる操作が制限されないことにより、不要になりました。
EXSLT 共通関数群は、名前空間 http://exslt.org/common にあります。
- EXSLT 日時関数群は、日時の値を操作するための機能を提供します。これらのほとんどの関数は、
XSLT 2.0、XQuery 1.0、および XPath 2.0 に新しく組み込まれた XML スキーマの新しい日時データ型と重複しています。
EXSLT 日時関数群は、名前空間 http://exslt.org/dates-and-times にあります。
- プロセッサーは、evaluate dynamic 拡張関数のみをサポートします。
EXSLT 動的関数群は、 名前空間 http://exslt.org/dynamic にあります。
- EXSLT 数学関数は、さまざまな数学演算で一般的に使用されている機能を提供します。math:abs、math:max、math:min、および math:highest 関数に限っては、XSLT 2.0、XQuery 1.0、および XPath 2.0 では不要になりました。
EXSLT 数学関数群は、名前空間 http://exslt.org/math にあります。
- EXSLT 集合関数群は、ノードのシーケンスにおける集合操作を実行するための機能を定義します。これらの関数は、XSLT 2.0、XQuery 1.0、および XPath 2.0 では、intersect および except の set 演算、
<< および >> のノード比較演算が新しく導入されたため不要になりました。
EXSLT 集合関数は、名前空間 http://exslt.org/sets にあります。
- EXSLT ストリング関数群は、ストリング処理のための機能を提供します。tokenize 関数および split 関数は、
XSLT 2.0、XQuery 1.0、および XPath 2.0 では、fn:tokenize 関数および xsl:analyze-string 命令などの
ストリング処理用の新しい操作が導入されたため不要になりました。
EXSLT ストリング関数群は、名前空間 http://exslt.org/strings にあります。
- プロセッサーは、node-set 共通拡張関数のみをサポートします。この関数は、XSLT 2.0 では一時ツリーで実行できる操作が制限されないことにより、不要になりました。
- redirect 拡張要素は、XSLT スタイルシートの出力を複数の出力宛先にリダイレクトする
手段を提供します。この拡張要素は、XSLT 2.0 の新しい xsl:result-document により不要になりました。
redirect 拡張要素は、http://xml.apache.org/xalan 名前空間にあります。