map 関数
関連するスキーマタイプがわかっている場合、動的なタイプを設計することができます。 スキーマのメンバー名は、一定のルールに従って動的なクラスフィールド名に変換されます。
関連するスキーマ・タイプが分かっている場合は、map 関数を使用して動的タイプを設計します。
T が複合 タイプである場合、map(T) は、T に関連する動的クラスを表します。
T が アトミック 単純タイプの場合、map(T) は、マップされた動的タイプを表します。これは以下のルールに従います。
T が組み込みタイプである場合、 動的タイプは XXX として表されます。
マップ (T) = マップ (基本 (T)) で、基本 (T) は T の直接基本単純タイプです。
map 関数の例
以下のように定義される単純タイプ MyT の場合、
<simpleType name="MyT">
<restriction base="string">
</simpleType>
map(MyT) = java.lang.String のようになります。
以下の式があります。
class C
{
[map(MyT)] myField;
}
以下を表します。
class C
{
java.lang.String myField;
}
スキーマ・メンバー名から動的クラス・フィールド名への変換
スキーマ・メンバー名は、いくつかのルールに従って動的クラス・フィールド名に変換されます。
スキーマ・メンバー名は、以下のルールに従って動的クラス・フィールド名に変換されます。
最初の入力文字は小文字に変換されます。
Java™の識別子に含まれる可能性のある文字はすべて、変更することなく翻訳されます。
その他の文字は廃棄され、次の文字は大文字に変換されます。
変換後のメンバー名が既にメンバー ID として使用されている場合、数字のサフィックスがその名前に追加されます。 例えば、
fieldはfield_0になります。
以上のルールに従い、my-address は myAddress になります。