この節では、Master Server リポジトリに包含ステップ (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> ステップの属性」を参照してください。この属性は、単純置換変数を参照できます。