路径表达式

路径表达式标识 XML 树中的节点。 DB2 XQuery 中的路径表达式以 XPath 2.0 的语法为基础。

路径表达式包含用斜杠 (/) 或双斜杠 (//) 字符隔开的一个或多个步骤。 路径表达式可用步骤开头,也可用斜杠或双斜杠字符开头。 最终步骤之前的每个步骤会生成节点序列,这些节点将用作后续步骤的上下文节点。

第一个步骤指定路径的起点,通常会通过使用返回节点或节点序列的函数调用或变量引用指定。 初始“/”指示路径起始于包含上下文节点的树的根节点。 初始“//”指示路径起始于初始节点序列,该序列由包含上下文节点的树的根节点及其所有后代组成。

每个步骤会重复执行,对上一步生成的每个上下文节点执行一次。 重复执行的结果会合并以形成后续步骤的上下文节点序列。 根据节点标识,此合并序列中的重复节点会被排除。

路径表达式的值是路径最终步骤产生的项的组合序列。 此值可以是节点序列或原子值序列。 因为路径中的每一步都为后续步骤提供了上下文节点,所以路径的最终步骤是可返回原子值序列的唯一步骤。 同时返回节点和原子值的路径表达式会产生错误。

路径表达式产生的节点序列不能保证使用特定顺序。 要了解路径表达式何时返回有序结果,请参阅描述 XQuery 表达式中结果的顺序的主题。