この節では、マスターサーバーリポジトリにステップ (install など) の対象として存在する特定のコンポーネントを指定する要素を説明します。対象となるすべてのステップですべてのターゲッターを使用できるわけではありません。各ターゲッターは、それ自体が使用できるステップを指定します。
<component> は、コンポーネントリポジトリに存在すると想定される特定のコンポーネントを指定します。このターゲッターを使用できるのは、単純プラン内に含まれるステップだけです。
この要素は、<install> ステップのターゲッターとして使用できます。
<component> ターゲッターには次の属性があります。
path – pathReference 型のオプション属性で、コンポーネントのパス。この属性を指定しないと、包含するエンティティのパスが使用されます。
version – version 型のオプション属性で、コンポーネントのバージョン。この属性を指定しないと、最新バージョンのコンポーネントが使用されます。
host – オプション属性で、コンポーネントがインストールされるホスト。デフォルトでは、host は現在のホストです。 host 属性の詳細については、「<retarget> ステップの属性」を参照してください。この属性は、単純置換変数を参照できます。
<thisComponent> は、ステップを含むコンポーネントを、ステップの対象として使用する必要があることを指定します。このターゲッターを使用できるのは、コンポーネント内のステップだけです。この要素には属性がありません。
この要素は、<install> ステップのターゲッターとして使用できます。
リストされたステップにコンポーネントターゲッター要素が含まれない場合、デフォルトで <thisComponent> が使用されます。
<superComponent> は、ステップを含むコンポーネントのベースコンポーネントが、ステップの対象であることを指定します。このターゲッターを使用できるのは、派生コンポーネント内に含まれるステップだけです。この要素には属性がありません。
この要素は、<install> ステップのターゲッターとして使用できます。
このターゲッターは、派生コンポーネントが無効にする場合でも、常にベースコンポーネントによる該当ステップの定義にバインドします。
<nestedRef> は、現在の複合コンポーネントによって宣言または継承が行われた、入れ子になったコンポーネント参照を指定します。このターゲッターを使用できるのは、複合コンポーネント内のステップだけです。
この要素は、<install> ステップのターゲッターとして使用できます。
指定されたコンポーネント参照は、以前に呼び出し側コンポーネントによってインストールされていてはいけません。インストールされている場合はエラーが生成されます。入れ子になった参照先コンポーネントが別のホストにインストールされる場合は、代わりに <retarget> ステップを使用します。このステップを使用しないかぎり、<nestedRef> ターゲッター内で新しいホストを指定することはできません。特定の包含コンポーネントについて、入れ子になったコンポーネント参照を複数のホストにインストールすることはできません。
<nestedRef> ターゲッターには、identifier 型の 1 つの必須属性 name があり、これはこのコンポーネント内の入れ子になったコンポーネント参照の名前です。
<allNestedRefs> は、現在の複合コンポーネントによって宣言または継承が行われた、入れ子になったコンポーネント参照すべてのセットを指定します。このターゲッターを使用できるのは、複合コンポーネント内のステップだけです。
この要素は、<install> ステップのターゲッターとして使用できます。
このターゲッターは、複数のコンポーネントを指定できます。コンポーネントをまったく指定しない場合、ステップはノーオペレーション (空命令) となります。このターゲッターが複数のコンポーネントを指定する場合、指定されるコンポーネントごとに <nestedRef> ターゲッターを使用する個別のステップが存在するかのように、ステップが意味的に展開されます。ステップは同時にではなく連続的に実行され、ステップの順序はステップ型に応じて変化します。コンポーネントの 1 つに対してステップを実行しエラーが生じる場合は、そのステップは一致するほかのコンポーネントに対しては実行されません。
<install> ステップのターゲッターとして使用される場合、ターゲッターはこのコンポーネントによって宣言されている、入れ子になったすべてのコンポーネント参照を照合します。コンポーネントの照合は宣言順に行われます。
<toplevelRef> は、現在の複合コンポーネントによって宣言または継承が行われた最上位のコンポーネント参照を指定します。このターゲッターを使用できるのは、複合コンポーネント内のステップだけです。
この要素は、<install> ステップのターゲッターとして使用できます。
このターゲッターは、name、path、および version 属性の値が参照先コンポーネントに基づいて事前定義されることを除き、意味的に <component> ターゲッターと同じです。最上位コンポーネント参照は、複数のホストに複数回インストールできます。
<toplevelRef> ターゲッターには次の属性があります。
host – オプション属性で、参照先コンポーネントがインストールされるホスト。デフォルトでは、host は現在のホストです。host 属性の詳細については、「<retarget> ステップの属性」を参照してください。この属性は、単純置換変数を参照できます。