我在验证时遇到错误:
错误 - 第14行,第36行:org.xml.sax.SAXParseException; lineNumber:14; columnNumber:36; s4s-elt-must-match.1:'simpleType'的内容必须匹配(注释?,(限制|列表|联合))。从:attribute。
开始发现问题如何解决?
我的XML片段
<CHANEL_NAME lang="RUS/MD">N4</CHANEL_NAME>
和XSD:
<xs:element name="CHANEL_NAME">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="40"/>
</xs:restriction>
<xs:attribute name="lang">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="MD"/>
<xs:enumeration value="RUS"/>
<xs:enumeration value="RUS/MD"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:simpleType>
</xs:element>
所以我在属性'lang'中只需要确定的值,如'MD','RUS'或'RUS / MD'。我看了例子,我猜它没关系。
或者只是元素的枚举而不是属性?
答案 0 :(得分:2)
具有简单类型的元素不具有属性。您需要一个简单内容的#34;复杂类型&#34;,它是使用xs:complexType元素和xs:simpleContent子元素定义的。