2.5 AnyNonPackageExecutableType

The AnyNonPackageExecutableType complex type is the type of an Executable element that is contained within another Executable element. That is, it is the type definition for any Executable element except the Executable element that is the root node of the package.

The following is the XSD for the AnyNonPackageExecutableType.

   <xs:complexType name="AnyNonPackageExecutableType">
     <xs:sequence>
       <xs:element name="ForEachEnumerator"
                   type="DTS:ForEachEnumeratorType"
                   minOccurs="0"/>
       <xs:element name="Property"
                   maxOccurs="unbounded">
         <xs:complexType>
           <xs:complexContent>
             <xs:extension base="DTS:PropertyElementBaseType">
               <xs:attribute name="Name"
                   type="DTS:AnyNonPackageExecutablePropertyNameEnum"
                   use="required"/>
             </xs:extension>
           </xs:complexContent>
         </xs:complexType>
       </xs:element>
       <xs:element name="Variable" type="DTS:VariableType"
                   minOccurs="0" maxOccurs="unbounded"/>
       <xs:element name="LoggingOptions" type="DTS:LoggingOptionsType" />
       <xs:element name="PropertyExpression"
                   type="DTS:PropertyExpressionElementType"
                   minOccurs="0" maxOccurs="unbounded"/>
       <xs:element name="Executable" type="DTS:AnyNonPackageExecutableType"
                   minOccurs="0" maxOccurs="unbounded"/>
       <xs:element name="PrecedenceConstraint"
                   type="DTS:PrecedenceConstraintType"
                   minOccurs="0" maxOccurs="unbounded"/>
       <xs:element name="ForEachVariableMapping"
                   type="DTS:ForEachVariableMappingType"
                   minOccurs="0" maxOccurs="unbounded"/>
       <xs:element name="EventHandler" type="DTS:EventHandlerType"
                   minOccurs="0" maxOccurs="unbounded"/>
       <xs:element name="ObjectData" type="DTS:ExecutableObjectDataType"
                   minOccurs="0"/>
     </xs:sequence>
     <xs:attribute name="ExecutableType" use="required" type="xs:string"/>
     <xs:attribute name="ThreadHint" use="optional" type="xs:int"/>
   </xs:complexType>

The following table provides additional information about the elements, types, and constraints in the AnyNonPackageExecutableType complex type.

Element

Additional constraints

Type definition

Description

ForEachEnumerator

This element MUST NOT be used unless the ExecutableType attribute is equal to "STOCK:FOREACHLOOP".

ForEachEnumeratorType

Contains information about the iterations of a For…Each loop.

Property

In some cases, constraints are placed on the Property element's value for specific values of the Name attribute of the Property element. If such constraints exist, they are specified where the meaning of the particular property name is specified. These constraints MUST be followed. If the optional DataType attribute is present, the value of the Property element MUST be of the type that is specified by the DataType attribute.

Inline in the XSD in this section.

See ExecutableTypePackage.

Variable

None.

VariableType

See ExecutableTypePackage.

LoggingOptions

None.

LoggingOptionsType

See ExecutableTypePackage.

PropertyExpression

Additional constraints exist for the PropertyExpression element. For a description of the constraints, see PropertyExpressionElementType.

PropertyExpressionElementType

See ExecutableTypePackage.

Executable

Some values of the ExecutableType attribute allow further Executable elements to be contained, and other values MUST NOT contain further Executable elements. For more information, see ExecutableType Attribute Values for Different Executable Types.

AnyNonPackageExecutableType

See ExecutableTypePackage.

ForEachVariableMapping

This element MUST NOT be used unless the ExecutableType attribute is equal to "STOCK:FOREACHLOOP"

ForEachVariableMappingType

Contains information about the variable mappings for the iterations of a For…Each loop.

PrecedenceConstraint

None.

PrecedenceConstraintType

See ExecutableTypePackage.

EventHandler

None.

EventHandlerType

See ExecutableTypePackage.

ObjectData

Each value of the attribute ExecutableType constrains the choice that is contained in the definition of ExecutableObjectDataType to a specific choice. For more information, see ExecutableType Attribute Values for Different Executable Types.

ExecutableObjectDataType

Contains information specific to the Executable. The nature of the information varies with the value of the ExecutableType attribute. For more information, see Executable ObjectData Types.

The following table provides additional information about the attributes, types, and constraints in the AnyNonPackageExecutableType complex type.

Attribute

Constraints

Description

ExecutableType

Some values of the ExecutableType attribute allow further Executable elements to be contained, and other values MUST NOT contain further Executable elements. For more information, see ExecutableType Attribute Values for Different Executable Types.

See ExecutableTypePackage.

ThreadHint

Not all values of ExecutableType are allowed to have the ThreadHint attribute present. For more information, see ExecutableType Attribute Values for Different Executable Types.

Not applicable.<14>

The following table provides additional information about the attributes and types for the Property element that is declared inline in the complex type declaration. The Property element is an extension of the PropertyElementBaseType type with the addition of the Name attribute, which is specified in the following table.

Attribute

Constraints

Description

Name

None.

Specifies the name of the Property element. Each named property has its own use and interpretation. The explanation for the interpretation of each named property is given with the definition of the type for the Name attribute.