我是xml架构的新手并做了一项任务,我遇到了一个问题。我正在使用w3schools.com上的教程和位于http://www.validome.org/grammar/validate/的验证器 下面是我的架构的开头,它不会验证:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="products">
<xs:complexType>
<xs:element name="product" minOccurs="1" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="fname" type="xs:string"/>
<xs:element name="manufacturer" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:complexType>
</xs:element>
</xs:schema>
Validator表示第5行存在许多问题: 1.它表示不允许使用minOccurs和maxOccurs属性 2.从元素'xs:element'开始找到无效内容。
据我所知,我正在关注w3schools教程。 注意:如果我删除第3行和第4行及其相应的结束标记,以及minOccurs和maxOccurs属性,则文档会进行验证。
有人可以帮忙吗? 提前致谢
答案 0 :(得分:2)
xs:element不能直接作为xs:complexType的子项出现;你需要设置一个xs:sequence元素。这是撒克逊人的信息:
test.xsd:Element的第4行第71行的xs:element错误 xs:element不能出现在这里:{choice,sequence, assert,openContent,annotation,attributeGroup,anyAttribute, simpleContent,all,attribute,group,complexContent}或者什么都没有