Валиков Алексей Н.
Шрифт:
При этом символ "
Функции
В табл. П3.1–П3.5 представлено описание наиболее часто используемых функций.
Таблица П3.1. Булевые функции
Функция | Описание |
---|---|
boolean boolean(object) | Явным образом преобразует объект, который ей передается в булевый тип |
boolean not(boolean) | Выполняет логическое отрицание |
boolean true | Возвращает true , "истину" |
boolean false | Возвращает false , "ложь" |
boolean lang(string) | Возвращает "истину", если идентификатор языка, который передан ей в виде строкового параметра, соответствует языковому контексту контекстного узла |
Таблица П3.2. Числовые функции
Функция | Описание |
---|---|
number number(object?) | Явным образом конвертирует свой аргумент в числовой тип. Если аргумент опущен, то выполняется с множеством, состоящим из контекстного узла |
number sum(node-set) | Суммирует значения узлов из переданного ей множества |
number floor(number) | Округляет аргумент до ближайшего не большего целого |
number ceiling(number) | Округляет аргумент до ближайшего не меньшего целого |
number round(number) | Округляет аргумент до ближайшего целого значения |
Таблица П3.3. Строковые функции
Функция | Описание |
---|---|
string string(object?) | Преобразует свой аргумент к строковому типу явным образом. Если аргумент опущен, то выполняется с множеством, состоящим из контекстного узла |
string concat(string, string, string*) | Возвращает конкатенацию (строковое сложение) своих аргументов |
boolean starts-with (string, string) | Принимает на вход два строковых аргумента и возвращает true , если первая строка начинается со второй и false в противном случае |
boolean contains (string, string) | Принимает на вход два строковых аргумента и возвращает true , если первая строка содержит вторую и false в противном случае |
string substring-before(string, string) | Принимает на вход два строковых аргумента, находит в первой строке вторую и возвращает подстроку, которая ей предшествует |
string substring-after(string, string) | Принимает на вход два строковых аргумента, находит в первой строке вторую и возвращает подстроку, которая за ней следует |
string substring(string, number, number?) | Возвращает подстроку переданного ей строкового аргумента, которая начинается с позиции, указанной вторым аргументом и длиной, указанной третьим аргументом. Если третий аргумент не указан, то подстрока продолжается до конца строки |
number string-length(string?) | Возвращает число символов строкового аргумента |
string normalize-space(string?) | Производит со строковым аргументом нормализацию пробельного пространства. Если аргумент опущен, выполняется со строковым значением контекстного узла |
string translate (string, string, string) | Производит замену символов первого своего строкового аргумента, которые присутствуют во втором аргументе на соответствующие символы третьего аргумента |
Таблица П3.4. Функции множеств узлов
Функция | Описание |
---|---|
number last | Возвращает размер контекста вычисления выражения |
number position | Возвращает позицию контекста вычисления выражения |
number count(node-set) | Возвращает число узлов, которое входит во множество, переданное ей в качестве аргумента |
string local-name(node-set?) | Возвращает локальную часть имени первого в порядке просмотра документа узла множества, переданного в качестве аргумента или локальную часть имени контекстного узла, если аргумент отсутствует. Если аргумент опущен, то выполняется с множеством, состоящим из контекстного узла |
string namespace-uri(node-set?) | Возвращает URI пространства имен первого в порядке просмотра документа узла множества, переданного в качестве аргумента или локальную часть имени контекстного узла, если аргумент отсутствует. Если аргумент опущен, то выполняется с множеством, состоящим из контекстного узла |
string name(node-set?) | Возвращает в виде префикс:имя расширенное имя локальную часть имени первого в порядке просмотра документа узла множества, переданного в качестве аргумента или локальную часть имени контекстного узла, если аргумент отсутствует. Если аргумент опущен, то выполняется с множеством, состоящим из контекстного узла |
node-set id(object) | Возвращает множество узлов по уникальным идентификаторам |
Таблица П3.5. Другие функции
Функция | Описание |
---|---|
node-set key(string, object) | По данному имени и значению ключа возвращает множество узлов, которые им обладают |
node-set document(object, node-set?) | Позволяет обращаться к внешним документам по заданным URI. Первый узел необязательного параметра node-set принимается за точку отсчета для относительных URI |
node-set current | Возвращает текущий узел преобразования |
string unparsed-entity-uri(string) | Возвращает URI неразбираемой сущности по ее имени |
string generate-id(node-set?) | Возвращает уникальный строковый идентификатор первого узла переданного множества или контекстного узла, если аргумент опущен |
object system-property(string) | Возвращает значение свойства, имя которого передано как аргумент |
Приложение 4
Интернет-ресурсы, посвященные XSLT
Зарубежные интернет-ресурсы по XSLT
□ http://www.dpawson.co.uk/xsl/sect2/sect21.html
XSLT Questions and Answers. Большой архив вопросов и ответов по XSLT.
□ http://www.zvon.org
The Guide to the XML Galaxy. Большой репозитарий примеров, уроков и материалов для изучения XML-технологий и, в частности, XSLT.
□ http://www.datapower.com/XSLTMark/res_2001_04_01.html
XSLT Benchmarking. Тесты эффективности различных XSLT-процессоров.
□ http://www.tfi-technology.com/xml/xslbench.html
XSLT Processor Benchmarking. Тесты эффективности различных XSLT-процессоров.
□ http://msdn.microsoft.com/library/default.asp?url=/library/en-us/xmlsdk30/htm/xmconxsltfaq.asp?frame=true
Microsoft MSXML 3.0
XSLT Developer's Guide: XSLT FAQ. Вопросы и ответы об XSLT-разработке на основе библиотеки MSXML.
□ http://www.netcrucible.com/xslt/msxml-faq.htm
Unofficial MSXML XSLT FAQ. Неофициальный список вопросов и ответов по реализации XSLT в библиотеке MSXML.
□ http://www.ibiblio.org/xml/books/bible2/chapters/ch17.html
Chapter 17 of the XML Bible: XSL Transformations. Глава, посвященная XSLT из популярной книги "Библия XML".
□ http://www.biglist.com/lists/xsl-list/archives/
XSL Mailing List archives. Архив сообщений списка рассылки XSL Mailing List.