Примечание: во всех последующих случаях, когда я ссылаюсь на «XQuery», я имею в виду последнюю версию XQuery. То же самое для обновления XQuery.
[Верно или неверно] XQuery — это надмножество XPath. То есть язык XQuery состоит из всего, что есть в XPath, и даже больше.
Эй! Я не указал версию XPath.
[Верно или неверно] XQuery — это надмножество XPath 1.0.
[Верно или неверно] XQuery — это надмножество XPath 2.0.
[Верно или неверно] XQuery — это надмножество XPath 3.0.
[Верно или неверно] XQuery является расширенным набором XPath 3.1.
[Верно или неверно] XQuery Update — это надмножество XQuery.
XQuery 3.1 является расширенным набором XPath 3.1. Или, в более общем смысле, для данной версии XQuery это надмножество той же версии XPath.
Обновление XQuery расширяет возможности XQuery. Обновление XQuery остается в версии 3.0 и не обновлялось с учетом поддержки карт и массивов в XQuery 3.1.
Обратите также внимание на некоторые незначительные отличия, которые означают, что XPath 3.1 не является чистым подмножеством XQuery 3.1. Основной из них заключается в том, что XQuery 3.1 расширяет сущности и ссылки на символы, а XPath — нет. Это связано с тем, что XPath предназначен для встраивания в XML-документы, где они, вероятно, уже были расширены, и вы не хотите делать это дважды.
Какую версию XQuery Update поддерживает Saxon? Обновление XQuery 3.0? Обновление XQuery 1.0? Если второе, то Saxon's XQuery Update — это надмножество XQuery 1.0, которое является надмножеством XPath 1.0, верно?
Более того, XQuery Update 3.0 — это всего лишь примечание WG — это незавершенная работа. Основная новая функция по сравнению с 1.0, а именно, позволяющая выражению возвращать как результат, так и список ожидающих обновлений, оказалась спорной, и я думаю, что она в основном попала в блок, где не было достаточного консенсуса — или достаточных усилий — для продвижения вперед.