0

我是 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 属性,则文档将生效。

任何人都可以帮忙吗?提前致谢

4

1 回答 1

2

xs:element 不能直接作为 xs:complexType 的子项出现;您需要插入一个 xs:sequence 元素。这是来自撒克逊的信息:

xs:test.xsd 的第 4 行第 71 列上的元素出错:元素 xs:元素不能出现在此处:预期 {choice、sequence、assert、openContent、annotation、attributeGroup、anyAttribute、simpleContent、all、attribute、group、complexContent 之一} 或者什么都没有

于 2013-02-23T15:55:00.480 回答