Функции обработки чисел
Функция: number number(object?)
Функция преобразует свой аргумент в число следующим образом:
строка, образованная необязательным пробельным символом, за которым следует необязательный знак минус, и пробельный символ, преобразуется в число IEEE 754, ближайшее к математическому значению, представленному этой строкой (в соответствии с правилом округления IEEE 754). Любая другая строка преобразуется в NaN.
булево значение true преобразуется в 1, булево значение false преобразуется в 0
набор узлов сперва преобразуется в строку как при вызове функции , а затем преобразуется по тому же алгоритму, что и строковый аргумент
объект, не соответствующий ни одному из четырех базовых типов, преобразуется в число по алгоритму, специально задаваемому для этого типа
Если аргумент отсутствует, то по умолчанию берется набор, содержащий только узел контекста. Замечание: Функция не должна использоваться для преобразования числовых данных, встреченных в каком-либо элементе XML документа, если не известно, что элемент данного типа представляет числовые данные в независимом от языка формате (обычно перед показом пользователю такой элемент переводятся в формат, соответствующий языку). Кроме того, функция не может использоваться, если независимый от языка формат элемента не соответствует синтаксису XPath для .
Функция: number sum(node-set)
Функция возвращает сумму всех узлов из набора, указанного в аргументе. Перед суммированием узлов преобразуются в числа.
Функция: number
floor(number)
Функция возвращает наибольшее число (ближайшее к положительной бесконечности), которое не превышает значение представленного аргумента и является целым.
Функция: number ceiling(number)
Функция возвращает наименьшее число (ближайшее в отрицательной бесконечности), которое не меньше значения представленного аргумента и является целым.
Функция: number round(number)
Функция возвращает целое число, ближайшее к значению аргумента. Если таких чисел два, то возвращается то из них, которое ближе к положительной бесконечности. Если аргументом является NaN, функция возвращает NaN. Если аргументом является положительная бесконечность, возвращается положительная бесконечность. Если аргументом является отрицательная бесконечность, возвращается отрицательная бесконечность. Если аргументом является положительный нуль, функция возвращает положительный нуль. Если аргументом является отрицательный нуль, функция возвращает отрицательный нуль. Если аргумент меньше нуля, но больше или равен -0.5, возвращается отрицательный нуль. Замечание: В последних двух случаях вызов функции имеет иной результат, чем добавление 0.5 и последующий вызов функции .