Функция расширений XPath (Майкрософт)

В MSXML реализован ряд функций расширения, обеспечивающих дополнительные возможности сверх указанных в спецификации XPath (версия 1.0). Некоторые из этих функций расширения позволяют выполнять манипуляции с узлами на основе их типов данных XSD. Другие содержат популярные служебные программы, такие как средства лексикографического сопоставления строк, форматирования времени и дат, преобразования дат и времени в формат UTC и т. д.

Имена расширенных функций должны быть полными именами и состоять из URI-кода пространства имен (или его посредника), двоеточия и локальной части. Функции расширения Microsoft XPath обычно имеют префикс ms, связанный с URI-кодом пространства имен ("urn:schemas-microsoft-com:xslt") для функций расширения Майкрософт.

Функции расширения XPath для поддержки XSD

Функция Описание

ms:type-is

Сравнивает тип данных текущего узла с типом указанного узла.

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

Возвращает неполное имя XSD-типа текущего узла или первого узла (в порядке определения в документе) в представленном наборе узлов.

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

Возвращает URI-код пространства имен, связанный с типом XSD текущего узла или первого узла (в порядке расположения узлов в документе) в предоставленном наборе узлов.

ms:schema-info-available

Возвращает значение True, если для текущего узла имеются сведения XSD.

Функции расширения XPath разных служебных программ

Функция Описание

ms:string-compare

Выполняет лексикографическое сравнение строк.

ms:utc

Преобразует имеющие префиксы и относящиеся к датам и времени значения в формат UTC и в фиксированное (нормализованное) представление, обеспечивающее возможность сортировки и лексикографического сопоставления.

ms:namespace-uri

Разрешает префиксную часть полного имени в URI пространства имен.

ms:local-name

Возвращает локальную часть полного имени путем удаления префикса пространства имен.

ms:number

Принимает строковый аргумент в XSD-формате и преобразует его в число XPath.

ms:format-date

Преобразует стандартные форматы дат XSD в символьные строки, подходящие для вывода.

ms:format-time

Преобразует стандартные форматы времени XSD в символьные строки, подходящие для вывода.