嗨,当我尝试验证 qti xml 文档时,我一直遇到此错误。这是xml文档:
<respcondition title="Correct" >
<conditionvar>
<not>
<varequal respident="1">A</varequal>
</not>
<varequal respident="1">B</varequal>
<not>
<varequal respident="1">C</varequal>
</not>
<varequal respident="1">D</varequal>
</conditionvar>
<setvar action="Set">1</setvar>
<displayfeedback linkrefid="Correct"/>
</respcondition>
这是验证 xml 的 xsd 片段
<!-- ******************* -->
<!-- ** respcondition ** -->
<!-- ******************* -->
<xs:complexType name="respconditionThirdPartyType">
<xs:sequence>
<xs:element name="conditionvar" type="conditionvarThirdPartyType" maxOccurs="1"/>
<xs:element name="setvar" type="setvarThirdPartyType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="displayfeedback" type="displayfeedbackThirdPartyType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="title" type="xs:string"/>
</xs:complexType>
<!-- ****************** -->
<!-- ** conditionvar ** -->
<!-- ****************** -->
<xs:complexType name="conditionvarThirdPartyType">
<xs:sequence>
<xs:choice>
<xs:element name="not" type="notThirdPartyType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="or" type="orThirdPartyType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="other" type="otherThirdPartyType" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
<xs:element name="varequal" type="varequalThirdPartyType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<!-- ********* -->
<!-- ** not ** -->
<!-- ********* -->
<xs:complexType name="notThirdPartyType">
<xs:sequence>
<xs:element name="varequal" type="varequalThirdPartyType" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<!-- ************** -->
<!-- ** varequal ** -->
<!-- ************** -->
<xs:complexType name="varequalThirdPartyType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="respident" type="xs:string" use="optional"/>
<xs:attribute name="case" default="No">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="Yes"/>
<xs:enumeration value="No"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
命名空间“test.xsd”中的元素“conditionvar”在命名空间“test.xsd”中具有无效的子元素“varequal”。预期的可能元素列表:'not'。元素不能包含空格。内容模型为空。元素不能包含空格。内容模型为空。命名空间“test.xsd”中的元素“conditionvar”在命名空间“test.xsd”中具有无效的子元素“not”。预期的可能元素列表:'varequal'。
请问有人可以帮忙吗?这几天我一直在努力解决这个问题。谢谢干杯
找到了答案:
好的,我找到了答案。我已经改变了 conditionvar 的定义。现在它正在工作。谢谢大家的帮助
<!-- ****************** -->
<!-- ** conditionvar ** -->
<!-- ****************** -->
<xs:complexType name="conditionvarThirdPartyType">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="not" type="notThirdPartyType" />
<xs:element name="or" type="orThirdPartyType" />
<xs:element name="other" type="otherThirdPartyType" />
</xs:choice>
<xs:element name="varequal" type="varequalThirdPartyType" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
谢谢你的帮助。