Using TestStand Type Palette Files with the TD Translator

The ATMLTDTypes.ini and ATMLTD_IEEE1641_Types.ini TestStand type palette files contain TestStand data type equivalents of simple and strict TD elements and types, which the ATML schemas define. The type palette files also specify the format for passing the data types to LabVIEW and LabWindows/CVI code modules. The ATML TD translator also provides a C-style header file for all types the type palette files define.

When translating the following elements, the translator uses the type palette files to create in the sequence file instances of data types equivalent to the TD types:

  • <Parameter>, <TestResult>, and <SessionDatum> child elements of the <Action> element
  • <ParameterDescription> and <TestResultDescription> child elements of the <TestGroup> element

For each <xs:SimpleType> and <xs:ComplexType> element that exists in a schema that the source TD instance document references, the translator creates a corresponding data type in TestStand. The name of the TestStand data type is the same as the value of the name attribute of the <xs:SimpleType> or <xs:ComplexType> element. The names of the TestStand data types the ATMLTDTypes.ini type palette file contains include an NI_ATML prefix, and the names of the TestStand data types the ATMLTD_IEEE1641_Types.ini type palette file contains include an NI_ATMLSTD prefix.

However, the type palette files do not contain the data type equivalents for the following <xs:ComplexType> elements:

  • <xs:ComplexType> elements that recursively use the type or element
  • <xs:ComplexType> elements that contain <xs:any>, <xs:anyAttribute>, or <xs:choice> child elements

The translator creates in TestStand a container named ATMLAttributes that contains string variables for the XML attributes of <xs:SimpleType> or <xs:ComplexType> elements. The name of each string variable is the same as the name of the XML attribute. The translator translates XML elements and attributes with the name Value as a local variable named NI_ATMLValue in the translated sequence.