XPath 3 - XPath 3
XPath 3 это последняя версия XML Path Language, а язык запросов для выбора узлов в XML документы. Он заменяет XPath 1.0 и XPath 2.0.
XPath 3.0 стал Рекомендация W3C 8 апреля 2014 г., а XPath 3.1 стал Рекомендация W3C 21 марта 2017 г.
Новые возможности XPath 3.0
В сравнении с XPath 2.0, XPath 3.0 добавляет следующие новые функции:
- Встроенные выражения функций
- Анонимные функции может быть создан в выражение контекст. Например, выражение
функция ($ a как xs: double, $ b как xs: double) как xs: double {$ a * $ b}
создает функцию, которая возвращает произведение двух своих аргументов. Выражениеcollection () / (пусть $ a: =. return function () {$ a})
создает последовательность функций, каждая из которых возвращает отдельный узел из коллекции. - Вызов динамических функций
- Значения функций могут вызываться без ссылки по имени. Например,
$ f [2] («Привет!»)
выбирает второй элемент из последовательности$ f
, и вызывает ее как функцию, передавая строку"Всем привет"
как аргумент. - Типы союзов
- Типы союзов, как определено в Схема XML, может использоваться в преобразование типов и функция типовые подписи.
- Литералы пространства имен
- Пространства имен XML можно ссылаться, используя фигурные скобки URI литералы. Например, полное имя
математика: пи
может быть расширен доQ {http://www.w3.org/2005/xpath-functions/math} пи
, встраивая URI пространства имен в префикс. - Оператор конкатенации строк
- Новый
||
оператор может использоваться для конкатенация строк:$ a || $ млрд
эквивалентноfn: concat ($ a, $ b)
. - Оператор отображения
- Новый
!
оператор выполняет простое сопоставление:E1! E2
оцениваетE2
для каждого элемента в последовательностиE1
, и объединяет полученные элементы. Это сравнимо с оператором пути/
, но!
Оператор не выполняет устранение дубликатов и не документирует результаты.
Новые возможности XPath 3.1
XPath 3.1 в основном добавляет поддержку множество и карта (ассоциативный массив ) типы данных. Эти типы и связанные с ними функции предназначены для облегчения работы с JSON данные.
Еще одно нововведение - оператор стрелки. =>
для объединения функций. Например, выражение XPath 2.0
содержит (верхний регистр (подстрока перед ($ in, '')), 'X')
теперь можно написать
$ in => substring-before ('') => верхний регистр () => содержит ('X')
Рекомендации
- "XML Path Language (XPath) 3.0". Консорциум World Wide Web. 8 апреля 2014 г.
- "XML Path Language (XPath) 3.1". Консорциум World Wide Web. 21 марта 2017.
Эта статья о вычислительной технике заглушка. Вы можете помочь Википедии расширяя это. |