我尝试创建一个XML来描述带有多项选项或纯文本的练习。 XML可能如下所示:
<exercise number="1" type="multiChoice">
<question>My very importand question</question>
<answer type="false">yes</answer>
<answer type="true">no</answer>
<exercise number="2" type="text">
<question>Question 2</question>
<answer>the right answer</answer>
</exercise>
所以我尝试使用一个序列作为答案,如果我在XML中有多个<answer>
- 标签时尝试验证它,那么它就无法工作。
这是架构:
<xs:complexType name="exerciseType">
<xs:sequence>
<xs:element name="question" type="questionType"/>
<xs:sequence>
<xs:element name="answer" minOccurs="1">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="type" type="xs:boolean" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:sequence>
<xs:attribute name="number" type="xs:positiveInteger"/>
<xs:attribute name="type" type="xs:string"/>
</xs:complexType>
任何人都知道我的架构出了什么问题?
提前致谢!
答案 0 :(得分:2)
您可以尝试设置maxOccurs
属性:
<xs:complexType name="exerciseType">
<xs:sequence>
<xs:element name="question" type="questionType"/>
<xs:element name="answer" maxOccurs="unbounded">
</xs:sequence>
<xs:attribute name="number" type="xs:positiveInteger"/>
<xs:attribute name="type" type="xs:string"/>
</xs:complexType>
免责声明:这是在未经工具验证的情况下编写的,可能包含错误。