第 34 章 使用简单类型
摘要
XML Schema 简单的类型是 XML Schema primitive 类型,如 xsd:int
,或使用 simpleType
元素来定义。它们用于指定不包含任何子或属性的元素。它们通常映射到原生 Java 结构,不需要生成特殊类来实施它们。枚举的简单类型不会产生生成的代码,因为它们映射到 Java 枚举类型。
34.1. 原语类型
概述
当使用 XML Schema 原语类型来定义消息部分时,所生成的参数类型映射到对应的 Java 原生类型。在映射复杂类型范围内定义的元素时,使用相同的模式。生成的字段是对应的 Java 原生类型。
映射
表 34.1 “XML Schema Primitive Type to Java Native Type Mapping” 列出 XML Schema 原语类型和 Java 原生类型之间的映射。
XML Schema 类型 | Java 类型 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[a]
这种类型的元素。
[b]
对于此类属性。
|
打包程序类
将 XML Schema 原语类型映射到 Java primitive 类型不适用于所有可能的 XML Schema 结构。一些情况要求 XML Schema 原语类型映射到 Java 原语类型对应的打包程序类型。这些情况包括:
一个
element
element,其nillable
属性设置为true
,如下所示:<element name="finned" type="xsd:boolean" nillable="true" />
一个
元素
元素,其minOccurs
属性设置为
0,其maxOccurs
属性设为1
,或者其maxOccurs
属性没有被指定,如下所示:<element name="plane" type="xsd:string" minOccurs="0" />
属性
元素的use
属性设为可选
,或者未指定,并且没有任何默认
属性或指定的固定
属性,如下所示:<element name="date"> <complexType> <sequence/> <attribute name="calType" type="xsd:string" use="optional" /> </complexType> </element>
表 34.2 “primitive Schema Type to Java Wrapper Class Mapping” 显示在这样的情形中如何将 XML Schema 原语类型映射到 Java 打包程序类。
模式类型 | Java 类型 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|