XML Schema extension 元素

返回上一级

XML Schema extension 元素对 simpleType 或 complexType 的元素进行扩展

<extension id=ID base=QName *any attributes* >(annotation?,((group|all|choice|sequence)?,((attribute|attributeGroup)*,anyAttribute?)))</extension>

? 符号声明在 extension 元素内,该元素只能出现零次或一次
* 符号声明该元素可出现零次或多次

属性

属性 描述
id 可选。规定该元素的唯一的 ID
base 必需。规定内建数据类型、simpleType 或 complexType 元素的名称
xml:lang 可选。规定内容中使用的语言

元素信息

  • 父元素: simpleContent, complexContent

范例 1

下面的范例通过添加属性,对一个已有的 simpleType 进行扩展

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:simpleType name="size">
        <xs:restriction base="xs:string">
            <xs:enumeration value="small" />
            <xs:enumeration value="medium" />
            <xs:enumeration value="large" />
        </xs:restriction>
    </xs:simpleType>
    <xs:complexType name="jeans">
        <xs:simpleContent>
            <xs:extension base="size">
                <xs:attribute name="sex">
                    <xs:simpleType>
                        <xs:restriction base="xs:string">
                            <xs:enumeration value="male" />
                            <xs:enumeration value="female" />
                        </xs:restriction>
                    </xs:simpleType>
                </xs:attribute>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
</xs:schema>

范例 2

下面的范例通过添加三个元素,对一个已有的 complexType 元素进行扩展

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="employee" type="fullpersoninfo"/>
    <xs:complexType name="personinfo">
        <xs:sequence>
            <xs:element name="firstname" type="xs:string"/>
            <xs:element name="lastname" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="fullpersoninfo">
        <xs:complexContent>
            <xs:extension base="personinfo">
                <xs:sequence>
                    <xs:element name="address" type="xs:string"/>
                    <xs:element name="city" type="xs:string"/>
                    <xs:element name="country" type="xs:string"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
</xs:schema>

返回上一级

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.