递归DTD中的XPath查询

时间:2017-07-20 17:21:53

标签: xml xpath xquery xpath-3.0

我正在使用XPath 3.0,我遇到了以下问题。 我需要编写一个返回true / false的函数,检查资源(文件和文件夹)的名称是否所有资源都有不同的路径名。

This is my Document Type Definition

我能够检索特定文件夹的祖先节点文件夹的名称,但后来我想不出如何从中构建“路径名”然后执行比较。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

以下表达式检查任何文件夹中是否存在任何重复的文件/文件夹名称。这应该足以检查是否没有重复的路径名。

//*[self::RootFolder|self::Folder][count(distinct-values(*/Name))!=count(File|Folder)]

需要进行额外检查以确保路径分隔符未在任何文件/文件夹名称中使用。