The <component> element has the following child elements, which must appear in the order shown. These child elements might have their own child elements, attributes, or both.
<extends> – Declares the base component from which the component is derived
<varList> – Lists the component-scoped variables that are used by the component and its resources
<targetRef> – Declares that the component is “targetable”
<resourceRef> – Specifies the resource managed by the component
<componentRefList> – Lists the components that are referenced by this component
<installList> – Contains one or more named blocks of <install> steps
<uninstallList> – Contains one or more named blocks of <uninstall> steps
<snapshotList> – Contains one or more named <snapshot> blocks
<controlList> – Lists the <control> blocks that are available for the component
<diff> – Lists the directives that are used by the comparison engine to perform comparisons on this component