This section describes elements that identify a particular component that resides in the master server repository as the target of the containing step, such as install. All targeters cannot be used with all targeted steps. Each targeter specifies the steps with which it can be used.
The <component> element identifies a particular component that is assumed to exist in the component repository. Only steps that are contained in a simple plan can use this targeter.
This element can be used as a targeter for the <install> step.
The <component> targeter has the following attributes:
name – A required attribute of type entityName, which is the name of the component.
path – An optional attribute of type pathReference, which is the path of the component. If this attribute is omitted, the path of the containing entity is assumed.
version – An optional attribute of type version, which is the version of the component. If this attribute is omitted, the latest version of the component is used.
host – An optional attribute that is the host on which the component should be installed. By default, host is the current host. See the description of the host attribute in Attributes for the <retarget> Step. This attribute can reference simple substitution variables.
The <thisComponent> element specifies that the component that contains the step should be used as the target of the step. Only steps that are contained in a component can use this targeter. This element has no attributes.
This element can be used as a targeter for the <install> step.
If the steps listed do not contain a component targeter element, <thisComponent> is assumed by default.
The <superComponent> element specifies that the base component of the component that contains the step should be used as the target of the step. Only steps that are contained in a derived component can use this targeter. This element has no attributes.
This element can be used as a targeter for the <install> step.
This targeter always binds to the base component's definition of the step in question, even if the derived component overrides it.
The <nestedRef> element identifies a nested component reference that is declared or inherited by the current composite component. Only steps in a composite component can use this targeter.
This element can be used as a targeter for the <install> step.
The named component reference is assumed to not be previously installed by the calling component. Otherwise, an error is issued. If a nested referenced component is to be installed on a different host, a <retarget> step must be used. You cannot otherwise specify a new host within the <nestedRef> targeter. You cannot install a nested component reference on more than one host for a given containing component.
The <nestedRef> targeter has one required attribute of type identifier, name, which is the name of a nested component reference that is in this component.
The <allNestedRefs> element identifies the set of all nested component references that are declared or inherited by the current composite component. Only steps in a composite component can use this targeter.
This element can be used as a targeter for the <install> step.
This targeter can identify any number of components. If it identifies no components, the step is a no-op. If it identifies more than one component, the step is semantically expanded as if a separate occurrence of the step that uses the <nestedRef> targeter exists for each of the identified components. The steps are executed serially rather than in parallel. The ordering of the steps varies based on the step type. If the execution of the step on one of the components causes an error, the step is not executed on the remaining matching components.
When used as a targeter for an <install> step, this targeter matches all of the nested component references that are declared in this component. The component matches are in the order of declaration.
The <toplevelRef> element identifies a top-level component reference that is declared or inherited by the current composite component. Only steps in a composite component can use this targeter.
This element can be used as a targeter for the <install> step.
This targeter is semantically equivalent to the <component> targeter, except that the name, path, and version attributes are predefined based on the referenced component. A top-level component reference can be installed any number of times on any number of hosts.
The <toplevelRef> targeter has the following attributes:
name – A required attribute of type identifier, which is the name of a top-level component reference in this component.
host – An optional attribute that is the host on which the referenced component is to be installed. By default, host is the current host. See the description of the host attribute in Attributes for the <retarget> Step. This attribute can reference simple substitution variables.