Microsoft XPath 拡張関数

MSXML は、XPath Version 1.0 仕様で指定されている機能以外の追加機能を持った多数の拡張関数を備えています。 これらの拡張関数の中には、ノードの XSD データ型に基づいてノードを操作できるものがあります。 文字列の辞書順比較、日付時刻の書式設定、日付時刻の世界協定時刻への変換など、一般的なユーティリティを提供する拡張関数もあります。

拡張関数の名前は、名前空間 URI (またはそのプロキシ)、コロン、およびローカル部分から構成される修飾名でなければなりません。 Microsoft XPath 拡張関数では、通常、Microsoft 拡張関数の名前空間 URI ("urn:schemas-microsoft-com:xslt") に関連付けられている ms プレフィックスを使用します。

XSD サポート用の XPath 拡張関数

関数 説明

ms:type-is

現在のノードのデータ型を指定されたノード型と比較します。

ms:type-local-name ([node-set])

指定されたノード セット内の現在のノード、または (ドキュメント順で) 最初のノードの XSD 型の修飾されない名前を返します。

ms:type-namespace-uri ([node-set])

現在のノード、または指定されたノード セット内の (ドキュメント順で) 最初のノードの XSD 型に関連付けられている名前空間 URI を返します。

ms:schema-info-available

現在のノードの XSD 情報があれば、true を返します。

各種のユーティリティの XPath 拡張関数

関数 説明

ms:string-compare

文字列の辞書順比較を実行します。

ms:utc

プレフィックスの付いた日付/時刻関連の値を、世界協定時刻と、並べ替えおよび辞書順比較が可能な固定 (正規化) 表現に変換します。

ms:namespace-uri

修飾名のプレフィックス部分を名前空間 URI に解決します。

ms:local-name

名前空間プレフィックスを除去し、修飾名のローカル名部分を返します。

ms:number

XSD 形式の文字列の引数を取得し、XPath 番号に変換します。

ms:format-date

標準の XSD の日付形式を出力に適した文字に変換します。

ms:format-time

標準の XSD の時刻形式を出力に適した文字に変換します。