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
我可以将模式中的maxOccurs链接到目标xml文件中另一个属性的值吗?_Xml_Xpath_Xsd - Fatal编程技术网

我可以将模式中的maxOccurs链接到目标xml文件中另一个属性的值吗?

我可以将模式中的maxOccurs链接到目标xml文件中另一个属性的值吗?,xml,xpath,xsd,Xml,Xpath,Xsd,我正在为一个文件定义一个xml模式,该文件如下所示: <data> <config><segmentcount value="10"/></config> <foos> <foo> <segments> <segment data="X"/> <segment data="X"

我正在为一个文件定义一个xml模式,该文件如下所示:

<data>
    <config><segmentcount value="10"/></config>
    <foos>
        <foo>
            <segments>
                <segment data="X"/>
                <segment data="X"/>
                <segment data="X"/>
                <segment data="X"/>
                <segment data="X"/>
            </segments>
        </foo>
        <foo>
            <segments>
                ...

...
我已经为一般结构做了一个模式。但是,我想强制要求分段中分段元素的数量始终与分段计数的value属性相同。在segments的maxOccurs属性中,我尝试了xpath
/aitt:data/aitt:config/aitt:segmentcount[1]@value
,但解析器告诉我maxOccurs必须是非负int或
无界的

这有什么诀窍吗


提前干杯。

我不相信有办法以您所希望的方式链接模式和数据。

就我所知,没有办法用XSD实现这一点。您可能需要考虑使用规则来实现这种验证。我已经成功地将Schematron规则存储在模式的注释元素中。

到目前为止,这两个答案都是正确的,但我将为Schematron链接勾选这一个。谢谢你们的信息,伙计们。