元素'simpleType'无效,错位或发生太多
问题描述:
我不确定我在做什么错。但错误如下:元素'simpleType'无效,错位或发生太多
s4s-elt-invalid-content.1:元素'simpleType'无效,放错位置或发生得太频繁。
<xsd:element name="amtNew" minOccurs="0">
<xsd:complexType>
<xsd:simpleType>
<xsd:restriction base="xsd:decimal">
<xsd:totalDigits value="13" />
<xsd:fractionDigits value="3" />
</xsd:restriction>
</xsd:simpleType>
<xsd:attribute name="code" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:token">
<xsd:length value="3" />
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:complexType>
</xsd:element>
答
的XSD:complexType元素不能采取XSD:简单类型作为一个孩子,所以你正在使用的文件是不反对的Schema文档的XSD模式是有效的。如果您的头脑中没有Schema文档的架构(可能有些人会这样做),如果您使用了一个熟悉该架构的XML编辑器并且可以检查模式文档,那么您将为自己节省很多的痛苦至少为了模式有效性;如果您的编辑可以检查您的架构文档是否符合规范(其中涉及一些超出各个架构文档有效性的限制),那么您将节省更多时间。
在这种情况下,您似乎想要定义一个元素,其内容是最多13位数的十进制数,并且需要携带名为code
的属性。您想要的复杂类型具有“简单内容”,并且是内容简单类型的扩展;您应该查看架构(或在教程中)以获取有关xsd:simpleContent和xsd:扩展元素的信息。
谢谢!这个信息非常有用! –