7.8.5 類似度の判定方法
マッピング定義をコピーすると,コピー元となるマッピング定義のスキーマの要素と,コピー先のスキーマの要素が比較され,類似した要素があった場合にコピーされます。類似した要素が複数あるときは,優先度の高い順にコピーされます。マッピングがコピーされる優先度を次に説明します。
- 注意事項
-
次の条件に当てはまるファンクションについては,優先度に関係なく,コピーされません。
-
ソート条件が設定されているくり返しファンクションのうち,ソート条件に対応する変換元ノードがないもの
-
連携パスが設定されているくり返しファンクションのうち,連携パスに対応する変換元ノードがないもの
-
条件が設定されている選択ファンクションのうち,条件に対応する変換元ノードがないもの
-
- 〈この項の構成〉
(1) 構造一致複製マッピング
構造一致複製マッピングでマッピング定義をコピーした場合に,マッピングがコピーされる優先度を次の表に示します。
優先度 |
スキーマ論理名 |
親パス |
要素名 |
---|---|---|---|
1 |
○ |
○ |
○ |
2 |
× |
○ |
○ |
(2) 要素名一致複製マッピング
要素名一致複製マッピングでマッピング定義をコピーした場合に,マッピングがコピーされる優先度を次の表に示します。
優先度 |
要素 |
パス |
||
---|---|---|---|---|
名前空間 |
要素名 |
名前空間 |
要素名 |
|
1 |
× |
× |
○ |
○ |
2 |
× |
× |
× |
○ |
3 |
○ |
○ |
× |
△ |
4 |
× |
○ |
× |
△ |
5 |
× |
△ |
× |
△ |
なお,要素名一致複製マッピングでは,コピーした要素の依存関係に矛盾が生じないようにする必要があります。依存関係が設定されている変換先ノードをコピーする場合は,次の条件に合わせてコピーします。
-
依存対象となる変換先ノードがコピーされている場合は,依存対象の変換先ノードの子孫に含まれるようにコピーします。
-
依存対象となる変換先ノードをコピーできなかった場合は,依存対象となる変換先ノードと類似度が高い変換先ノードを検索して,そのノードの子孫に含まれるようにコピーします。類似度の高い変換先ノードが見つからなかった場合は,依存関係なしとしてコピーします。
また,次に示す値にノード条件が設定されている場合は,条件が設定されている祖先ノードが,変換先ノードおよびファンクションの接続元となる変換元ノードの祖先ノードになるようにコピーします。
-
変換先ノードの入力値
-
ファンクションの入力値
-
くり返しファンクションの連携パス