2.5.3. 按扩展定义类型


与大多数主要编码语言一样,XML Schema 允许您创建数据类型,从其他数据类型继承其部分元素。这称为扩展来定义类型。例如,您可以创建一个名为 alienInfo 的新类型,通过添加名为 planet 的新元素来扩展 例 2.4 “复杂类型” 中定义的 personalInfo 结构。

由扩展定义的类型有四个部分:

  1. 类型的名称由 complexType 元素的 name 属性定义。
  2. complexContent 元素指定新类型将拥有多个元素。

    注意

    如果您只向复杂类型添加新属性,您可以使用 simpleContent 元素。

  3. 新类型派生的类型(称为 基本 类型)是在 extension 元素的 base 属性中指定
  4. 新的类型的元素和属性在 extension 元素中定义,它们与常规复杂类型相同。

例如,alienInfo 定义为 例 2.13 “按扩展定义的类型” 所示。

例 2.13. 按扩展定义的类型

<complexType name="alienInfo">
  <complexContent>
    <extension base="xsd1:personalInfo">
      <sequence>
        <element name="planet" type="xsd:string"/>
      </sequence>
    </extension>
  </complexContent>
</complexType>
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.