XML File Format for Imported Parts Filters

The imported xml file to create Parts Filters must conform to the XML schema definition described here.

See Also
Creating Parts Filters from Files

<?xml version='1.0' encoding='UTF-8' ?>
<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema" targetNamespace="urn:ds:engspec:filterimport" xmlns="urn:ds:engspec:filterimport">
  <xs:element name = "EnsFilters" >
    <xs:annotation>
      <xs:documentation>Main node containing all filters to be imported</xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice minOccurs="1" maxOccurs="unbounded">
        <xs:element ref="EnsFilter"/>
      </xs:choice>
    </xs:complexType>
  </xs:element>
  <xs:element name = "EnsFilter">
    <xs:annotation>
      <xs:documentation>Root node for one filter description</xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="Attribute" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="ReturnedPartType" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Unit" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attribute name = "FilterName" type = "xs:string" use="required">
        <xs:annotation>
          <xs:documentation>The name to be given to the filter</xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name = "FilterType" type = "xs:string" use="required">
        <xs:annotation>
          <xs:documentation>The filter type. Use internal names</xs:documentation>
        </xs:annotation>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name = "Attribute">
    <xs:annotation>
      <xs:documentation>Describe one attribute of the filter</xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:attribute name = "Name" type = "xs:string" use="required">
        <xs:annotation>
          <xs:documentation>The PLM Attribute name. Use internal names</xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name = "Value" type = "xs:string" use="required">
        <xs:annotation>
          <xs:documentation>The PLM Attribute value. Only string attributtes are officialy supported</xs:documentation>
        </xs:annotation>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name = "ReturnedPartType">
    <xs:annotation>
      <xs:documentation>One returned part type</xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:attribute name = "Name" type = "xs:string" use="required">
        <xs:annotation>
          <xs:documentation>The name of the returned part type. Use internal names</xs:documentation>
        </xs:annotation>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="Unit">
    <xs:annotation>
      <xs:documentation>Node for one Unit</xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="ReturnedPartType" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="PlmPart" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attribute name = "Name" type = "xs:string" use="required">
        <xs:annotation>
          <xs:documentation>The name to be given to the unit</xs:documentation>
        </xs:annotation>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name = "PlmPart">
    <xs:annotation>
      <xs:documentation>Node for one PLM Part</xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:attribute name = "PartName" type = "xs:string" use="required">
        <xs:annotation>
          <xs:documentation>The name of the part. This is the non-editable name.</xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name = "PartVersion" type = "xs:string">
        <xs:annotation>
          <xs:documentation>The majorrevision attribute value</xs:documentation>
        </xs:annotation>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
</xs:schema>