Sun N1 Service Provisioning System 5.1 XML Schema Reference Guide

Repository Component Targeters

This section describes the elements that specify a particular component that resides in the master server repository as the target of a step, such as install. All targeters cannot be used with all targeted steps. Each targeter specifies the steps with which it can be used.

<component> Repository Component Targeter

<component> specifies 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.

Attributes for the <component> Targeter

The <component> targeter has the following attributes:

<thisComponent> Repository Component Targeter

<thisComponent> specifies that the component that contains the step should be used as the target of the step. Only steps 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.

<superComponent> Repository Component Targeter

<superComponent> specifies that the base component of the component that contains the step is 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.

<nestedRef> Repository Component Targeter

<nestedRef> specifies a nested component reference that is declared or is 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 specified component reference should not have been previously installed by the calling component. Otherwise, an error is issued. If a nested referenced component is to be installed on a different host, use a <retarget> step instead. 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.

<allNestedRefs> Repository Component Targeter

<allNestedRefs> specifies 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 specify more than one component. If it specifies no components, the step is a no-op. If it specifies 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 specified 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.

<toplevelRef> Repository Component Targeter

<toplevelRef> specifies 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 attribute values are predefined based on the referenced component. A top-level component reference can be installed one or more times on one or more hosts.

Attributes for the <toplevelRef> Targeter

The <toplevelRef> targeter has the following attributes: