消息模型对象:类型继承

XML 模式语言允许一个类型定义基于另一个类型定义。使用这种方法,可以构造类型的层次结构。本主题概述了类型继承的概念,并突出显示了与替代相关的重要事宜。

有关 XML 模式类型继承的完整讨论可在 万维网协会(W3C) Web 站点或有关 XML 模式的大量书籍中找到。

局限性和扩展

如果派生类型的元素有比基本类型的元素范围小的合法值(或合法类型成员),类型是它的基本类型的限制

如果派生类型的元素有比基本类型的元素范围大的合法值(或合法类型成员),类型是它的基本类型的扩展

特殊的规则应用到简单类型的派生。一个简单类型不能扩展另一个简单类型。这确保简单类型使用的限制无法从它派生的另一个简单类型中除去。

但是,复杂类型允许扩展简单类型。这不会影响简单类型的合法值的范围,但它确实允许添加属性。扩展简单类型的得到结果总是包含零个或多个属性的复杂类型。

控制类型继承

复杂类型上的最终属性可以有三个值,带有以下效果:

类型继承和替代

XML 模式提供了两种不同的替代机制,这两种机制都使用类型继承信息来允许或禁止替代。

元素替代由替代组控制,且元素替代可对于通过在元素自身或元素的类型上设置对扩展或显示阻止或允许。

类型替代 允许使用元素上的 xsi:type 属性在实例文档内定义元素的类型,这样元素的真实类型在元素被部分解析之前是未知的。也可以基于涉及的方法的派生方法阻塞或允许此机制。

声明 | 商标 | 下载 | 书库 | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后一次更新时间:2006/08/14
ad10430_