Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
XSLT-获取节点组的最大子节点数_Xslt_Xpath - Fatal编程技术网

XSLT-获取节点组的最大子节点数

XSLT-获取节点组的最大子节点数,xslt,xpath,Xslt,Xpath,是否有可能在所有子节点中获得最大的孙子节点,而不通过它们循环?在下面的示例中,有四个文档节点,分别有4、5、1和2个值节点。理想情况下,我希望返回5作为表达式/函数的答案 不在XSLT2.0中循环或使用xpath,这是可能的吗 XML: <File> <Document> <Value>..</Value> <Value>..</Value> <Value>

是否有可能在所有子节点中获得最大的孙子节点,而不通过它们循环?在下面的示例中,有四个文档节点,分别有4、5、1和2个值节点。理想情况下,我希望返回5作为表达式/函数的答案

不在XSLT2.0中循环或使用xpath,这是可能的吗

XML:

<File>
    <Document>
        <Value>..</Value>
        <Value>..</Value>
        <Value>..</Value>
        <Value>..</Value>
    </Document>
    <Document>
        <Value>..</Value>
        <Value>..</Value>
        <Value>..</Value>
        <Value>..</Value>
        <Value>..</Value>
    </Document>
    <Document>
        <Value>..</Value>
    </Document>
    <Document>
        <Value>..</Value>
        <Value>..</Value>
    </Document>
</File>

..
..
..
..
..
..
..
..
..
..
..
..

假设
文件
元素是当前上下文项,您可以使用

max(Document/count(Value))

Document/count(Value)
为您提供一个整数序列(每个
Document
Value
子级数),
max
从该序列中选择最大值。

您可以使用
max(/File/Document/count(*)

我错过了一个节点。但是如果所有的值节点都被一个节点包围
我可以直接调用
max(Document/count(node/value))
?@iswinky是的,这样就可以了。如果对于单个路径表达式来说太复杂,您可以使用显式的序列理解操作(
对于文档返回中的$d…