Xml 包含xs:all的XSD无效
我是XSD的初学者,但这一点让我感到困惑,尽管我对规范进行了大量阅读:Xml 包含xs:all的XSD无效,xml,xsd,Xml,Xsd,我是XSD的初学者,但这一点让我感到困惑,尽管我对规范进行了大量阅读: <xs:complexType name="iterator"> <xs:attribute name="id" type="xs:string" use="required"/> <xs:all> <xs:element name="name" type="xs:string"/> <xs:element name="el
<xs:complexType name="iterator">
<xs:attribute name="id" type="xs:string" use="required"/>
<xs:all>
<xs:element name="name" type="xs:string"/>
<xs:element name="element" type="iterator-element" maxOccurs="unbounded"/>
</xs:all>
</xs:complexType>
我试图定义这样的东西:
<iterator id="123">
<name>Test</name>
<element>(data)</element>
<element>(data)</element>
<element>(data)</element>
</iterator>
试验
(数据)
(数据)
(数据)
在我的应用程序中,我将迭代所有这些元素
我的错误是在语法上还是在概念上?我应该将名称改为属性吗?我应该用什么东西包装这些元素吗?为什么XSD解析器会抱怨这一点:
s4s elt无效内容。1:“迭代器”的内容无效。
元素“all”无效、放错位置或出现频率过高
我更改了迭代器元素,因为您没有解释它是什么。可能是复杂类型
在我测试的所有案例中
这不起作用,因为您需要在子元素之后声明属性。
我更改了迭代器元素,因为您没有解释它是什么。可能是复杂类型
在我测试的所有案例中
这不起作用,因为您需要在子元素之后声明属性。是的,迭代器元素是我在别处定义的复杂类型。我希望名称和元素的顺序不重要,这就是为什么我使用xs:all而不是xs:sequence。如果使用xs:all->
Cos all limited.2:the{max Occurs}“所有”模型组中元素的值必须为0或1。元素“Element”的值“unbounded”无效。
如果我的答案对您有帮助,请关闭问题并单击以更正我的答案,谢谢阅读。很遗憾,这对我不起作用。我可能对嵌套类型有问题。为什么不向我们展示所有代码,以便我们可以看到所有问题?如果您有更多问题,请编辑您的问题,我将尝试帮助。是的,迭代器元素是我在别处定义的复杂类型。我更喜欢名称和元素的顺序不重要,这就是为什么我使用xs:all而不是xs:sequence。如果您使用xs:all->Cos all limited,这就是错误。2:the{max Occurs}“所有”模型组中元素的值必须为0或1。元素“Element”的值“unbounded”无效。
如果我的答案对您有帮助,请关闭问题并单击以更正我的答案,谢谢阅读。很遗憾,这对我不起作用。我可能对嵌套类型有问题。为什么不向我们展示所有代码,以便我们可以看到所有问题?如果您有更多问题,请编辑您的问题,我将尝试帮助。
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="iterator" type="iter"/>
<xs:complexType name="iter">
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="element" type="xs:string" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
</xs:schema>