第34章 単純型の使用
概要
XML Schema の単純なタイプは xsd:int などの XML Schema プリミティブタイプであるか、simpleType 要素を使用して定義されます。これらは、子や属性を含まない要素を指定するために使用されます。これらは通常、ネイティブ Java 構造にマップされ、それらを実装するために特別なクラスを生成する必要はありません。列挙された単純なタイプは Java enum タイプにマップされるため、生成されたコードでは発生しません。
34.1. プリミティブ型 リンクのコピーリンクがクリップボードにコピーされました!
概要 リンクのコピーリンクがクリップボードにコピーされました!
XML スキーマプリミティブ型の 1 つを使用してメッセージ部分が定義されると、生成されたパラメーターの型は、対応する Java ネイティブ型にマップされます。複合型のスコープ内で定義されている要素をマッピングする場合も、同じパターンが使用されます。結果のフィールドは、対応する Java ネイティブタイプです。
マッピング リンクのコピーリンクがクリップボードにコピーされました!
表34.1「XML スキーマのプリミティブ型から Java ネイティブ型へのマッピング」 XML スキーマプリミティブ型と Java ネイティブ型の間のマッピングをリスト表示します。
| XML スキーマタイプ | Java タイプ |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[a]
このタイプの要素の場合。
[b]
このタイプの属性の場合。
| |
ラッパークラス リンクのコピーリンクがクリップボードにコピーされました!
XML スキーマプリミティブ型を Java プリミティブ型にマッピングすることは、考えられるすべての XML スキーマ構造に対して機能するわけではありません。いくつかのケースでは、XML スキーマプリミティブ型が Java プリミティブ型の対応するラッパー型にマップされる必要があります。ユースケースには以下が含まれます。
以下に示すように、その
nillable属性がtrueに設定されたelement要素。<element name="finned" type="xsd:boolean" nillable="true" /><element name="finned" type="xsd:boolean" nillable="true" />Copy to Clipboard Copied! Toggle word wrap Toggle overflow minOccurs属性が0、maxOccurs属性が1に設定されているか、maxOccurs属性が指定されていないelement要素は、次のようになります。<element name="plane" type="xsd:string" minOccurs="0" />
<element name="plane" type="xsd:string" minOccurs="0" />Copy to Clipboard Copied! Toggle word wrap Toggle overflow 図のように,
use属性がoptionalまたは not specified に設定され,default属性もfixed属性も指定されていないattribute要素です。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
表34.2「プリミティブスキーマタイプから Java ラッパークラスへのマッピング」 は、これらの場合に XML スキーマプリミティブ型が Java ラッパークラスにマップされる方法を示しています。
| スキーマタイプ | Java タイプ |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|