如何在XML Schema中定义自关闭XML元素

Max*_*orn 5 xml xsd

我要定义的元素:

<feature_ref id="0"/>
Run Code Online (Sandbox Code Playgroud)

代码我已经放入我的XSD文件:

<xs:attribute name="id" type="xs:integer"/>    
<xs:element name="feature_ref" type="xs:string">
   <xs:complexType>
    <xs:attribute ref="id"/>
  </xs:complexType>
</xs:element>
Run Code Online (Sandbox Code Playgroud)

有没有办法在XSD中指定这个元素应该自动关闭?

Chr*_*eau 7

自闭元素是相同值的语法糖.出于同样的原因,您无法控制属性序列或属性之间的空白,因此无法使用XSD定义自动关闭.

换一种说法:

<feature_ref id="0"/>
Run Code Online (Sandbox Code Playgroud)

与...完全相同

<feature_ref id="0"></feature_ref>
Run Code Online (Sandbox Code Playgroud)

请参阅W3规范:http://www.w3.org/TR/REC-xml/#sec-starttags