为什么具有基本元素内容的元素需要<complexType>标记?

fas*_*ava 0 xml xsd

我必须写下我的xsd片段如下.

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">

    <xs:element name="foos">
        <xs:complexType>
            <xs:sequence>
                <xs:element type="foo" name="foo"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>
Run Code Online (Sandbox Code Playgroud)

为什么我不能像下面这样写它,它会简单得多?

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
    <xs:element name="foos">
        <xs:element type="foo" name="foo"/>
    </xs:element>
</xs:schema>
Run Code Online (Sandbox Code Playgroud)

pro*_*mer 5

如果元素包含其他元素,空元素,带有文本或子元素的元素,则它们属于复杂类型的类别.当您想要编写模式时,必须遵循XSD规则!