The <argList> child element of the <componentRef> element specifies a list of values to be used as component variable settings for the referenced component when it is installed. The format of the <argList> is the same as that of the <argList> child element of the <call> step. Each attribute of the <argList> element names a component variable in the referenced component or the declared type, if the reference is ABSTRACT. The value of the <argList> attribute is the override value that should be used for the named component variable when the referenced component is installed.
When a component reference is overridden by a derived component, the <argList> of the base and derived components are effectively merged by first applying the contents of the <argList> of the base component to the referenced component, and then applying the <argList> of the derived component. When processing the <argList> of the base component reference, only variables defined in the declared type of the base component reference are considered.
Component variables not named in the <argList> will use their default value when installed. If no <argList> is specified, then the referenced component will be installed using default values for all its variables. The variables of the referenced component named in the <argList> must be accessible to the referencing component. Furthermore, they must be declared with access mode PUBLIC or PROTECTED, and may not be FINAL.
For top-level referenced components, the <argList> element is only used if the referenced component is installed by the referencing component. The referenced component may have been installed by other means, in which case the <argList> has no bearing.