【问题标题】:XSD No Data Tag, Self Closing, Empty?XSD 无数据标签、自动关闭、为空?
【发布时间】:2014-07-07 10:31:12
【问题描述】:

我在 XSD 中看到了一些关于自闭标记的答案,但未包含空定义。

我有一个由程序自动生成的大型 XML 文档。

XML 与此类似:

<START>
<ON/>
<item1>
<item2>
<I data1="" data2="">
<I info1="" info2="">
</I>
</item2>
</item1>
</START>

对于名为“ON”的标签,因为它是自关闭的并且不包含任何数据,所以我的XSD中是怎么写的?

【问题讨论】:

    标签: xml xsd tags validation


    【解决方案1】:

    试试这个 XSD:

    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
        <xs:element name="START">
            <xs:complexType>
                <xs:sequence>
                    <xs:element name="ON"/>
                    <xs:element ref="item1"/>
                </xs:sequence>
            </xs:complexType>
        </xs:element>
        <xs:element name="item1">
            <xs:complexType>
                <!-- more declarations follow here -->
            </xs:complexType>
        </xs:element>
        <!-- more declarations follow here -->
    </xs:schema>
    

    还要注意,在您的 XML 中 &lt;ON/&gt; 也可以是 &lt;ON&gt;&lt;/ON&gt; 并且您将拥有相同的 XSD。 &lt;ON/&gt; 在这两种情况下都是一个空元素。

    【讨论】:

    • 谢谢你,不确定声明一个空元素。我现在正在尝试遍历相同的 xml,但我只想收集属性数据,您有什么想法?再次感谢。
    • 您能描述一下您使用的编程语言和 XML API 吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-16
    • 1970-01-01
    • 2018-05-17
    • 2013-09-09
    相关资源
    最近更新 更多