この章の内容は次のとおりです。
複数のマッピング・タイプに共通のTopLinkマッピング・オプションを構成する方法の詳細は、第121章「マッピングの構成」を参照してください。
TopLinkマッピングの作成方法の詳細は、第120章「マッピングの作成」を参照してください。
表54-1は、構成可能なXMLマッピング・タイプと、そのタイプで対応している構成可能オプションが記載されたタイプ別の章への相互参照を示します。
表54-1 XMLマッピングの構成
マッピング・タイプ | 参照先 |
---|---|
XMLダイレクト・マッピング(53.3項「XMLダイレクト・マッピング」を参照) |
|
XMLコンポジット・ダイレクト・コレクション・マッピング(53.4項「XMLコンポジット・ダイレクト・コレクション・マッピング」を参照) |
第56章「XMLコンポジット・ダイレクト・コレクション・マッピングの構成」 |
XMLコンポジット・オブジェクト・マッピング(53.5項「XMLコンポジット・オブジェクト・マッピング」を参照) |
第57章「XMLコンポジット・オブジェクト・マッピングの構成」 |
XMLコンポジット・コレクション・マッピング(53.6項「XMLコンポジット・コレクション・マッピング」を参照) |
第58章「XMLコンポジット・コレクション・マッピングの構成」 |
XML任意オブジェクト・マッピング(53.7項「XML任意オブジェクト・マッピング」を参照) |
|
XML任意コレクション・マッピング(53.8項「XML任意コレクション・マッピング」を参照) |
|
XMLトランスフォーメーション・マッピング(53.9項「XMLトランスフォーメーション・マッピング」を参照) |
第61章「XMLトランスフォーメーション・マッピングの構成」 |
XMLオブジェクト参照マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
XMLコレクション参照マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
XMLバイナリ・データ・マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
XMLバイナリ・データ・コレクション・マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
XMLフラグメント・マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
XMLフラグメント・コレクション・マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
XML選択オブジェクト・マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
XML選択コレクション・マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
XML任意属性マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
詳細は、次を参照してください。
表54-2は、複数のXMLマッピング・タイプによって共有される構成可能オプションを示します。ここで説明する構成可能オプション以外にも、表54-1に示すように、特定のXMLマッピングのタイプについて説明しているオプションも構成する必要があります。
表54-2 XMLマッピングの共通オプション
オプション | Oracle JDeveloper |
TopLink Workbench | Java |
---|---|---|---|
|
|||
|
|||
|
|||
121.6項「マッピング・レベルでのメソッドまたは直接フィールド・アクセスの構成」 |
|||
|
|||
|
|
||
121.9項「シリアライズ・オブジェクト・コンバータの構成」 |
|||
|
|||
|
|||
|
|||
|
|||
|
|
|
|
54.5項「ソース・キー・フィールドからターゲット・キー・フィールドへのアソシエーションの構成」 |
|
||
|
|
||
|
|
||
|
|
||
|
|
スキーマ要素ではなく、他のディスクリプタを参照するXML属性の場合、特定の参照ディスクリプタを選択できます。参照ディスクリプタを指定しない場合、TopLinkはxsi:Type
属性を使用して参照クラス・オブジェクトを決定します。
11g(11.1.1.0)より前のTopLinkのバージョンでは、参照クラスは必須でした。
表54-3では、どのXMLマッピングが参照ディスクリプタ構成をサポートしているかを示します。
表54-3 XMLマッピングでの参照ディスクリプタ構成のサポート
XMLマッピング | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用した参照ディスクリプタの構成方法 |
Javaの使用方法 |
---|---|---|---|
XMLダイレクト・マッピング(53.3項「XMLダイレクト・マッピング」を参照) |
|
|
|
XMLコンポジット・ダイレクト・コレクション・マッピング(53.4項「XMLコンポジット・ダイレクト・コレクション・マッピング」を参照) |
|
|
|
XMLコンポジット・オブジェクト・マッピング(53.5項「XMLコンポジット・オブジェクト・マッピング」を参照) |
|||
XMLコンポジット・コレクション・マッピング(53.6項「XMLコンポジット・コレクション・マッピング」を参照) |
|||
XML任意オブジェクト・マッピング(53.7項「XML任意オブジェクト・マッピング」を参照) |
|
|
|
XML任意コレクション・マッピング(53.8項「XML任意コレクション・マッピング」を参照) |
|
|
|
XMLトランスフォーメーション・マッピング(53.9項「XMLトランスフォーメーション・マッピング」を参照) |
|
|
|
XMLオブジェクト参照マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
|
|
XMLオブジェクト・コレクション・マッピング(53.11項「XMLコレクション参照マッピング」を参照) |
|
|
|
XMLバイナリ・データ・マッピング(53.12項「XMLバイナリ・データ・マッピング」を参照) |
|
|
|
XMLバイナリ・データ・コレクション・マッピング(53.13項「XMLバイナリ・データ・コレクション・マッピング」を参照) |
|
|
|
XMLフラグメント・マッピング(53.14項「XMLフラグメント・マッピング」を参照) |
|
|
|
XMLフラグメント・コレクション・マッピング(53.15項「XMLフラグメント・コレクション・マッピング」を参照) |
|
|
|
XML選択オブジェクト・マッピング(53.16項「XML選択オブジェクト・マッピング」を参照) |
|
|
|
XML選択コレクション・マッピング(53.17項「XML選択コレクション・マッピング」を参照) |
|
|
|
XML任意属性マッピング(53.18項「XML任意属性マッピング」を参照) |
|
|
|
スキーマ要素ではなく、別のディスクリプタを参照するXMLマッピングの参照ディスクリプタを指定するには、次の手順を実行します。
ナビゲータでマップされた属性を選択します。そのプロパティがエディタに表示されます。
「一般」タブをクリックします。「一般」タブが表示されます。
このXML属性が、スキーマ要素ではなく別のディスクリプタを参照する場合は、「参照ディスクリプタ」フィールドを使用してプロジェクトのディスクリプタを選択します。
この属性はOracle JDeveloper TopLinkエディタおよびTopLink Workbenchにのみ適用されます。このオプションは、ワイルドカードにマップするためにXPathを必要としない(121.4項「XPathの構成」を参照)XMLマッピングの「XPathが指定されていません。」という問題(5.3.5項「問題ウィンドウの使用方法」を参照)を解決する場合に使用します。
XMLマッピングがanyType
ディスクリプタによって所有されている場合は(52.3項「複合型anyTypeの構成」を参照)、ワイルドカードにマップできないためXPathを指定する必要があります。
表54-4では、どのXMLマッピングがワイルドカード構成へのマップをサポートしているかを示します。
表54-4 XMLマッピングでのワイルドカード構成へのマップのサポート
XMLマッピング | Oracle JDeveloperの使用方法 | TopLink Workbenchを使用したワイルドカードへのマッピングの構成方法 | Javaの使用方法 |
---|---|---|---|
XMLダイレクト・マッピング(53.3項「XMLダイレクト・マッピング」を参照) |
|||
XMLコンポジット・ダイレクト・コレクション・マッピング(53.4項「XMLコンポジット・ダイレクト・コレクション・マッピング」を参照) |
|||
XMLコンポジット・オブジェクト・マッピング(53.5項「XMLコンポジット・オブジェクト・マッピング」を参照) |
|||
XMLコンポジット・コレクション・マッピング(53.6項「XMLコンポジット・コレクション・マッピング」を参照) |
|||
XML任意オブジェクト・マッピング(53.7項「XML任意オブジェクト・マッピング」を参照) |
|||
XML任意コレクション・マッピング(53.8項「XML任意コレクション・マッピング」を参照) |
|||
XMLトランスフォーメーション・マッピング(53.9項「XMLトランスフォーメーション・マッピング」を参照) |
|||
XMLオブジェクト参照マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
|
|
XMLオブジェクト・コレクション・マッピング(53.11項「XMLコレクション参照マッピング」を参照) |
|
|
|
XMLバイナリ・データ・マッピング(53.12項「XMLバイナリ・データ・マッピング」を参照) |
|
|
|
XMLバイナリ・データ・コレクション・マッピング(53.13項「XMLバイナリ・データ・コレクション・マッピング」を参照) |
|
|
|
XMLフラグメント・マッピング(53.14項「XMLフラグメント・マッピング」を参照) |
|
|
|
XMLフラグメント・コレクション・マッピング(53.15項「XMLフラグメント・コレクション・マッピング」を参照) |
|
|
|
XML選択オブジェクト・マッピング(53.16項「XML選択オブジェクト・マッピング」を参照) |
|
|
|
XML選択コレクション・マッピング(53.17項「XML選択コレクション・マッピング」を参照) |
|
|
|
XML任意属性マッピング(53.18項「XML任意属性マッピング」を参照) |
|
|
|
xs:any
宣言を使用するスキーマ要素としてマップを指定するには、次の手順を実行します。
ナビゲータでマップされた属性を選択します。そのプロパティがエディタに表示されます。
XMLマッピングがanyType
ディスクリプタによって所有されておらず(52.3項「複合型anyTypeの構成」を参照)、ワイルドカードにマップする場合は、XPathを指定する必要がありません(121.4項「XPathの構成」を参照)。「ワイルドカードにマップ("any"タグを使用)」オプションを選択して、XPath欠落の不足メッセージを消去します。
XMLマッピングがanyType
ディスクリプタによって所有されている場合は、ワイルドカードにマップできないためXPathを指定する必要があります。「ワイルドカードにマップ("any"タグを使用)」オプションの選択を解除して、XPathを指定するようにします。
このオプションは、ソースにキーのある状態でのマッピングに適用できます。このオプションを使用して、ソースとターゲットのXPathペアを、これらのキー・ペアのマップへ追加します。
表54-5では、どのXMLマッピングがソース・キー・フィールドからターゲット・キー・フィールドへのアソシエーションの構成をサポートしているかを示します。
表54-5 XMLマッピングでのソース・キー・フィールドからターゲット・キー・フィールドへのアソシエーションの構成のサポート
XMLマッピング | Oracle JDeveloperの使用方法 | TopLink Workbenchの使用方法 | Javaを使用したソース・キー・フィールドからターゲット・キー・フィールドへのアソシエーションの構成方法 |
---|---|---|---|
XMLダイレクト・マッピング(53.3項「XMLダイレクト・マッピング」を参照) |
|||
XMLコンポジット・ダイレクト・コレクション・マッピング(53.4項「XMLコンポジット・ダイレクト・コレクション・マッピング」を参照) |
|||
XMLコンポジット・オブジェクト・マッピング(53.5項「XMLコンポジット・オブジェクト・マッピング」を参照) |
|||
XMLコンポジット・コレクション・マッピング(53.6項「XMLコンポジット・コレクション・マッピング」を参照) |
|||
XML任意オブジェクト・マッピング(53.7項「XML任意オブジェクト・マッピング」を参照) |
|||
XML任意コレクション・マッピング(53.8項「XML任意コレクション・マッピング」を参照) |
|||
XMLトランスフォーメーション・マッピング(53.9項「XMLトランスフォーメーション・マッピング」を参照) |
|||
XMLオブジェクト参照マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
||
XMLオブジェクト・コレクション・マッピング(53.11項「XMLコレクション参照マッピング」を参照) |
|
||
XMLバイナリ・データ・マッピング(53.12項「XMLバイナリ・データ・マッピング」を参照) |
|
|
|
XMLバイナリ・データ・コレクション・マッピング(53.13項「XMLバイナリ・データ・コレクション・マッピング」を参照) |
|
|
|
XMLフラグメント・マッピング(53.14項「XMLフラグメント・マッピング」を参照) |
|
|
|
XMLフラグメント・コレクション・マッピング(53.15項「XMLフラグメント・コレクション・マッピング」を参照) |
|
|
|
XML選択オブジェクト・マッピング(53.16項「XML選択オブジェクト・マッピング」を参照) |
|
|
|
XML選択コレクション・マッピング(53.17項「XML選択コレクション・マッピング」を参照) |
|
|
|
XML任意属性マッピング(53.18項「XML任意属性マッピング」を参照) |
|
|
|
マッピングに対してソース・キー・フィールドからターゲット・キー・フィールドへのアソシエーションを構成するには、XMLObjectReferenceMapping
メソッドaddSourceToTargetKeyFieldAssociation
を使用して、指定されたソースおよびターゲットのXPathペアをマップに追加します。
このオプションは、ソースにキーのある状態でのマッピングに適用できます。
このオプションを使用して参照クラスを定義します。この参照クラスのインスタンスが、XMLオブジェクト参照マッピングでドメイン・オブジェクト内に格納されます。
表54-6では、どのXMLマッピングがソース・キー・フィールドからターゲット・キー・フィールドへのアソシエーションの構成をサポートしているかを示します。
表54-6 XMLマッピングでの参照クラス構成のサポート
XMLマッピング | Oracle JDeveloperの使用方法 | TopLink Workbenchの使用方法 | Javaを使用した参照クラスの構成方法 |
---|---|---|---|
XMLダイレクト・マッピング(53.3項「XMLダイレクト・マッピング」を参照) |
|||
XMLコンポジット・ダイレクト・コレクション・マッピング(53.4項「XMLコンポジット・ダイレクト・コレクション・マッピング」を参照) |
|||
XMLコンポジット・オブジェクト・マッピング(53.5項「XMLコンポジット・オブジェクト・マッピング」を参照) |
|||
XMLコンポジット・コレクション・マッピング(53.6項「XMLコンポジット・コレクション・マッピング」を参照) |
|||
XML任意オブジェクト・マッピング(53.7項「XML任意オブジェクト・マッピング」を参照) |
|||
XML任意コレクション・マッピング(53.8項「XML任意コレクション・マッピング」を参照) |
|||
XMLトランスフォーメーション・マッピング(53.9項「XMLトランスフォーメーション・マッピング」を参照) |
|||
XMLオブジェクト参照マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
||
XMLオブジェクト・コレクション・マッピング(53.11項「XMLコレクション参照マッピング」を参照) |
|
||
XMLバイナリ・データ・マッピング(53.12項「XMLバイナリ・データ・マッピング」を参照) |
|
|
|
XMLバイナリ・データ・コレクション・マッピング(53.13項「XMLバイナリ・データ・コレクション・マッピング」を参照) |
|
|
|
XMLフラグメント・マッピング(53.14項「XMLフラグメント・マッピング」を参照) |
|
|
|
XMLフラグメント・コレクション・マッピング(53.15項「XMLフラグメント・コレクション・マッピング」を参照) |
|
|
|
XML選択オブジェクト・マッピング(53.16項「XML選択オブジェクト・マッピング」を参照) |
|
|
|
XML選択コレクション・マッピング(53.17項「XML選択コレクション・マッピング」を参照) |
|
|
|
XML任意属性マッピング(53.18項「XML任意属性マッピング」を参照) |
|
|
|
マッピングに対して参照クラスを構成するには、AggregateMapping
メソッドsetReferenceClass
を使用します。
このオプションは、バイナリ・データ・マッピングに適用できます。
このオプションを使用して、このマッピングに対してインライン・バイナリ・データが常に必要かどうかを決定します。
表54-7では、どのXMLマッピングがインライン・バイナリ・データの使用の構成をサポートしているかを示します。
表54-7 XMLマッピングでのインライン・バイナリ・データの使用の構成のサポート
XMLマッピング | Oracle JDeveloperの使用方法 | TopLink Workbenchの使用方法 | Javaを使用したインライン・バイナリ・データの使用の構成方法 |
---|---|---|---|
XMLダイレクト・マッピング(53.3項「XMLダイレクト・マッピング」を参照) |
|||
XMLコンポジット・ダイレクト・コレクション・マッピング(53.4項「XMLコンポジット・ダイレクト・コレクション・マッピング」を参照) |
|||
XMLコンポジット・オブジェクト・マッピング(53.5項「XMLコンポジット・オブジェクト・マッピング」を参照) |
|||
XMLコンポジット・コレクション・マッピング(53.6項「XMLコンポジット・コレクション・マッピング」を参照) |
|||
XML任意オブジェクト・マッピング(53.7項「XML任意オブジェクト・マッピング」を参照) |
|||
XML任意コレクション・マッピング(53.8項「XML任意コレクション・マッピング」を参照) |
|||
XMLトランスフォーメーション・マッピング(53.9項「XMLトランスフォーメーション・マッピング」を参照) |
|||
XMLオブジェクト参照マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
|
|
XMLオブジェクト・コレクション・マッピング(53.11項「XMLコレクション参照マッピング」を参照) |
|
|
|
XMLバイナリ・データ・マッピング(53.12項「XMLバイナリ・データ・マッピング」を参照) |
|
||
XMLバイナリ・データ・コレクション・マッピング(53.13項「XMLバイナリ・データ・コレクション・マッピング」を参照) |
|
||
XMLフラグメント・マッピング(53.14項「XMLフラグメント・マッピング」を参照) |
|
|
|
XMLフラグメント・コレクション・マッピング(53.15項「XMLフラグメント・コレクション・マッピング」を参照) |
|
|
|
XML選択オブジェクト・マッピング(53.16項「XML選択オブジェクト・マッピング」を参照) |
|
|
|
XML選択コレクション・マッピング(53.17項「XML選択コレクション・マッピング」を参照) |
|
|
|
XML任意属性マッピング(53.18項「XML任意属性マッピング」を参照) |
|
|
|
マッピングに対してインライン・バイナリ・データの使用を構成するには、XMLBinaryDataMapping
またはXMLBinaryDataCollectionMapping
のメソッドsetShouldInlineBinaryData
を使用します。これをtrue
に設定すると、このマッピングに対する添付ファイル処理を考慮せず、インライン・データのみが必要であると指定したことになります。
このオプションは、バイナリ・データ・マッピングに適用できます。
このオプションを使用して、このマッピングのターゲット・ノードがxs:swaref
タイプであることを指定します。
表54-8では、どのXMLマッピングがSwaRefタイプの使用の構成をサポートしているかを示します。
表54-8 XMLマッピングでのSwaRefタイプの使用の構成のサポート
XMLマッピング | Oracle JDeveloperの使用方法 | TopLink Workbenchの使用方法 | Javaを使用したSwaRefタイプの使用の構成方法 |
---|---|---|---|
XMLダイレクト・マッピング(53.3項「XMLダイレクト・マッピング」を参照) |
|||
XMLコンポジット・ダイレクト・コレクション・マッピング(53.4項「XMLコンポジット・ダイレクト・コレクション・マッピング」を参照) |
|||
XMLコンポジット・オブジェクト・マッピング(53.5項「XMLコンポジット・オブジェクト・マッピング」を参照) |
|||
XMLコンポジット・コレクション・マッピング(53.6項「XMLコンポジット・コレクション・マッピング」を参照) |
|||
XML任意オブジェクト・マッピング(53.7項「XML任意オブジェクト・マッピング」を参照) |
|||
XML任意コレクション・マッピング(53.8項「XML任意コレクション・マッピング」を参照) |
|||
XMLトランスフォーメーション・マッピング(53.9項「XMLトランスフォーメーション・マッピング」を参照) |
|||
XMLオブジェクト参照マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
|
|
XMLオブジェクト・コレクション・マッピング(53.11項「XMLコレクション参照マッピング」を参照) |
|
|
|
XMLバイナリ・データ・マッピング(53.12項「XMLバイナリ・データ・マッピング」を参照) |
|
||
XMLバイナリ・データ・コレクション・マッピング(53.13項「XMLバイナリ・データ・コレクション・マッピング」を参照) |
|
||
XMLフラグメント・マッピング(53.14項「XMLフラグメント・マッピング」を参照) |
|
|
|
XMLフラグメント・コレクション・マッピング(53.15項「XMLフラグメント・コレクション・マッピング」を参照) |
|
|
|
XML選択オブジェクト・マッピング(53.16項「XML選択オブジェクト・マッピング」を参照) |
|
|
|
XML選択コレクション・マッピング(53.17項「XML選択コレクション・マッピング」を参照) |
|
|
|
XML任意属性マッピング(53.18項「XML任意属性マッピング」を参照) |
|
|
|
マッピングに対してSwaRefタイプの使用を構成するには、XMLBinaryDataMapping
またはXMLBinaryDataCollectionMapping
のメソッドsetSwaRef
を使用します。これをtrue
に設定すると、このマッピングのターゲット・ノードがxs:swaref
タイプであることを指定したことになります。
このオプションは、選択マッピングに適用できます。
このオプションを使用して、XPathおよびこのXPathに関連付けられているタイプを指定します。
表54-9では、どのXMLマッピングが選択要素の構成をサポートしているかを示します。
表54-9 XMLマッピングでの選択要素の構成のサポート
XMLマッピング | Oracle JDeveloperの使用方法 | TopLink Workbenchの使用方法 | Javaを使用した選択要素の構成方法 |
---|---|---|---|
XMLダイレクト・マッピング(53.3項「XMLダイレクト・マッピング」を参照) |
|||
XMLコンポジット・ダイレクト・コレクション・マッピング(53.4項「XMLコンポジット・ダイレクト・コレクション・マッピング」を参照) |
|||
XMLコンポジット・オブジェクト・マッピング(53.5項「XMLコンポジット・オブジェクト・マッピング」を参照) |
|||
XMLコンポジット・コレクション・マッピング(53.6項「XMLコンポジット・コレクション・マッピング」を参照) |
|||
XML任意オブジェクト・マッピング(53.7項「XML任意オブジェクト・マッピング」を参照) |
|||
XML任意コレクション・マッピング(53.8項「XML任意コレクション・マッピング」を参照) |
|||
XMLトランスフォーメーション・マッピング(53.9項「XMLトランスフォーメーション・マッピング」を参照) |
|||
XMLオブジェクト参照マッピング(53.10項「XMLオブジェクト参照マッピング」を参照) |
|
|
|
XMLオブジェクト・コレクション・マッピング(53.11項「XMLコレクション参照マッピング」を参照) |
|
|
|
XMLバイナリ・データ・マッピング(53.12項「XMLバイナリ・データ・マッピング」を参照) |
|
|
|
XMLバイナリ・データ・コレクション・マッピング(53.13項「XMLバイナリ・データ・コレクション・マッピング」を参照) |
|
|
|
XMLフラグメント・マッピング(53.14項「XMLフラグメント・マッピング」を参照) |
|
|
|
XMLフラグメント・コレクション・マッピング(53.15項「XMLフラグメント・コレクション・マッピング」を参照) |
|
|
|
XML選択オブジェクト・マッピング(53.16項「XML選択オブジェクト・マッピング」を参照) |
|
||
XML選択コレクション・マッピング(53.17項「XML選択コレクション・マッピング」を参照) |
|
||
XML任意属性マッピング(53.18項「XML任意属性マッピング」を参照) |
|
|
|
次の、XMLChoiceObjectMapping
またはXMLChoiceCollectionMapping
のメソッドを使用して、選択要素を追加します。
addChoiceElement(String xpath, Class elementType)
addChoiceElement(String xpath, String elementTypeName)