ATTACH ステートメント

ATTACH ステートメントは、メッセージ・ツリーの一部をメッセージ階層の新しい部分として接続します。

構文

次の例は、ATTACH ステートメントの使い方を示すものです。 DETACH ステートメントで説明する DETACH ステートメントと一緒に使って、 メッセージ構造を変更する方法が示されています。 DETACH ステートメントに指定する動的参照は、 Environment、LocalEnvironment、OutputRoot、OutputExceptionList、または InputLocalEnvironment など、 変更可能なメッセージ・ツリーを指すものでなければなりません。

ATTACH の使用に際しては、いくらかの制限があります。 一般に、Compute ノードの出力ツリーから切り離されたエレメントは、環境ツリーまたは入力ツリーに付加できません。

たとえば、次のメッセージに対して、
<Data>
    <Order>
         <Item>cheese
                <Type>stilton</Type>
       </Item>
         <Item>bread</Item>
    </Order>
    <Order>
         <Item>garlic</Item>
         <Item>wine</Item>
    </Order>
 </Data>
次の ESQL ステートメントは、
SET OutputRoot = InputRoot;
DECLARE ref1 REFERENCE TO OutputRoot.XML.Data.Order[1].Item[1];
DETACH ref1;
ATTACH ref1 TO OutputRoot.XML.Data.Order[2] AS LASTCHILD;
次に示す新しいメッセージ構造を戻します。
<Data>
    <Order>
          <Item>bread</Item>
    </Order>
    <Order>
          <Item>garlic</Item>
          <Item>wine</Item>
          <Item>cheese
                <Type>stilton</Type>
        </Item>
    </Order>
 </Data>

動的参照については、動的フィールド参照の作成を参照してください。

関連概念
ESQL

関連タスク
ESQL の開発
動的フィールド参照の作成

関連資料
構文の設定
ESQL のステートメント
DETACH ステートメント