Altova XMLSpy 2024 Enterprise Edition

XMLSpy的XQuery 3.1引擎符合万维网联盟(W3C)2017年3月21日的XQuery 3.1建议并包括对XPath和XQuery函数3.1的支持。XQuery 3.1规范是3.0规范的超集。因此XQuery 3.1引擎支持XQuery 3.0功能。

 

命名空间

您的XQuery 3.1文档应该声明以下命名空间,以便能够使用XQuery 3.1中所有可用的类型构造器和函数。通常使用下面给出的前缀;您可以根据需要使用其他前缀。

 

命名空间名称

前缀

命名空间URI

XML Schema types

xs:

http://www.w3.org/2001/XMLSchema

XPath/XQuery 3.1 functions

fn:

http://www.w3.org/2005/xpath-functions

Math functions

math:

http://www.w3.org/2005/xpath-functions/math

Map functions

map:

http://www.w3.org/2005/xpath-functions/map

Array functions

array:

http://www.w3.org/2005/xpath-functions/array

XQuery, XSLT, and XPath Error Codes

err:

http://www.w3.org/2005/xpath-functions/xqt-errors

Serialization functions

output

http://www.w3.org/2010/xslt-xquery-serialization

 

请注意以下几点:

 

XQuery 3.1引擎将上方列出的前缀识别为与相应的命名空间绑定的。

由于上方列出的内置函数命名空间(参见fn:)是XQuery中的默认函数命名空间,因此在调用内置函数时,不需要使用fn:前缀(例如,string("Hello")将调用fn:string函数)。然而,fn:可用于调用内置函数,而无需在查询prolog中声明命名空间(例如:fn:string("Hello"))。

您可以通过在查询prolog中声明default function namespace表达式来更改默认函数命名空间。

在使用XML Schema命名空间中的类型时,可以使用xs:前缀,而无需在查询prolog中明确声明命名空间并将这些前缀绑定到它们。(示例:xs:datexs:yearMonthDuration。)如果您希望为XML Schema命名空间使用其他前缀,则必须在查询prolog中明确声明它。(示例:declare namespace alt = "http://www.w3.org/2001/XMLSchema"; alt:date("2004-10-04")。)

 

如果函数、类型构造器、节点测试等的命名空间被错误分配,则会报告错误。请注意,某些函数与Schema数据类型具有相同的名称,例如fn:stringfn:boolean。(xs:stringxs:boolean都有被定义。)命名空间前缀决定了是使用函数,还是类型构造函数。

 

特定于实现的行为

特定于实现的特性与XQuery 1.0相同。

 

此外,Altova特定的编码x-base64tobinary可用于创建二进制结果文档,例如图像。

 

© 2017-2023 Altova GmbH