Tekla PowerFab API Response Schema

Updated: 7 Feb 2024

<?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    targetNamespace="http://www.fabsuite.com/xml/fabsuite-xml-response-v0108.xsd"
    xmlns="http://www.fabsuite.com/xml/fabsuite-xml-response-v0108.xsd"
    elementFormDefault="qualified"
    attributeFormDefault="unqualified">
    <xsd:annotation>
        <xsd:documentation>
        
        </xsd:documentation>
    </xsd:annotation>

<!--CUSTOM SIMPLE TYPE DEFINITIONS-->
<!--Unit of Measurement formats-->
    <xsd:simpleType name="fsMetric">
        <xsd:annotation>
            <xsd:documentation>
                Indicates if the value is specified in metric or imperial units.
                
                1 - Metric
                0 - Imperial
                
                Example (Metric): <Shape>W</Shape><Dimensions Metric="1">410 x 53</Dimensions>
                Example (Imperial): <Shape>W</Shape><Dimensions Metric="0">16 x 36</Dimensions>
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:boolean"/>
    </xsd:simpleType>
    <xsd:simpleType name="fsPriceUnits">
        <xsd:annotation>
            <xsd:documentation>
                Indicates the price units.
                
                /LB - per pound
                /CWT - per 100 pounds
                /FT - per foot
                /CFT - per 100 feet
                /SQFT - per square foot
                /SQFT-SA - per square foot of surface area
                
                /KG - per kilogram
                /M - per meter
                /SQM - per square meter
                /SQM-SA - per square meter of surface area
                
                /ITEM - per item
                /100 - per 100 items
                /1000 - per 1000 items
                
                Example (50.75/CWT): <CurrentPrice PriceUnits="/CWT">50.75</CurrentPrice>
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:token">
            <xsd:enumeration value="/LB"/>
            <xsd:enumeration value="/lb"/>
            <xsd:enumeration value="/Lb"/>
            <xsd:enumeration value="/CWT"/>
            <xsd:enumeration value="/cwt"/>
            <xsd:enumeration value="/FT"/>
            <xsd:enumeration value="/ft"/>
            <xsd:enumeration value="/Ft"/>
            <xsd:enumeration value="/CFT"/>
            <xsd:enumeration value="/cft"/>
            <xsd:enumeration value="/SQFT"/>
            <xsd:enumeration value="/sqft"/>
            <xsd:enumeration value="/SqFt"/>
            <xsd:enumeration value="/SQFT-SA"/>
            <xsd:enumeration value="/sqft-sa"/>
            <xsd:enumeration value="/SqFt-SA"/>
            <xsd:enumeration value="/KG"/>
            <xsd:enumeration value="/kg"/>
            <xsd:enumeration value="/Kg"/>
            <xsd:enumeration value="/M"/>
            <xsd:enumeration value="/m"/>
            <xsd:enumeration value="/SQM"/>
            <xsd:enumeration value="/sqm"/>
            <xsd:enumeration value="/SqM"/>
            <xsd:enumeration value="/SQM-SA"/>
            <xsd:enumeration value="/sqm-sa"/>
            <xsd:enumeration value="/SqM-SA"/>
            <xsd:enumeration value="/ITEM"/>
            <xsd:enumeration value="/item"/>
            <xsd:enumeration value="/Item"/>
            <xsd:enumeration value="/100"/>
            <xsd:enumeration value="/1000"/>
        </xsd:restriction>
    </xsd:simpleType>
    <xsd:simpleType name="fsUOM">
        <xsd:annotation>
            <xsd:documentation>
                Indicates the units of the value.
                
                IN - Inches
                MM - Millimeters
                LB - Pounds
                KG - Kilograms
                
                Example (40'-2 1/2): <Length UOM="IN">482.5</Length>
                Example (12m): <Length UOM="MM">12000</Length>
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:token">
            <xsd:enumeration value="in"/>
            <xsd:enumeration value="IN"/>
            <xsd:enumeration value="mm"/>
            <xsd:enumeration value="MM"/>
            <xsd:enumeration value="lb"/>
            <xsd:enumeration value="LB"/>
            <xsd:enumeration value="kg"/>
            <xsd:enumeration value="KG"/>
            <xsd:enumeration value="sqin"/>
            <xsd:enumeration value="SQIN"/>
            <xsd:enumeration value="sqft"/>
            <xsd:enumeration value="SQFT"/>
            <xsd:enumeration value="sqmm"/>
            <xsd:enumeration value="SQMM"/>
            <xsd:enumeration value="sqm"/>
            <xsd:enumeration value="SQM"/>
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:simpleType name="fsHoldSetting">
        <xsd:annotation>
            <xsd:documentation>
                Indicates the action that can be taken when processing on-hold material.
            </xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:token">
            <xsd:enumeration value="Allow" />
            <xsd:enumeration value="Prompt" />
            <xsd:enumeration value="Prevent" />
        </xsd:restriction>
    </xsd:simpleType>
    
    <xsd:complexType name="fsDecimalWithUOM">
        <xsd:annotation>
            <xsd:documentation>An element with a decimal value and a fsUOM attribute, such as a length, width, etc.</xsd:documentation>
        </xsd:annotation>
        <xsd:simpleContent>
            <xsd:extension base="xsd:decimal">
                <xsd:attribute name="UOM" type="fsUOM" use="required"/>
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>
    
    <xsd:complexType name="fsDimensionsWithMetric">
        <xsd:annotation>
            <xsd:documentation>An element with a text value and a fsMetric attribute, such as for dimensions.</xsd:documentation>
        </xsd:annotation>
        <xsd:simpleContent>
            <xsd:extension base="xsd:token">
                <xsd:attribute name="Metric" type="fsMetric" use="required"/>
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>
    
    <xsd:complexType name="fsCurrency">
        <xsd:annotation>
            <xsd:documentation>An element with a decimal value and a Currency attribute.</xsd:documentation>
        </xsd:annotation>
        <xsd:simpleContent>
            <xsd:extension base="xsd:decimal">
                <xsd:attribute name="Currency" type="xsd:token" use="required"/>
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>
    
    <xsd:complexType name="fsCurrencyValue">
        <xsd:annotation>
            <xsd:documentation>An element with a decimal value and a Currency attribute.</xsd:documentation>
        </xsd:annotation>
        <xsd:simpleContent>
            <xsd:extension base="xsd:decimal">
                <xsd:attribute name="CurrencyID" type="xsd:integer" use="required"/>
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>
    
    <xsd:complexType name="fsCurrencyUnit">
        <xsd:annotation>
            <xsd:documentation>An element with a decimal value and Currency and PriceUnits attributes.</xsd:documentation>
        </xsd:annotation>
        <xsd:simpleContent>
            <xsd:extension base="fsCurrency">
                <xsd:attribute name="Units" type="fsPriceUnits" use="required"/>
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>
    
    <xsd:complexType name="fsCurrencyUnitValue">
        <xsd:annotation>
            <xsd:documentation>An element with a decimal value and Currency and PriceUnits attributes.</xsd:documentation>
        </xsd:annotation>
        <xsd:simpleContent>
            <xsd:extension base="fsCurrencyValue">
                <xsd:attribute name="Format" type="xsd:integer" use="required"/>
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>
    
    <xsd:complexType name="fsDimensionValue">
        <xsd:simpleContent>
            <xsd:extension base="integer-or-empty">
                <xsd:attribute name="DimDepth" type="xsd:decimal" use="optional"/>
                <xsd:attribute name="DimWidth" type="xsd:decimal" use="optional"/>
                <xsd:attribute name="DimWeight" type="xsd:decimal" use="optional"/>
                <xsd:attribute name="DimThickness" type="xsd:decimal" use="optional"/>
                <xsd:attribute name="DimGage" type="xsd:decimal" use="optional"/>
                <xsd:attribute name="DimDiameter" type="xsd:decimal" use="optional"/>
                <xsd:attribute name="DimComment" type="xsd:token" use="optional"/>
                <xsd:attribute name="TrueShapeSquareMetersOverride" type="xsd:decimal" use="optional"/>
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>
    
    <xsd:complexType name="fsDimensionValueDisplay">
        <xsd:simpleContent>
            <xsd:extension base="xsd:token">
                <xsd:attribute name="Metric" type="xsd:boolean" use="required"/>
                <xsd:attribute name="SizeID" type="xsd:integer" use="optional"/>
                <xsd:attribute name="DimDepth" type="xsd:decimal" use="optional"/>
                <xsd:attribute name="DimWidth" type="xsd:decimal" use="optional"/>
                <xsd:attribute name="DimWeight" type="xsd:decimal" use="optional"/>
                <xsd:attribute name="DimThickness" type="xsd:decimal" use="optional"/>
                <xsd:attribute name="DimGage" type="xsd:decimal" use="optional"/>
                <xsd:attribute name="DimDiameter" type="xsd:decimal" use="optional"/>
                <xsd:attribute name="DimComment" type="xsd:token" use="optional"/>
                <xsd:attribute name="TrueShapeSquareMetersOverride" type="xsd:decimal" use="optional"/>
                <xsd:attribute name="AlternateDisplay" type="xsd:token" use="optional"/>
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>
                            
    <xsd:simpleType name="fsDropJobReserveOption">
        <xsd:restriction base="xsd:token">
            <xsd:enumeration value="Keep reserved for the TFS job" />
            <xsd:enumeration value="Prompt for the new job reserve" />
            <xsd:enumeration value="Prompt to unreserve" />
            <xsd:enumeration value="Always unreserve" />
        </xsd:restriction>
    </xsd:simpleType>                        
                        
    <xsd:complexType name="fsStringID">
        <xsd:annotation>
            <xsd:documentation>A string element with an optional integer ID.</xsd:documentation>
        </xsd:annotation>
        <xsd:simpleContent>
            <xsd:extension base="xsd:token">
                <xsd:attribute name="ID" type="xsd:integer" use="optional"/>
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>
    <xsd:complexType name="fsStringIDHold">
        <xsd:annotation>
            <xsd:documentation>A string element with an optional integer ID and Hold flag.</xsd:documentation>
        </xsd:annotation>
        <xsd:simpleContent>
            <xsd:extension base="xsd:token">
                <xsd:attribute name="ID" type="xsd:integer" use="optional"/>
                <xsd:attribute name="Hold" type="xsd:boolean" use="optional" />
            </xsd:extension>
        </xsd:simpleContent>
    </xsd:complexType>

    <xsd:simpleType name="emptyType">
        <xsd:restriction base="xsd:string">
            <xsd:length value="0"/>
        </xsd:restriction>
    </xsd:simpleType>
    <xsd:simpleType name="decimal-or-empty">
        <xsd:union memberTypes="xsd:decimal emptyType"/>
    </xsd:simpleType>
    <xsd:simpleType name="date-or-empty">
        <xsd:union memberTypes="xsd:date emptyType"/>
    </xsd:simpleType>
    <xsd:simpleType name="integer-or-empty">
        <xsd:union memberTypes="xsd:integer emptyType"/>
    </xsd:simpleType>
    
    
    
    
<!-- Common elements -->

<xsd:complexType name="fsresFileData">
    <xsd:annotation>
        <xsd:documentation>A file reference.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="FileName" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The file name.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="FileExtension" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The extension of the file name (ex: .pdf).</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ContentType" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The type of file (ex: application/pdf).</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="FileSize" type="xsd:integer" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The size of the file in bytes.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="BinaryDataIndex" type="xsd:integer" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The index in the response message that has the contents of the file.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ID" type="xsd:integer" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The ID of the drawing. Can be Drawing, Assembly Drawing or Part Drawing ID.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="SecondaryID" type="xsd:integer" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The Revision ID of the drawing. Can be Drawing Revision, Assembly Drawing Revision or Part Drawing Revision ID.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFilters">
    <xsd:annotation>
        <xsd:documentation>
            A set of filters specifying the data that should be processed by the command.
            
            If more than one Filter element specify the same FilterType then an 'or' condition is applied.
            
            An 'and' condition is applied to different FilterType fields.
            
            Ex.
                <Filters>
                    <Filter><FilterType>DrawingNumber</FilterType><FilterValue>100</FilterValue></Filter>
                    <Filter><FilterType>DrawingNumber</FilterType><FilterValue>101</FilterValue></Filter>
                    <Filter><FilterType>Sequence</FilterType><FilterValue>5</FilterValue></Filter>
                </Filters>
                
                Processed as DrawingNumber IN (100, 101) AND Sequence=5.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Filter" type="fsresFilter" minOccurs="1" maxOccurs="unbounded" />
        <xsd:element name="Unused" type="xsd:boolean" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    This element is not intended to actually be used.  It's sole purpose is to work around a
                    problem with MS Visual Studio's xsd tool that generates c# classes from an xsd schema.
                    With this tool if an element consists solely of a single element that may occur 1-many times
                    then that parent element is ignored and the classes are generated with a multi-dimensional array
                    of the inner element.
                    
                    In this case, where fsresFilters is used it would appear in the classes instead as being
                    a multi-dimensional array of fsresFilter.  Adding a second element, titled Unused here, avoids
                    this issue.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFilter">
    <xsd:annotation>
        <xsd:documentation>A filter type and value.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="FilterType" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The field that the filter applies to.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="FilterValue" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The value that the field should be restricted to.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:token">
                        <xsd:attribute name="UOM" type="fsUOM" use="optional"/>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
        <xsd:element name="FilterValueMax" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    If specified then this becomes a range filter with FilterValue being the bottom value of the range
                    and FilterValueMax being the upper value.
                </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:token">
                        <xsd:attribute name="UOM" type="fsUOM" use="optional"/>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
        <xsd:element name="FilterDisplay" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The filter display value.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="MatchType" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    The type of match that should be used to apply the filter.
                    
                    The default match type if this element is not specified is EXACT.
                    
                    Not all match types are valid for every filter.  The PREFIX, SUFFIX, and ANY
                    match types are only valid for the filter types:
                        MainMark
                        DrawingNumber
                        Sequence
                        LotNumber
                        Category
                        SubCategory
                </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="EXACT">
                        <xsd:annotation>
                            <xsd:documentation>
                                Apply the filter to the full value in the field.
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:enumeration>
                    <xsd:enumeration value="PREFIX">
                        <xsd:annotation>
                            <xsd:documentation>
                                Apply the filter to find records where the filter value matches the prefix of the field.
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:enumeration>
                    <xsd:enumeration value="SUFFIX">
                        <xsd:annotation>
                            <xsd:documentation>
                                Apply the filter to find records where the filter value matches the suffix of the field.
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:enumeration>
                    <xsd:enumeration value="ANY">
                        <xsd:annotation>
                            <xsd:documentation>
                                Apply the filter to find records where the filter value is contained anywhere in the field.
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:enumeration>
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>
                    The set of nested filter conditions.  If specified then it will be considered to be an 'AND'
                    condition on top of the current filter.  If multiple nested filters are specified then each of
                    the Filters elements are considered to be an 'OR' condition with respect to each other.
                    
                    For example, this set of filters:
<![CDATA[
                        <Filters>
                            <Filter>
                                <FilterType>Shape</FilterType>
                                <FilterValue>W</FilterValue>
                                <Filters>
                                    <Filter>
                                        <FilterType>JobNumber</FilterType>
                                        <FilterValue>ABC</FilterValue>
                                    </Filter>
                                    <Filter>
                                        <FilterType>JobNumber</FilterType>
                                        <FilterValue>DEF</FilterValue>
                                    </Filter>
                                    <Filter>
                                        <FilterType>OnOrder</FilterType>
                                        <FilterValue>0</FilterValue>
                                    </Filter>
                                </Filters>
                                <Filters>
                                    <Filter>
                                        <FilterType>PONumber</FilterType>
                                        <FilterValue>123456</FilterValue>
                                    </Filter>
                                </Filters>
                            </Filter>
                        </Filters>
]]>
                        
                    Could be considered to be equivalent to the sql expression:
                        Shape='W' AND 
                            (
                                (JobNumber IN ('ABC', 'DEF') AND OnOrder=0)
                                OR
                                PONumber='123456'
                            )
                            
                    Nested Filters elements are accepted but is currently only processed by the GetInventory command.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInputDisplayUnits">
    <xsd:annotation>
        <xsd:documentation>Specify the unit-of-measure values to use for input and display purposes.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="SizeUOM" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Dimension display and input.
                </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Metric" />
                    <xsd:enumeration value="Imperial" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="LengthUOM" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Length display and input.
                </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Metric" />
                    <xsd:enumeration value="Imperial" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="LengthTypeIDMetric" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Length format when in metric mode:
                    
                        1 - Meters
                        2 - Centimeters
                        3 - Millimeters
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="LengthTypeIDImperial" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Length format when in imperial mode:
                    
                        1 - Feet, Inches, 16ths
                        2 - Feet, Inches
                        3 - Inches, 16ths
                        4 - Decimal Feet
                        5 - Decimal Inches (2 Places)
                        6 - Decimal Inches
                        7 - Feet, Inches, 16ths (Free-Form)
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="WeightUOM" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Weight display and input.
                </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Metric" />
                    <xsd:enumeration value="Imperial" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="PriceUOM" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Unit Price display and input.
                </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Metric" />
                    <xsd:enumeration value="Imperial" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDocument">
    <xsd:annotation>
        <xsd:documentation>
            A document attached to an inspection test record, RFI, change order, etc.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="DocumentID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Filename" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FileSource" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DocumentText" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DocumentReferenceText" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProject">
    <xsd:sequence>
        <xsd:element name="ProjectID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="JobDescription" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobLocation" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CustomerPONumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GroupName" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GroupName2" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DrawingLog" type="fsresDrawingLog" minOccurs="1" maxOccurs="unbounded" />
        <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingLog">
    <xsd:sequence>
        <xsd:element name="DrawingLogID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ProjectID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingType" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingLogName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PDCLink" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SubdirectoryPath" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingLogMapping" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawing">
    <xsd:sequence>
        <xsd:element name="DrawingID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ProjectID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingLogID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingNumberDisplay" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DetailedBy" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DateDetailed" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DetailingHours" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DateReceived" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CheckedBy" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DateChecked" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReleaseNumber" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Category" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PackageNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShopIssueDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReSubmit" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DrawingRevision" type="fsresDrawingRevision" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DrawingTransmittal" type="fsresDrawingTransmittal" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DrawingProduction" type="fsresDrawingProduction" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DrawingFile" type="fsresDrawingFile" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingRevision">
    <xsd:sequence>
        <xsd:element name="DrawingRevisionID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Revision" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="RevisedBy" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DateRevised" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DateReceived" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CheckedBy" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DateChecked" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReleaseNumber" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Latest" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingTransmittal">
    <xsd:sequence>
        <xsd:element name="TransmittalID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingRevisionID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DateReceived" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReSubmit" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingProduction">
    <xsd:sequence>
        <xsd:element name="TotalQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AssemblyQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Weight" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ManHours" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Category" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="SubCategory" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="PayCategory" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Sequence" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingFile">
    <xsd:sequence>
        <xsd:element name="DrawingRevisionID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FileName" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresTransmittal">
    <xsd:sequence>
        <xsd:element name="TransmittalID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ProjectID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TransmittalNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TransmittalDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FirmID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FirmAddressID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FirmContactID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Attn" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Title" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SendingEnclosed" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ToBeReturned" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TransmittalItem" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="TransmittalPurpose" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="NumberOfPrints" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PrintsToReturn" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumberOfSets" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SentBy" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CopyTo" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Remarks" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProjectTransmittalStandardTextID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReturnDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SentViaID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumberOfDrawings" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumberOfOutstandingDrawings" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LastDateReceived" type="xsd:date" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresApprovalStatus">
    <xsd:sequence>
        <xsd:element name="ApprovalStatusID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ApprovalStatus" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Purpose" minOccurs="0" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Approved" />
                    <xsd:enumeration value="Hold" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFirm">
    <xsd:sequence>
        <xsd:element name="FirmID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FirmType" minOccurs="1" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Architect" />
                    <xsd:enumeration value="Associate" />
                    <xsd:enumeration value="Client" />
                    <xsd:enumeration value="Coating" />
                    <xsd:enumeration value="Contractor" />
                    <xsd:enumeration value="Customer" />
                    <xsd:enumeration value="Detailer" />
                    <xsd:enumeration value="Engineer" />
                    <xsd:enumeration value="Erector" />
                    <xsd:enumeration value="Fabricator" />
                    <xsd:enumeration value="My Company" />
                    <xsd:enumeration value="Owner" />
                    <xsd:enumeration value="Subcontractor" />
                    <xsd:enumeration value="Supplier" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="Name" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Code" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ShipToAddress" type="fsresFirmAddress" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BillToAddress" type="fsresFirmAddress" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MillAddress" type="fsresFirmAddress" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFirmAddress">
    <xsd:sequence>
        <xsd:element name="FirmAddressID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Attn" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Address1" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Address2" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="City" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="State" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Zip" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Country" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Phone" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Fax" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Email" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IsShipTo" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IsBillTo" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IsMill" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFirmAddressList">
    <xsd:sequence>
        <xsd:element name="Firm" type="fsresFirm" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FirmAddress" type="fsresFirmAddress" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFirmContact">
    <xsd:sequence>
        <xsd:element name="FirmContactID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FirmID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ExternalID" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Name" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Phone" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MobilePhone" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Fax" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Pager" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Email" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Inspector" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InspectorID" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Active" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresSentVia">
    <xsd:sequence>
        <xsd:element name="SentViaID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="IsDefault" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProjectTransmittalStandardText">
    <xsd:sequence>
        <xsd:element name="ProjectTransmittalStandardTextID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="StandardText" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFilterSelections_GetOptions">
    <xsd:sequence>
        <xsd:element name="Offset" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Limit" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReturnAllIncluded" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFilterSetSelections">
    <xsd:sequence>
        <xsd:element name="Filter" type="fsresFilterSetSelections_Filter" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFilterSetSelections_Filter">
    <xsd:sequence>
        <xsd:element name="Name" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DisplayName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TextSearchValue" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MinValue" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MaxValue" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FilterItems" type="fsresFilterSetSelections_FilterItems" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFilterSetSelections_FilterItems">
    <xsd:sequence>
        <xsd:element name="TotalCount" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FilterItem" type="fsresFilterSetSelections_FilterItem" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFilterSetSelections_FilterItem">
    <xsd:simpleContent>
        <xsd:extension base="xsd:token">
            <xsd:attribute name="Field1" type="xsd:token" use="optional" />
            <xsd:attribute name="Field1_Base64" type="xsd:token" use="optional" />
            <xsd:attribute name="Field2" type="xsd:token" use="optional" />
            <xsd:attribute name="Field2_Base64" type="xsd:token" use="optional" />
            <xsd:attribute name="Field3" type="xsd:token" use="optional" />
            <xsd:attribute name="Field3_Base64" type="xsd:token" use="optional" />
            <xsd:attribute name="Field4" type="xsd:token" use="optional" />
            <xsd:attribute name="Field4_Base64" type="xsd:token" use="optional" />
            <xsd:attribute name="Field5" type="xsd:token" use="optional" />
            <xsd:attribute name="Field5_Base64" type="xsd:token" use="optional" />
            <xsd:attribute name="Included" type="xsd:boolean" use="optional" />
        </xsd:extension>
    </xsd:simpleContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingInputOptions">
    <xsd:sequence>
        <xsd:element name="ApprovalStatus" type="fsresApprovalStatus" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Category" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="CheckedBy" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DetailedBy" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="PackageNumber" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlJob">
    <xsd:sequence>
        <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="JobDescription" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobLocation" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SoldToName" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SoldToAttn" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SoldToAddress1" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SoldToAddress2" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SoldToCity" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SoldToState" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SoldToZip" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SoldToCountry" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SoldToPhone" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SoldToFax" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShipToName" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShipToAttn" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShipToAddress1" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShipToAddress2" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShipToCity" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShipToState" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShipToZip" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShipToCountry" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShipToPhone" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShipToFax" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Comment1" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Comment2" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingComment" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GroupName" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GroupName2" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TFSDropOption" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoad">
    <xsd:sequence>
        <xsd:element name="ProductionControlLoadID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LoadNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TrailerNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Carrier" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Capacity" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LoadCategory1" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LoadCategory2" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LoadCategory3" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippedFrom" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingDestinationGroupID" type="integer-or-empty" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ShippedFromFirmID" type="integer-or-empty" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ShippedFromFirmAddressID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippedToFirmID" type="integer-or-empty" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ShippedToFirmAddressID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ToBeReturned" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SkipJobsiteShipping" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Shipped" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PlannedShipDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippedDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DateReceived" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DateReady" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TopText" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="QuantityAssigned" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="AssignedLength" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AssignedSquareMeters" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AssignedWeight" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AssignedGrossWeight" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AssignedSurfaceArea" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="QuantityLoaded" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LoadedLength" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LoadedSquareMeters" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LoadedWeight" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LoadedGrossWeight" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LoadedSurfaceArea" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="QuantityReturned" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReturnedLength" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReturnedSquareMeters" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReturnedWeight" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReturnedGrossWeight" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReturnedSurfaceArea" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Material" type="fsresProductionControlLoadMaterial" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Additional" type="fsresProductionControlLoadAdditional" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadMaterial">
    <xsd:sequence>
        <xsd:element name="ProductionControlItemTruckID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ProductionControlItemID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingNumberDisplay" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="MainMarkDisplay" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PieceMarkDisplay" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="MainPiece" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SequenceDisplay" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LotNumberDisplay" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DrawingID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AssemblyDrawingID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PartDrawingID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingWeightEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingGrossWeightEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingSurfaceAreaEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingSquareMetersEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatus" type="fsStringIDHold" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="QuantityLoaded" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbersLoaded" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Loaded" type="fsresProductionControlLoadMaterialLoadReturn" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="QuantityReturned" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbersReturned" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Returned" type="fsresProductionControlLoadMaterialLoadReturn" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="QuantityAtLocation" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbersAtLocation" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Shape" type="fsStringID" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Grade" type="fsStringID" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Dimensions" type="fsDimensionValueDisplay" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Length" type="decimal-or-empty" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Finish" type="fsStringID" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReferenceNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Remark" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Route" type="fsStringID" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Category" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SubCategory" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PayCategory" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingRoute" type="fsStringID" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AccessoryPieceTracking" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AccessoryLoadTracking" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceTracking" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProductionCode" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadMaterialLoadReturn">
    <xsd:sequence>
        <xsd:element name="ID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Date" type="xsd:date" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadAdditional">
    <xsd:sequence>
        <xsd:element name="ProductionControlTrucksAdditionalID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Notes" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="WeightEach" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="IsInventory" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Shape" type="fsStringID" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Grade" type="fsStringID" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Dimensions" type="fsDimensionValueDisplay" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Length" type="decimal-or-empty" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadFieldSettings">
    <xsd:sequence>
        <xsd:element name="TrailerNumber" type="fsresProductionControlLoadField" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Carrier" type="fsresProductionControlLoadField" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LoadCategory1" type="fsresProductionControlLoadField" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LoadCategory2" type="fsresProductionControlLoadField" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LoadCategory3" type="fsresProductionControlLoadField" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LoadShippedFrom" type="fsresProductionControlLoadField" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DateReceived" type="fsresProductionControlLoadField" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadField">
    <xsd:sequence>
        <xsd:element name="Show" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Required" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="RestrictToList" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Title" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Value" type="fsresProductionControlLoadFieldValue" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadFieldValue">
    <xsd:simpleContent>
        <xsd:extension base="xsd:token">
            <xsd:attribute name="SecondaryValue" type="xsd:decimal" use="optional" />
        </xsd:extension>
    </xsd:simpleContent>
</xsd:complexType>

<xsd:complexType name="fsresShippingDestinationGroup">
    <xsd:sequence>
        <xsd:element name="ShippingDestinationGroupID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DestinationGroup" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlShippingTopText">
    <xsd:sequence>
        <xsd:element name="ProductionControlShippingTopTextID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TopText" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInventoryLocationRestriction">
    <xsd:sequence>
        <xsd:element name="InventoryLocationRestrictionID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="AnyLocation" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Location" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="AnySecondaryLocation" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadRemaining">
    <xsd:sequence>
        <xsd:element name="ProductionControlItemID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingNumberDisplay" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="MainMarkDisplay" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PieceMarkDisplay" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="MainPiece" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SequenceID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SequenceDisplay" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LotNumberDisplay" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DrawingID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AssemblyDrawingID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PartDrawingID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingLengthEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingWeightEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingGrossWeightEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingSurfaceAreaEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingSquareMetersEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ManHoursEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatus" type="fsStringIDHold" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TotalQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PreviousDestinationQuantityShipped" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="QuantityAtShippedFromAddress" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="QuantityAssigned" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="QuantityLoaded" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="QuantityShipped" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="QuantityReturned" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="QuantityRemaining" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="QuantityWithInspectionTestFailure" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbersPreviousDestinationShipped" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbersAtShippedFromAddress" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbersAssigned" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbersLoaded" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbersShipped" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbersReturned" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbersRemaining" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbersWithInspectionTestFailure" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Shape" type="fsStringID" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Grade" type="fsStringID" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Dimensions" type="fsDimensionValueDisplay" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Length" type="decimal-or-empty" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Finish" type="fsStringID" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReferenceNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Remark" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Route" type="fsStringID" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Category" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SubCategory" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PayCategory" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingRoute" type="fsStringID" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AccessoryPieceTracking" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AccessoryLoadTracking" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceTracking" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProductionCode" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

    
<!-- Base command element -->
<xsd:complexType name="fsresCommand">
    <xsd:annotation>
        <xsd:documentation>

        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ErrorMessage" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ErrorCode" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Successful" type="xsd:boolean" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="CommandGUID" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>
    
    

<!-- Root Element - FabSuiteXMLRequest -->
<xsd:element name="FabSuiteXMLResponse" type="fsresFabSuiteXMLResponse">
    <xsd:annotation>
        <xsd:documentation>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

<xsd:complexType name="fsresFabSuiteXMLResponse">
    <xsd:choice maxOccurs="unbounded">
        <xsd:element name="Lang" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Language code (en, en_UK, es, etc) for the messages used in the response.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="XMLError" type="xsd:token" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>
                    An error in the XML formatting.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="XMLWarning" type="xsd:token" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>
                    A warning message caused by unrecognized XML elements or a command response.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Close" type="fsresClose" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Closes the connection to the FabSuite database.  Cannot be called through a remote connection.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="CloseRemote" type="fsresCloseRemote" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Closes a remote connection.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="CNCData" type="fsresCNCData" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>
                    Retrieves the CNC data for the specified parts.
                    
                    An XMLWarning element will be included in the response if no CNC file has been loaded for a requested piece mark.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Connect" type="fsresConnect" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Establishes a connection to the FabSuite database.  Cannot be called through a remote connection</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ConnectRemote" type="fsresConnectRemote" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Establishes a remote connection.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="CostCode_Get" type="fsresCostCode_Get" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Gets the cost codes.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="CostCode_Upsert" type="fsresCostCode_Upsert" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Insert or update a cost code.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="CostCode_Delete" type="fsresCostCode_Delete" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Deletes one or more cost codes.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>

        <xsd:element name="CreateInventoryLocationSweep" type="fsresCreateInventoryLocationSweep" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Creates a location sweep for the given location.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    
        <xsd:element name="DeleteInspectionTestRecord" type="fsresDeleteInspectionTestRecord" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Deletes the given inspection test record.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Project_Get" type="fsresProjectGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DrawingLog_Get" type="fsresDrawingLogGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DrawingLog_Insert" type="fsresDrawingLogInsert" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DrawingLog_Update" type="fsresDrawingLogUpdate" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DrawingLog_Delete" type="fsresDrawingLogDelete" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Drawing_Get" type="fsresDrawingGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Drawing_Insert" type="fsresDrawingInsert" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Drawing_Update" type="fsresDrawingUpdate" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Drawing_Delete" type="fsresDrawingDelete" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DrawingFile_Get" type="fsresDrawingFileGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DrawingInputOptions_Get" type="fsresDrawingInputOptionsGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DrawingRevision_Get" type="fsresDrawingRevisionGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DrawingRevision_Insert" type="fsresDrawingRevisionInsert" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DrawingRevision_Update" type="fsresDrawingRevisionUpdate" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DrawingRevision_Delete" type="fsresDrawingRevisionDelete" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ExportJob" type="fsresExportJob" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Exports a Production Control job to a KISS file.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ExportJobStatus" type="fsresExportJobStatus" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Exports a Production Control job including status information.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ExportProjectSchedule" type="fsresExportProjectSchedule" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Exports a project schedule.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ExtensionCommand" type="fsresExtensionCommand" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Execute a Tekla PowerFab extension.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="FilterSetDetails_Get" type="fsresFilterSetDetailsGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="FilterSelections_PDC_Get" type="fsresFilterSelectionsPDCGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="FilterSelections_PRJ_Get" type="fsresFilterSelectionsPRJGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="FirmAddress_Get" type="fsresFirmAddressGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="GetAssemblies" type="fsresGetAssemblies" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the list of assemblies in a job.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetBillOfMaterials" type="fsresGetBillOfMaterials" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the bill of materials.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetCategories" type="fsresGetCategories" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the list of categories in a job.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetChangeOrderDetails" type="fsresGetChangeOrderDetails" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the list of change orders and their details in a job or by ChangeOrderNumber.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>        
        <xsd:element name="GetCountries" type="fsresGetCountries" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the list of countries in the database.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetCurrencies" type="fsresGetCurrencies" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the list of currencies in the database.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetCutList" type="fsresGetCutList" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the details of a cut list.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetDocument" type="fsresGetDocument" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves a document from the document index.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetDrawings" type="fsresGetDrawings" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the list of drawings in a job.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetFilterSelections" type="fsresGetFilterSelections" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves Selections from selection filter.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetFilterSetDetails" type="fsresGetFilterSetDetails" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves Filter fields and types.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetInspectionTestRecords" type="fsresGetInspectionTestRecords" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the details of an inspection test record and it's test definition.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetInspectionTestRecordsCondensed" type="fsresGetInspectionTestRecordsCondensed" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the condensed details of a set of inspection test records.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetInspectionTestRecordSummary" type="fsresGetInspectionTestRecordSummary" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the summary of a set of inspection test records.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetInspectionTests" type="fsresGetInspectionTests" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves a list of inspection tests and their definitions.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetInspectionTestSubjects" type="fsresGetInspectionTestSubjects" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the available subjects for the given inspection test.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetInspectionTestTypes" type="fsresGetInspectionTestTypes" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the available inspection test types and categories.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetInventory" type="fsresGetInventory" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves all of the records from the current inventory and/or inventory history.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetInventoryLocations" type="fsresGetInventoryLocations" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the list of locations and secondary locations in Inventory.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetInventoryLocationSweeps" type="fsresGetInventoryLocationSweeps" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the details of the given location sweep serial number.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetInventorySummary" type="fsresGetInventorySummary" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves summary information from inventory.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetInventoryTransactions" type="fsresGetInventoryTransactions" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the details of inventory transactions that have occured.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetLoads" type="fsresGetLoads" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the completed/remaining status and details by destination and load #.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetLots" type="fsresGetLots" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the list of lots in a job.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetModelObjectIDs" type="fsresGetModelObjectIDs" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the model object IDs for assemblies and parts in a job.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetNestData" type="fsresGetNestData" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the data file for the given nest.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetNestImage" type="fsresGetNestImage" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the image for the given nest.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetNestStatus" type="fsresGetNestStatus" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves information on inventory and requisition items for a nest.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetPricingInformation" type="fsresGetPricingInformation" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the current pricing information..</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetProductionControlJobInformation" type="fsresGetProductionControlJobInformation" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the full information of Production Control jobs.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetProductionControlJobInformationTransactions" type="fsresGetProductionControlJobInformationTransactions" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the changes that have been made to Production Control job information.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetProductionControlJobs" type="fsresGetProductionControlJobs" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves a concise list of Production Control jobs.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetProductionShippingStatus" type="fsresGetProductionShippingStatus" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the production status for a job.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetProjectSchedule" type="fsresGetProjectSchedule" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the breakdown elements, tasks, and task links for a baseline plan - optionally at a snapshot.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetProjectScheduleBaselinePlans" type="fsresGetProjectScheduleBaselinePlans" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the baseline plans for a project.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetProjectScheduleSnapshots" type="fsresGetProjectScheduleSnapshots" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the snapshots for a baseline plan.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetProjectStatus" type="fsresGetProjectStatus" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>
                    Retrieves summary information about the job including:
                        Assemblies
                        Drawings
                        Sequences
                        Lots
                        RFIs
                        Change Orders
                        Transmittals
                        Cut Lists
                        Material Status
                        Production Status
                        Shipping Status
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetPurchaseOrderInformation" type="fsresGetPurchaseOrderInformation" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the full information of Purchase Orders.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetPurchaseOrderInformationTransactions" type="fsresGetPurchaseOrderInformationTransactions" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the changes that have been made to Purchase Order information.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetReportTypes" type="fsresGetReportTypes" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the list of report types and reports for the given report group.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetRFIDetails" type="fsresGetRFIDetails" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the details of one or more RFIs.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetRouteDetails" type="fsresGetRouteDetails" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the details of the given route.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetSequences" type="fsresGetSequences" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the list of sequences in a job.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetStations" type="fsresGetStations" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the completed/remaining status and details by station.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetSubCategories" type="fsresGetSubCategories" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the subcategories in a job.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetTimeTrackingSubjects" type="fsresGetTimeTrackingSubjects" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the available time tracking selections for a job.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetTransmittalDetails" type="fsresGetTransmittalDetails" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the details of one or more transmittals.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetTFSDetails" type="fsresGetTFSDetails" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the details of the PDC material that has been taken from stock including tracibility information.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>        
        <xsd:element name="HoldSettings_Get" type="fsresHoldSettings_Get" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the hold settings set by the Tekla PowerFab user.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>                
        <xsd:element name="InspectionDocumentAdd" type="fsresInspectionDocumentAdd" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Adds a document to the document index and associates it with the given inspection record.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="IntermediateCompanyCodes" type="fsresIntermediateCompanyCodes" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the valid company codes for intermediate shipping that the specified job contains.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="InventoryAdd" type="fsresInventoryAdd" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Adds a new inventory record based off the information from another.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="InventoryAuditSave" type="fsresInventoryAuditSave" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Associates a barcode serial # with an audit serial # and saves the barcode SN in FabSuite's inventory.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="InventoryAuditScan" type="fsresInventoryAuditScan" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the details of an audit serial #.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="InventoryLocationRestriction_Get" type="fsresInventoryLocationRestrictionGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="InventoryLocationSweepComplete" type="fsresInventoryLocationSweepComplete" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Completes the given location sweep.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="InventoryLocationSweepScan" type="fsresInventoryLocationSweepScan" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Scans an inventory serial # as being in the given sweep location.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="InventoryMove" type="fsresInventoryMove" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Changes the location of a piece of inventory material.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="InventoryRemnant_Upsert" type="fsresInventoryRemnant_Upsert" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Insert or update an external remnant in Tekla PowerFab inventory.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Load" type="fsresLoad" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Loads or Un-Loads a production assembly/part from a truck.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="MakeReport" type="fsresMakeReport" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Renders, exports, and retrieves the given report.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="MaxTruck" type="fsresMaxTruck" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the largest truck/load # for a job.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="NestSolution_Get" type="fsresNestSolutionGet" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves a splice or split</xsd:documentation>
            </xsd:annotation>
        </xsd:element>        
        <xsd:element name="PickList_Get" type="fsresPickListGet" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves stock for a cut list</xsd:documentation>
            </xsd:annotation>
        </xsd:element>        
        <xsd:element name="Ping" type="fsresPing" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Pings the connection.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="PrepareReportData" type="fsresPrepareReportData" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Processes report data in preparation for a subsequent MakeReport call to render the report.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ProductionControlCutList_ExportDSTVPlus" type="fsresProductionControlCutListExportDSTVPlus" minOccurs="0" maxOccurs="unbounded" >
        <xsd:annotation>
                <xsd:documentation>Exports DSTV Plus zip file for a cut list or cut list items</xsd:documentation>
            </xsd:annotation>            
        </xsd:element>
        <xsd:element name="ProductionControlCutListItem_Swap_GetAvailable" type="fsresProductionControlCutListItemSwapGetAvailable" minOccurs="0" maxOccurs="unbounded" >
        <xsd:annotation>
                <xsd:documentation>Gets a list of items that can be swapped with the inventory item associated with cut list item passed in</xsd:documentation>
            </xsd:annotation>            
        </xsd:element>        
        <xsd:element name="ProductionControlCutListItem_Swap" type="fsresProductionControlCutListItemSwap" minOccurs="0" maxOccurs="unbounded" >
        <xsd:annotation>
                <xsd:documentation>Perform a swap of an inventory item associated with a cut list item</xsd:documentation>
            </xsd:annotation>            
        </xsd:element>    
        <xsd:element name="ProductionControlJob_Get" type="fsresProductionControlJobGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoad_Get" type="fsresProductionControlLoadGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoad_Delete" type="fsresProductionControlLoadDelete" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoad_Insert" type="fsresProductionControlLoadInsert" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoad_Update" type="fsresProductionControlLoadUpdate" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoad_Ship" type="fsresProductionControlLoadShip" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoad_Unship" type="fsresProductionControlLoadUnship" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoad_IsDuplicateLoadNumber" type="fsresProductionControlLoadIsDuplicateLoadNumber" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoad_InputOptions_Get" type="fsresProductionControlLoadInputOptionsGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoadAdditional_Insert" type="fsresProductionControlLoadAdditionalInsert" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoadAdditional_Update" type="fsresProductionControlLoadAdditionalUpdate" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoadAdditional_Delete" type="fsresProductionControlLoadAdditionalDelete" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoadRemaining_Get" type="fsresProductionControlLoadRemainingGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoadMaterial_Add" type="fsresProductionControlLoadMaterialAdd" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoadMaterial_Remove" type="fsresProductionControlLoadMaterialRemove" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoadMaterial_Load" type="fsresProductionControlLoadMaterialLoad" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoadMaterial_Unload" type="fsresProductionControlLoadMaterialUnload" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoadMaterial_Return" type="fsresProductionControlLoadMaterialReturn" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoadMaterial_Unreturn" type="fsresProductionControlLoadMaterialUnreturn" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionShippingProductivity_Get" type="fsresProductionShippingProductivityGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Receive" type="fsresReceive" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Receives material based on either the Barcode Checklist receiving report in FabSuite or the material details.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ReceiveASN" type="fsresReceiveASN" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Receives material based on a serial number from an ASN file that has been loaded into FabSuite.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ReceiveChecklistScan" type="fsresReceiveChecklistScan" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the details of a checklist serial #.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Return" type="fsresReturn" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Returns or Un-Returns material from an intermediate shipping location (galvanizer, subcontractor, etc).</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="SaveCNCFile" type="fsresSaveCNCFile" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Saves a cnc file to the FabSuite database.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="SaveInspectionTestRecord" type="fsresSaveInspectionTestRecord" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Saves an inspection test record.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="SaveNest" type="fsresSaveNest" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Saves an external Nest.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="SaveTimeTrackingRecord" type="fsresSaveTimeTrackingRecord" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Saves the result of a nest performed in External Software to FabSuite.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="SetAssemblyAssociation" type="fsresSetAssemblyAssociation" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Sets the association between one or more instances of an accessory part with an instance of the assembly.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="SetCutListItemNestID" type="fsresSetCutListItemNestID" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Saves an external Nest in to a FabSuite Cut List.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="SetInstanceLocation" type="fsresSetInstanceLocation" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Sets the location of a part instance.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Ship" type="fsresShip" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Ships or Un-Ships a load.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ShopFloorSave" type="fsresShopFloorSave" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Adds or Deletes the record of an assembly/part having completed a tracking station.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="SplicePackage_TFS" type="fsresSplicePackageTFS" minOccurs="0" maxOccurs="unbounded" >
            <xsd:annotation>
                <xsd:documentation>Processes a Take From Stock (Cut) for a splice package.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="SplitPackage_TFS" type="fsresSplitPackageTFS" minOccurs="0" maxOccurs="unbounded" >
            <xsd:annotation>
                <xsd:documentation>Processes a Take From Stock (Cut) for a split package.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="TFSCut" type="fsresTFSCut" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Processes a Take From Stock (Cut).</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="TFSManual" type="fsresTFSManual" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Processes a manual Take From Stock on a piece of inventory stock.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Transmittal_Get" type="fsresTransmittalGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="UserPartial_Get" type="fsresUserPartialGet" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ValCutListItem" type="fsresValCutListItem" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Validates that a cutting detail and inventory stock is valid.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ValInventory" type="fsresValInventory" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the details of an inventory serial #.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ValJob" type="fsresValJob" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Validates that the specified production job exists.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ValStation" type="fsresValStation" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Validates that the specified tracking station exists.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ValTruck" type="fsresValTruck" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Validates that a truck/load exists, optionally adds it if it does not exist.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ValUser" type="fsresValUser" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Validates that a user exists.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Version" type="fsresVersion" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>Retrieves the version number of the API.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:choice>
</xsd:complexType>

<xsd:complexType name="fsresClose">
    <xsd:annotation>
        <xsd:documentation>Closes the connection to the database.  Cannot be called through a remote connection.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresCloseRemote">
    <xsd:annotation><xsd:documentation>Closes a remote connection.</xsd:documentation></xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresCNCData">
    <xsd:annotation>
        <xsd:documentation>
            Retrieves the CNC data for the specified parts.
            
            An XMLWarning element will be included in the response if no CNC file has been loaded for a requested piece mark.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="PieceMarkCNCData" type="fsresCNCData_PieceMarkCNCData" minOccurs="0" maxOccurs="unbounded"  >
                    <xsd:annotation><xsd:documentation>Piecemark</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ZippedCNCFiles" type="fsresFileData" minOccurs="0" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>Zipped CNC Files</xsd:documentation></xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresCNCData_PieceMarkCNCData">
    <xsd:annotation>
        <xsd:documentation>The CNC data for a single part.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="CNCFileID" type="xsd:integer" minOccurs="1" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>ID of CNC File</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PieceMark" type="xsd:token" minOccurs="1" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Piece mark</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Format" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>The format of the CNC file.</xsd:documentation></xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="DSTV" />
                    <xsd:enumeration value="DXF" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="CNCData" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Contents of the DSTV file.</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="CNCFile" type="fsresFileData" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>File Data for CNC File</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresConnect">
    <xsd:annotation>
        <xsd:documentation>Establishes a connection to the FabSuite database.  Cannot be called through a remote connection</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="FabSuiteMajorVersion" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="FabSuiteMinorVersion" type="xsd:token" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresConnectRemote">
    <xsd:annotation><xsd:documentation>Establishes a remote connection.</xsd:documentation></xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ConnectionGUID" type="xsd:token" minOccurs="1" maxOccurs="1">
                    <xsd:annotation><xsd:documentation>GUID identifying the remote connection.  All subsequent commands must send this GUID.</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="FabSuiteMajorVersion" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Tekla PowerFab major release version</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="FabSuiteMinorVersion" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Tekla PowerFab minor release version</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="UserPermissions" type="fsresUserPermissions" minOccurs="0" maxOccurs="unbounded" >
                    <xsd:annotation><xsd:documentation>User Permissions.</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="TrimbleIdentitySignInRequired" type="xsd:boolean" minOccurs="0" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>True if a sign-in with a Trimble Identity is required.</xsd:documentation></xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresUserPermissions">
    <xsd:annotation>
        <xsd:documentation>The permissions that the user has been granted.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="UserPermission" type="fsresUserPermission" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Unused" type="xsd:boolean" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    This element is not intended to actually be used.  It's sole purpose is to work around a
                    problem with MS Visual Studio's xsd tool that generates c# classes from an xsd schema.
                    With this tool if an element consists solely of a single element that may occur 1-many times
                    then that parent element is ignored and the classes are generated with a multi-dimensional array
                    of the inner element.
                    
                    In this case, where fsresUserPermissions is used it would appear in the classes instead as being
                    a multi-dimensional array of fsresUserPermission.  Adding a second element, titled Unused here,
                    avoids this issue.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresUserPermission">
    <xsd:annotation>
        <xsd:documentation>A permissions that the user has (or has not) been granted.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="PermissionName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="HasPermission" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresCostCode_Get">
    <xsd:annotation>
        <xsd:documentation>
            Gets the cost codes.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresCostCode_Get_ResultData" minOccurs="1" maxOccurs="1"><xsd:annotation><xsd:documentation>Results returned by the CostCode_Get Command</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

    <xsd:complexType name="fsresCostCode_Get_ResultData">
    <xsd:sequence>
        <xsd:element name="LastLogID" type="xsd:integer" minOccurs="1" maxOccurs="1" ><xsd:annotation><xsd:documentation>Last Log ID</xsd:documentation></xsd:annotation></xsd:element>
        <xsd:element name="CostCode" type="fsresCostCode" minOccurs="0" maxOccurs="unbounded" >
            <xsd:annotation>
                <xsd:documentation>The latest log position, to be used in a subsequent CostCode_Get request to get only the incremental changes.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="DeletedCostCodeID" type="xsd:integer" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>List of Deleted Cost Codes</xsd:documentation></xsd:annotation></xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresCostCode_Upsert">
    <xsd:annotation>
        <xsd:documentation>
            Inserts or updates a cost code.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresCostCode_Upsert_ResultData" minOccurs="1" maxOccurs="1"><xsd:annotation><xsd:documentation>Results returned by the CostCode_Upsert Command</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresCostCode_Upsert_ResultData">
    <xsd:sequence>
        <xsd:element name="CostCode" type="fsresCostCode" minOccurs="1" maxOccurs="1" ><xsd:annotation><xsd:documentation>The cost code result object</xsd:documentation></xsd:annotation></xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresCostCode_Delete">
    <xsd:annotation>
        <xsd:documentation>
            Deletes one or more cost codes.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresCostCode_Delete_ResultData" minOccurs="1" maxOccurs="1"><xsd:annotation><xsd:documentation>Results returned by the CostCode_Delete Command</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresCostCode_Delete_ResultData">
    <xsd:sequence>
        <xsd:element name="CostCode" type="fsresCostCode" minOccurs="1" maxOccurs="unbounded"><xsd:annotation><xsd:documentation>A list of Cost Code Objects that have been deleted</xsd:documentation></xsd:annotation></xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresCostCode">
    <xsd:annotation>
        <xsd:documentation>
            CostCode object
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="CostCodeID" type="xsd:integer" minOccurs="1" maxOccurs="1" ><xsd:annotation><xsd:documentation>Cost Code ID</xsd:documentation></xsd:annotation></xsd:element>
        <xsd:element name="CostCode" type="xsd:token" minOccurs="1" maxOccurs="1" ><xsd:annotation><xsd:documentation>Cost Code Abbreviation</xsd:documentation></xsd:annotation></xsd:element>
        <xsd:element name="Description" type="xsd:token" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Cost Code Description</xsd:documentation></xsd:annotation></xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresCreateInventoryLocationSweep">
    <xsd:annotation>
        <xsd:documentation>Creates a location sweep for the given location.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="InventoryLocationSweepID" type="xsd:integer" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>Identifier for the location sweep.</xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>Total quantity in the location.</xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="Location" type="xsd:token" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>Location of the sweep.</xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>Secondary location of the sweep.</xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDeleteInspectionTestRecord">
    <xsd:annotation>
        <xsd:documentation>Deletes the given inspection test record.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresHoldSettings">
    <xsd:sequence>
        <xsd:element name="Purchasing" type="fsHoldSetting" minOccurs="1" maxOccurs="1" ><xsd:annotation><xsd:documentation>Tekla PowerFab Hold setting for Purchasing actions</xsd:documentation></xsd:annotation></xsd:element>
        <xsd:element name="Production" type="fsHoldSetting" minOccurs="1" maxOccurs="1" ><xsd:annotation><xsd:documentation>Tekla PowerFab Hold setting for Production actions</xsd:documentation></xsd:annotation></xsd:element>
        <xsd:element name="Inspections" type="fsHoldSetting" minOccurs="1" maxOccurs="1" ><xsd:annotation><xsd:documentation>Tekla PowerFab Hold setting for Inspection actions</xsd:documentation></xsd:annotation></xsd:element>
        <xsd:element name="ShippingAssign" type="fsHoldSetting" minOccurs="1" maxOccurs="1" ><xsd:annotation><xsd:documentation>Tekla PowerFab Hold setting for Shipping Load Assignment actions</xsd:documentation></xsd:annotation></xsd:element>
        <xsd:element name="ShippingLoad" type="fsHoldSetting" minOccurs="1" maxOccurs="1" ><xsd:annotation><xsd:documentation>Tekla PowerFab Hold setting for Truck Loading actions</xsd:documentation></xsd:annotation></xsd:element>
        <xsd:element name="ShippingShip" type="fsHoldSetting" minOccurs="1" maxOccurs="1" ><xsd:annotation><xsd:documentation>Tekla PowerFab Hold setting for Load Shipping actions</xsd:documentation></xsd:annotation></xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProjectGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProjectGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProjectGet_ResultData">
    <xsd:sequence>
        <xsd:element name="Project" type="fsresProject" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingLogGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingLogGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingLogGet_ResultData">
    <xsd:sequence>
        <xsd:element name="LastLogID" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The latest log position, to be used in a subsequent DrawingLog_Get request to get only the incremental changes.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="DeletedDrawingLogID" type="xsd:integer" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The DrawingLogID values for the records that were deleted since the LastLogID value in the request.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="DrawingLog" type="fsresDrawingLog" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingLogInsert">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingLogInsert_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingLogInsert_ResultData">
    <xsd:sequence>
        <xsd:element name="DrawingLog" type="fsresDrawingLog" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The details of the records that were inserted.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingLogUpdate">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingLogUpdate_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingLogUpdate_ResultData">
    <xsd:sequence>
        <xsd:element name="DrawingLog" type="fsresDrawingLog" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The new details of the records that were updated.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingLogDelete">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingLogDelete_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingLogDelete_ResultData">
    <xsd:sequence>
        <xsd:element name="DrawingLog" type="fsresDrawingLog" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The details of the records that were deleted.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingGet_ResultData">
    <xsd:sequence>
        <xsd:element name="LastLogID" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The latest log position, to be used in a subsequent Drawing_Get request to get only the incremental changes.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetOptions" type="fsresDrawingGetOptions" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DeletedDrawingID" type="xsd:integer" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The DrawingID values for the drawings that were deleted since the LastLogID value in the request.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Drawing" type="fsresDrawing" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="DrawingLog" type="fsresDrawingLog" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ApprovalStatus" type="fsresApprovalStatus" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Transmittals" type="fsresTransmittalGet_ResultData" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingGetOptions">
    <xsd:sequence>
        <xsd:element name="IncludeDrawingLogDetails" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Revisions" minOccurs="0" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="none" />
                    <xsd:enumeration value="latest" />
                    <xsd:enumeration value="all" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="Transmittals" minOccurs="0" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="none" />
                    <xsd:enumeration value="latest" />
                    <xsd:enumeration value="all" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="IncludeTransmittalDetails" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IncludeFileDetails" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SortOrder" minOccurs="0" maxOccurs="unbounded">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="DrawingType" />
                    <xsd:enumeration value="DrawingLogName" />
                    <xsd:enumeration value="DrawingNumber" />
                    <xsd:enumeration value="Description" />
                    <xsd:enumeration value="ApprovalStatus" />
                    <xsd:enumeration value="DetailedBy" />
                    <xsd:enumeration value="DateDetailed" />
                    <xsd:enumeration value="DetailingHours" />
                    <xsd:enumeration value="DateReceived" />
                    <xsd:enumeration value="CheckedBy" />
                    <xsd:enumeration value="DateChecked" />
                    <xsd:enumeration value="ReleaseNumber" />
                    <xsd:enumeration value="Category" />
                    <xsd:enumeration value="PackageNumber" />
                    <xsd:enumeration value="ShopIssueDate" />
                    <xsd:enumeration value="ReSubmit" />
                    <xsd:enumeration value="TransmittalNumber" />
                    <xsd:enumeration value="TransmittalIssuedTo" />
                    <xsd:enumeration value="TransmittalDateIssued" />
                    <xsd:enumeration value="TransmittalReturnDate" />
                    <xsd:enumeration value="TransmittalDateReceived" />
                    <xsd:enumeration value="Revision" />
                    <xsd:enumeration value="RevisionDescription" />
                    <xsd:enumeration value="RevisedBy" />
                    <xsd:enumeration value="DateRevised" />
                    <xsd:enumeration value="RevisionDateReceived" />
                    <xsd:enumeration value="RevisionCheckedBy" />
                    <xsd:enumeration value="RevisionDateChecked" />
                    <xsd:enumeration value="RevisionReleaseNumber" />
                    <xsd:enumeration value="ProductionTotalQuantity" />
                    <xsd:enumeration value="ProductionAssemblyQuantity" />
                    <xsd:enumeration value="ProductionWeight" />
                    <xsd:enumeration value="ProductionManHours" />
                    <xsd:enumeration value="ProductionCategory" />
                    <xsd:enumeration value="ProductionSubCategory" />
                    <xsd:enumeration value="ProductionPayCategory" />
                    <xsd:enumeration value="ProductionSequence" />
                    <xsd:enumeration value="ProductionLotNumber" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="SortDescending" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Offset" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Limit" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingInsert">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingInsert_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingInsert_ResultData">
    <xsd:sequence>
        <xsd:element name="Drawing" type="fsresDrawing" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The details of the drawings that were inserted.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingUpdate">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingUpdate_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingUpdate_ResultData">
    <xsd:sequence>
        <xsd:element name="Drawing" type="fsresDrawing" minOccurs="1" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The new details of the drawings that were updated.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingDelete">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingDelete_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingDelete_ResultData">
    <xsd:sequence>
        <xsd:element name="Drawing" type="fsresDrawing" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The details of the drawings that were deleted.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingFileGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingFileGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingFileGet_ResultData">
    <xsd:sequence>
        <xsd:element name="DrawingID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingRevisionID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FileName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FileDataBase64" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingInputOptionsGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingInputOptionsGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingInputOptionsGet_ResultData">
    <xsd:sequence>
        <xsd:element name="InputOptions" type="fsresDrawingInputOptions" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingRevisionGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingRevisionGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingRevisionGet_ResultData">
    <xsd:sequence>
        <xsd:element name="LastLogID" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The latest log position, to be used in a subsequent DrawingRevision_Get request to get only the incremental changes.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetOptions" type="fsresDrawingRevisionGetOptions" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DeletedDrawingRevisionID" type="xsd:integer" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The DrawingRevisionID values for the revisions that were deleted since the LastLogID value in the request.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="DrawingRevision" type="fsresDrawingRevision" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingRevisionGetOptions">
    <xsd:sequence>
        <xsd:element name="Revisions" minOccurs="0" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="latest" />
                    <xsd:enumeration value="all" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingRevisionInsert">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingRevisionInsert_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingRevisionInsert_ResultData">
    <xsd:sequence>
        <xsd:element name="DrawingRevision" type="fsresDrawingRevision" minOccurs="1" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The details of the revisions that were inserted.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingRevisionUpdate">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingRevisionUpdate_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingRevisionUpdate_ResultData">
    <xsd:sequence>
        <xsd:element name="DrawingRevision" type="fsresDrawingRevision" minOccurs="1" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The new details of the revisions that were updated.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresDrawingRevisionDelete">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresDrawingRevisionDelete_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresDrawingRevisionDelete_ResultData">
    <xsd:sequence>
        <xsd:element name="DrawingRevision" type="fsresDrawingRevision" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The details of the revisions that were deleted.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresExportJob">
    <xsd:annotation>
        <xsd:documentation>Exports a Production Control job to a KISS file.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresExportJobStatus">
    <xsd:annotation>
        <xsd:documentation>Exports a Production Control job including status information.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ExportFilename" type="xsd:token" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>Filename of the export</xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="XMLFormat" type="xsd:token" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>The format of the export</xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="ExportFile" type="fsresFileData" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>The export file data.</xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresExportProjectSchedule">
    <xsd:annotation>
        <xsd:documentation>Exports a project schedule.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ExportFilename" type="xsd:token" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>Filename of the export</xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="ExportFile" type="fsresFileData" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>The export file data.</xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresExtensionCommand">
    <xsd:annotation>
        <xsd:documentation>Execute a Tekla PowerFab extension.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="CommandResult" type="xsd:token" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>JSON results of the command executed</xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresFilterSetDetailsGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresFilterSetDetailsGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresFilterSetDetailsGet_ResultData">
    <xsd:sequence>
        <xsd:element name="FilterSetDetails" type="fsresFilterSetDetails" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFilterSetDetails">
    <xsd:sequence>
        <xsd:element name="Type" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SubType" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Filter" type="fsresFilterSetDetails_Filter" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFilterSetDetails_Filter">
    <xsd:sequence>
        <xsd:element name="Name" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DisplayName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FilterType" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="HasTextSearch" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFilterSelectionsPDCGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresFilterSelectionsPDCGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresFilterSelectionsPDCGet_ResultData">
    <xsd:sequence>
        <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Filter" type="fsresFilterSetSelections_Filter" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GetOptions" type="fsresFilterSelections_GetOptions" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFilterSelectionsPRJGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresFilterSelectionsPRJGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresFilterSelectionsPRJGet_ResultData">
    <xsd:sequence>
        <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Filter" type="fsresFilterSetSelections_Filter" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GetOptions" type="fsresFilterSelections_GetOptions" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresFirmAddressGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresFirmAddressGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresFirmAddressGet_ResultData">
    <xsd:sequence>
        <xsd:element name="FirmAddressList" type="fsresFirmAddressList" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetAssemblies">
    <xsd:annotation>
        <xsd:documentation>Retrieves the list of assemblies in a job.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="InspectionTest" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>The title of an inspection test referenced by one or more assemblies in the response.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:simpleContent>
                            <xsd:extension base="xsd:token">
                                <xsd:attribute name="Index" type="xsd:integer" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The index of this test, used for brevity to reference this test by the assemblies in the response.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                                <xsd:attribute name="Category" type="xsd:token" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The category of the inspection test.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                            </xsd:extension>
                        </xsd:simpleContent>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Filters applied to this command are echoed back.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Assembly" type="fsresGetAssemblies_Assembly" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetAssemblies_Assembly">
    <xsd:annotation>
        <xsd:documentation>An assembly.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="MainMark" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ApprovalStatus" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusDescription" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusPurpose" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AssemblyQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TotalQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InspectionTest" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The number of tests of the type identified by the Index attribute that have been performed on the assembly.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:integer">
                        <xsd:attribute name="Index" type="xsd:integer" use="required">
                            <xsd:annotation>
                                <xsd:documentation>The index of this test, corresponds to the inspection test with a matching index in the InspectionTest element of the response element.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="HasFailures" type="xsd:boolean" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>Indicates if there are any outstanding failures.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
        <xsd:element name="AssemblySequence" type="fsresGetAssemblies_AssemblySequence" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="BillOfMaterials" type="fsresGetAssemblies_BillOfMaterials" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetAssemblies_AssemblySequence">
    <xsd:annotation>
        <xsd:documentation>A sequence assignment for an assembly.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Sequence" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetAssemblies_BillOfMaterials">
    <xsd:annotation>
        <xsd:documentation>A part in the bill of materials for an assembly.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="MainPiece" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PieceMark" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="QuantityTFS" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Shape" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Grade" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Finish" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReferenceNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Remark" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Route" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Category" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SubCategory" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PayCategory" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingRoute" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AccessoryPieceTracking" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AccessoryLoadTracking" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProductionCode" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InspectionTest" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The number of tests of the type identified by the Index attribute that have been performed on the part.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:integer">
                        <xsd:attribute name="Index" type="xsd:integer" use="required">
                            <xsd:annotation>
                                <xsd:documentation>The index of this test, corresponds to the inspection test with a matching index in the InspectionTest element of the response element.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="HasFailures" type="xsd:boolean" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>Indicates if there are any outstanding failures.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetBillOfMaterials">
    <xsd:annotation>
        <xsd:documentation>Retrieves the bill of materials.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="InspectionTest" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>The title of an inspection test referenced by one or more parts in the response.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:simpleContent>
                            <xsd:extension base="xsd:token">
                                <xsd:attribute name="Index" type="xsd:integer" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The index of this test, used for brevity to reference this test by the parts in the response.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                                <xsd:attribute name="Category" type="xsd:token" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The category of the inspection test.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                            </xsd:extension>
                        </xsd:simpleContent>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Assembly" type="fsresGetAssemblies_Assembly" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetCategories">
    <xsd:annotation>
        <xsd:documentation>Retrieves the list of categories in a job.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="InspectionTest" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>The title of an inspection test referenced by one or more categories in the response.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:simpleContent>
                            <xsd:extension base="xsd:token">
                                <xsd:attribute name="Index" type="xsd:integer" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The index of this test, used for brevity to reference this test by the categories in the response.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                                <xsd:attribute name="Category" type="xsd:token" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The category of the inspection test.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                            </xsd:extension>
                        </xsd:simpleContent>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Category" type="fsresGetCategories_Category" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetCategories_Category">
    <xsd:annotation>
        <xsd:documentation>An Category.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Category" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="MainMemberQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TotalQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InspectionTest" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The number of tests of the type identified by the Index attribute that have been performed on the category.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:integer">
                        <xsd:attribute name="Index" type="xsd:integer" use="required">
                            <xsd:annotation>
                                <xsd:documentation>The index of this test, corresponds to the inspection test with a matching index in the InspectionTest element of the response element.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="HasFailures" type="xsd:boolean" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>Indicates if there are any outstanding failures.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetCountries">
    <xsd:annotation>
        <xsd:documentation>Retrieves available countries from the Database.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="Country" type="fsresGetCountries_Country" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetCountries_Country">
    <xsd:annotation>
        <xsd:documentation>A Country.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="CountryID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Name" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Abbreviation" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetCurrencies">
    <xsd:annotation>
        <xsd:documentation>Retrieves available currencies from the database.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="Currency" type="fsresGetCurrencies_Currency" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetCurrencies_Currency">
    <xsd:annotation>
        <xsd:documentation>A currency.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="CurrencyID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Abbreviation" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DisplayPrefix" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DisplaySuffix" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DecimalPlaces" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DefaultCurrency" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="fsresGetCutList">
    <xsd:annotation>
        <xsd:documentation>Retrieves the details of a cut list.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Production Control ID of job this cut list is in</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>Job Number</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="CutListID" type="xsd:integer" minOccurs="1" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>Unique ID of this cut list</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="CutListName" type="xsd:token" minOccurs="1" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>Cut list Name</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="DateCreated" type="xsd:date" minOccurs="1" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>Date cut list was created</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="DateRequired" type="xsd:date" minOccurs="0" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>Date cut list is required</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="CuttingDetails" type="xsd:integer" minOccurs="1" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>number of cutting details</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="TotalCut" type="xsd:integer" minOccurs="1" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>number of cutting details cut</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="TotalInvalidated" type="xsd:integer" minOccurs="1" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>number of cutting details invalidated</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="TotalValidationRequired" type="xsd:integer" minOccurs="1" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>number of cutting details with validation required</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="HasCNCData" type="xsd:boolean" minOccurs="0" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>True if cut list has CNC data</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="HasNestData" type="xsd:boolean" minOccurs="0" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>True if cut list has nest data</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="NestDataFilename" type="xsd:token" minOccurs="0" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>Filename of nest data</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>Display units</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="CutListItem" type="fsresGetCutList_CutListItem" minOccurs="0" maxOccurs="unbounded"  >
                    <xsd:annotation><xsd:documentation>List of Items on cut list</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetCutList_CutListItem">
    <xsd:annotation>
        <xsd:documentation>A cutting detail on a cut list.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="CutListItemID" type="xsd:integer" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>ID of Cut List Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="CutListSerialNumber" type="xsd:integer" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Cut list Serial Number</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PlannedInventoryItemID" type="xsd:integer" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>ID of planned inventory item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="OnOrder" type="xsd:boolean" minOccurs="1" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>True if planning inventory item is on order</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Status" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Status of the cutting detail.</xsd:documentation></xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Complete" />
                    <xsd:enumeration value="Invalidated" />
                    <xsd:enumeration value="On Order" />
                    <xsd:enumeration value="Val Req" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="DateTimeCut" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Date/Time cut list item was cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Shape" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Shape of cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Grade" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Grade of cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Dimensions of cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Width" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Width of cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Length of cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Area" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Area of cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Weight of cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Kerf" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Kerf of cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="ExpectedDrop" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Expected Drop of cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="ExpectedPercentDrop" type="xsd:decimal" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Expected Drop percentage of cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="NestSolutionID" type="xsd:integer" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>ID of nest solution if this is a split or a splice</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="NestSolutionType"  minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Type of nest solution</xsd:documentation></xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Splice" />
                    <xsd:enumeration value="Split" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="HasNestImage" type="xsd:boolean" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>True if cut list item has a nest image</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="HasCNCData" type="xsd:boolean" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>True if cut list item has CNC data/xsd:documentation></xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="HasNestData" type="xsd:boolean" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>True if cut list item has nest data</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="NestDataFilename" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Filename of nest data</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="ActualPONumber" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>PO Number of actual stock used (if item is cut)</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="ActualBillOfLadingNumber" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Bill of Lading Number of actual stock used (if item is cut)</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="ActualCountryOfOrigin" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Country of Origin of actual stock used (if item is cut)</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="ActualHeatNumber" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Heat Number of actual stock used (if item is cut)</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="ActualHeatSerialNumber" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation> Heat Serial Number of actual stock used (if item is cut)</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="ActualDropWidth" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Actual drop width (if item is cut)</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="ActualDropLength" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation> </xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="ActualDropLocation" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Actual drop length (if item is cut)</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="ActualDropSecondaryLocation" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Actual drop location (if item is cut)</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="NestID" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Nest ID for this cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="NestExtra1" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Nest Extra 1 field for this cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="NestExtra2" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Nest Extra 2 field for this cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>        
        <xsd:element name="DateTimeUpdated" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Date/Time of last update to this cut list item </xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PlannedInventoryItem" type="fsresGetCutList_PlannedInventoryItem" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Planned inventory item for this cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="CutListItemPart" type="fsresGetCutList_CutListItemPart" minOccurs="0" maxOccurs="unbounded"  >
            <xsd:annotation><xsd:documentation>Parts this cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetCutList_PlannedInventoryItem">
    <xsd:annotation>
        <xsd:documentation>
            The details of the stock that is planned to be used on the cutting detail.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="PONumber" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>PO Number of planned inventory item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="HeatNumber" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Heat Number of planned inventory item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="HeatSerialNumber" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Heat Serial Number of planned inventory item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Location" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Location of planned inventory item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Secondary Location of planned inventory item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PartNumber" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Part Number of planned inventory item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="RemnantID" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Remnant ID of planned inventory item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="RemnantName" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Remnant Name of planned inventory item</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetCutList_CutListItemPart">
    <xsd:annotation>
        <xsd:documentation>
            A Part in a cut list cutting detail.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Production Control ID of job that part to cut is on</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Job Number of job that part to cut is on</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="DrawingNumber" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Drawing Number that part to cut is on</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="DrawingRevision" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Drawing Revision that part to cut is on</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="DrawingFile" type="fsresFileData" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Drawing File that part to cut is on</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="MainMark" type="xsd:token" minOccurs="1" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Main mark of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="MainPiece" type="xsd:boolean" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Indicates whether this part is the main piece of the assembly.</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="AssemblyDrawingRevision" type="xsd:token" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Revision of Assembly Drawing</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="AssemblyDrawingFile" type="fsresFileData" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>File for Assembly Drawing</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PieceMark" type="xsd:token" minOccurs="1" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Piece mark of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PartDrawingRevision" type="xsd:token" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Revision of Part Drawing</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PartDrawingFile" type="fsresFileData" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>File for Part Drawing</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Sequence" type="xsd:token" minOccurs="1" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Sequence of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="1" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Lot of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Quantity of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Width" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Width of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Length of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Area" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>ARea of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="ApprovalStatusCode" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Approval Status Code of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="ApprovalStatusPurpose" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Approval Status Purpose of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Category" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Category of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="SubCategory" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>SubCategory of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PayCategory" type="xsd:token" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Pay Category of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Remark" type="xsd:token" minOccurs="0" maxOccurs="1"  >
            <xsd:annotation><xsd:documentation>Remark on part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Route" type="xsd:token" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Route on part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="NextStation" type="xsd:token" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>The next station in the route</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="CNCFileID" type="xsd:integer" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>CNCFileID of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="CNCFormat" type="xsd:token" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Format of CNC data for part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="CNCFileMiterCut" type="xsd:boolean" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>True if CNC File has a miter cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="CNCFileBevelCut" type="xsd:boolean" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>True if CNC File has a bevel</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="InstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Instance Numbers of part to cut</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetDocument">
    <xsd:annotation>
        <xsd:documentation>Retrieves a document from the document index.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="Document" type="fsresGetDocument_Document" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetDocument_Document">
    <xsd:annotation>
        <xsd:documentation>A document.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="DocumentID" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FileSource" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DocumentText" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DocumentReferenceText" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FileData" type="fsresFileData" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetDrawings">
    <xsd:annotation>
        <xsd:documentation>Retrieves the list of drawings in a job.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="InspectionTest" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>The title of an inspection test referenced by one or more drawings in the response.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:simpleContent>
                            <xsd:extension base="xsd:token">
                                <xsd:attribute name="Index" type="xsd:integer" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The index of this test, used for brevity to reference this test by the drawings in the response.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                                <xsd:attribute name="Category" type="xsd:token" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The category of the inspection test.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                            </xsd:extension>
                        </xsd:simpleContent>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Drawing" type="fsresGetDrawings_Drawing" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetDrawings_Drawing">
    <xsd:annotation>
        <xsd:documentation>A drawing.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="DrawingNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ApprovalStatus" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Revision" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="AssemblyQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TotalQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InspectionTest" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The number of tests of the type identified by the Index attribute that have been performed on the drawing.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:integer">
                        <xsd:attribute name="Index" type="xsd:integer" use="required">
                            <xsd:annotation>
                                <xsd:documentation>The index of this test, corresponds to the inspection test with a matching index in the InspectionTest element of the response element.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="HasFailures" type="xsd:boolean" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>Indicates if there are any outstanding failures.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
        <xsd:element name="LatestRevisionFile" type="fsresFileData" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetFilterSelections">
    <xsd:annotation>
        <xsd:documentation>Retrieves selections for a filter set.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="FilterSetType" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="FilterSetSubType" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="FilterSet" type="fsresGetFilterSelections_FilterSet" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Filter" type="fsresGetFilterSelections_Filter" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetFilterSelections_FilterSet">
    <xsd:annotation>
        <xsd:documentation>The set of fields in a filter.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Filter" type="fsresGetFilterSelections_Filter" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetFilterSelections_Filter">
    <xsd:annotation>
        <xsd:documentation>One filter.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Name" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DisplayName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="MinValue" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MaxValue" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FilterItems" type="fsresGetFilterSelections_FilterItems" minOccurs="0" maxOccurs="1" />        
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetFilterSelections_FilterItems">
    <xsd:annotation>
        <xsd:documentation>Collection of items in a selection filter.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="FilterItem" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>A field value.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:token">
                        <xsd:attribute name="Field1" type="xsd:token" use="optional" />
                        <xsd:attribute name="Field1_BASE64" type="xsd:token" use="optional" />
                        <xsd:attribute name="Field2" type="xsd:token" use="optional" />
                        <xsd:attribute name="Field2_BASE64" type="xsd:token" use="optional" />
                        <xsd:attribute name="Field3" type="xsd:token" use="optional" />
                        <xsd:attribute name="Field3_BASE64" type="xsd:token" use="optional" />
                        <xsd:attribute name="Field4" type="xsd:token" use="optional" />
                        <xsd:attribute name="Field4_BASE64" type="xsd:token" use="optional" />
                        <xsd:attribute name="Field5" type="xsd:token" use="optional" />
                        <xsd:attribute name="Field5_BASE64" type="xsd:token" use="optional" />
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetFilterSetDetails">
    <xsd:annotation>
        <xsd:documentation>Retrieves fields and types for a filter.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="FilterSetType" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="FilterSetSubType" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Filters" type="fsresGetFilterSetDetails_Filters" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetFilterSetDetails_Filters">
    <xsd:annotation>
        <xsd:documentation>The set of fields in a filter.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Filter" type="fsresGetFilterSetDetails_Filter" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetFilterSetDetails_Filter">
    <xsd:annotation>
        <xsd:documentation>One Field in a filter.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="FilterName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FilterNameDisplay" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FilterType" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestRecords">
    <xsd:annotation>
        <xsd:documentation>Retrieves the details of an inspection test record and it's test definition.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="InspectionTest" type="fsresInspectionTest" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>
                            The test definitions referenced by the test records in the response.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="LatestVersionInspectionTest" type="fsresInspectionTest" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>
                            The latest version of the test definition of each test referenced by the test records in the response.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="InspectionTestRecord" type="fsresInspectionTestRecord" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="InspectionTestLocations" type="fsresInspectionTestLocations" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Inspections" type="fsresInspectors" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresInspectionTestRecord">
    <xsd:annotation>
        <xsd:documentation>An inspection test record.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InspectionTestRecordID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectionTestID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectionTestVersionID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ParentInspectionTestRecordID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ChildInspectionTestRecordID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PassedInspectionTestRecordID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TestHours" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectorFirm" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectorName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestDateTime" type="xsd:dateTime" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestUpdatedDateTime" type="xsd:dateTime" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TestUpdatedBy" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InspectionTestSubject" type="fsresInspectionTestSubject" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TestLocation" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestFailed" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestWarning" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectionTestRecordField" type="fsresInspectionTestRecordField" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="InspectionDocument" type="fsresDocument" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInspectionTestSubject">
    <xsd:annotation>
        <xsd:documentation>
            The subject of an inspection test.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MainMark" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PieceMark" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Sequence" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LoadNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="UserID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Employee" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="WeightEach" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusCode" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusPurpose" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInspectionTestRecordField">
    <xsd:annotation>
        <xsd:documentation>
            A field/value on an inspection test record.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InspectionTestRecordFieldID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectionTestFieldID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FieldInstance" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ValueID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Value" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IndicatesFailure" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IndicatesWarning" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInspectionTestLocations">
    <xsd:annotation>
        <xsd:documentation>The inspection test locations.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InspectionTestLocation" type="fsresInspectionTestLocation" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInspectionTestLocation">
    <xsd:annotation>
        <xsd:documentation>An inspection test location.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InspectionTestLocationID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Location" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInspectors">
    <xsd:annotation>
        <xsd:documentation>The available inspectors.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Inspector" type="fsresInspector" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInspector">
    <xsd:annotation>
        <xsd:documentation>An inspector.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InspectorFirmContactID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectorID" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FirmName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FirmContactName" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestRecordsCondensed">
    <xsd:annotation>
        <xsd:documentation>Retrieves the condensed details of a set of inspection test records.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Filters applied to this command are echoed back.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="IncludedField" type="fsresGetInspectionTestRecordsCondensed_IncludedField" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="InspectionTestRecord" type="fsresInspectionTestRecordCondensed" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestRecordsCondensed_IncludedField">
    <xsd:annotation>
        <xsd:documentation>A field in the condensed test record response.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Index" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    The index of the field, used for brevity to reference the field in fsresInspectionTestRecordCondensed->Field[Index].
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Abbreviation" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Type" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    The type of field.
                </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Boolean" />
                    <xsd:enumeration value="Numeric" />
                    <xsd:enumeration value="Date" />
                    <xsd:enumeration value="Text" />
                    <xsd:enumeration value="Memo" />
                    <xsd:enumeration value="Drop-Down" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInspectionTestRecordCondensed">
    <xsd:annotation>
        <xsd:documentation>An inspection test record.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InspectionTestRecordID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectionTestID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectionTestVersionID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ParentInspectionTestRecordID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ChildInspectionTestRecordID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PassedInspectionTestRecordID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TestTitle" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TestHours" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectorFirm" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectorName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestDateTime" type="xsd:dateTime" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestUpdatedDateTime" type="xsd:dateTime" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TestUpdatedBy" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InspectionTestSubject" type="fsresInspectionTestSubject" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TestLocation" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestFailed" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestWarning" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Field" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>A field value.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:token">
                        <xsd:attribute name="Index" type="xsd:integer" use="required">
                            <xsd:annotation>
                                <xsd:documentation>The index of this field, corresponds to the IncludedField element with a matching index.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="Failure" type="xsd:boolean" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>If true then this field indicates a failure condition.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="Warning" type="xsd:boolean" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>If true then this field indicates a warning condition.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestRecordSummary">
    <xsd:annotation>
        <xsd:documentation>Retrieves the condensed details of a set of inspection test records.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="InspectionTest" type="fsresGetInspectionTestRecordSummary_InspectionTest" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestRecordSummary_InspectionTest">
    <xsd:annotation>
        <xsd:documentation>Summary of an inspection test.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InspectionTestID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestType" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Category" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Title" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TotalTests" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InitialTests" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Warnings" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FailedTests" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InitialFailures" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FollowUps" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SuccessfulFollowUps" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="OutstandingFailures" type="xsd:integer" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTests">
    <xsd:annotation>
        <xsd:documentation>Retrieves a list of inspection tests and their definitions.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="InspectionTest" type="fsresInspectionTest" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="InspectionTestLocations" type="fsresInspectionTestLocations" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Inspectors" type="fsresInspectors" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresInspectionTest">
    <xsd:annotation>
        <xsd:documentation>An inspection test definition.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InspectionTestID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectionTestVersionID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="UpdateCount" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestPurpose" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The purpose of the tests to retrieve, indicates the type of test subject.</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="None" />
                    <xsd:enumeration value="Assembly" />
                    <xsd:enumeration value="Part" />
                    <xsd:enumeration value="Load" />
                    <xsd:enumeration value="Employee" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="TestType" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Category" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Title" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Notes" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CreatedDateTime" type="xsd:dateTime" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LastUpdateDateTime" type="xsd:dateTime" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InspectionTestField" type="fsresInspectionTestField" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="CanAddTestRecords" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="CanEditTestRecords" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="CanDeleteTestRecords" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInspectionTestField">
    <xsd:annotation>
        <xsd:documentation>A field in an inspection test.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InspectionTestFieldID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FieldName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FieldTitle" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FieldAbbreviation" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Notes" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FieldType" minOccurs="1" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Boolean" />
                    <xsd:enumeration value="Numeric" />
                    <xsd:enumeration value="Date" />
                    <xsd:enumeration value="Text" />
                    <xsd:enumeration value="Memo" />
                    <xsd:enumeration value="Drop-Down" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="BooleanFieldFailureMode" type="xsd:integer" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    1 - Test warning if checked
                    2 - Test warning if un-checked
                    3 - Test failure if checked
                    4 - Test failure if un-checked
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="NumericFieldMinDecimalPlaces" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumericFieldMaxDecimalPlaces" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumericFieldUOMPrefix" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumericFieldUOMSuffix" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumericFailureIfInRange" type="xsd:boolean" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    true - Test failure if in the range.
                    false - Test failure if out of the range.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="NumericFailureRangeMinimum" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumericFailureRangeMaximum" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumericWarningIfInRange" type="xsd:boolean" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    true - Test warning if in the range.
                    false - Test warning if out of the range.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="NumericWarningRangeMinimum" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumericWarningRangeMaximum" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DropDownRestrictToOptions" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DropDownPopulateWithDataSet" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DropDownParentInspectionTestFieldID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DropDownHasFailureOptions" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumberOfInstances" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="MaxNumberOfInstances" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ValueRequired" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="OnlyForFollowupTests" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FieldIndex" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectionTestFieldOption" type="fsresInspectionTestFieldOption" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInspectionTestFieldOption">
    <xsd:annotation>
        <xsd:documentation>An available drop-down option.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InspectionTestFieldOptionID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Option" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ParentInspectionTestFieldOptionID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IndicatesFailure" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="IndicatesWarning" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Notes" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestSubjects">
    <xsd:annotation>
        <xsd:documentation>Retrieves the available subjects for the given inspection test.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="Parts" type="fsresGetInspectionTestSubjects_Parts" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Loads" type="fsresGetInspectionTestSubjects_Loads" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Employees" type="fsresGetInspectionTestSubjects_Employees" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" />
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestSubjects_Parts">
    <xsd:annotation>
        <xsd:documentation>Retrieves the available parts for the given inspection test.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Part" type="fsresGetInspectionTestSubjects_Part" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestSubjects_Part">
    <xsd:annotation>
        <xsd:documentation>An available part for the given inspection test.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="MainMark" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PieceMark" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Sequence" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="WeightEach" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DrawingRevision" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DrawingFile" type="fsresFileData" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusCode" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Finish" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusPurpose" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Shape" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Grade" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InspectionTestRecord" type="fsresGetInspectionTestSubjects_InspectionTestRecord" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestSubjects_Loads">
    <xsd:annotation>
        <xsd:documentation>Retrieves the available loads for the given inspection test.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Part" type="fsresGetInspectionTestSubjects_Load" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestSubjects_Load">
    <xsd:annotation>
        <xsd:documentation>An available load for the given inspection test.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LoadNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DestinationName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TrailerNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Carrier" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Capacity" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DateShipped" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AssignedQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="AssignedWeight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ToBeReturned" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InspectionTestRecord" type="fsresGetInspectionTestSubjects_InspectionTestRecord" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestSubjects_Employees">
    <xsd:annotation>
        <xsd:documentation>Retrieves the available employees for the given inspection test.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Part" type="fsresGetInspectionTestSubjects_Employee" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestSubjects_Employee">
    <xsd:annotation>
        <xsd:documentation>An available employee for the given inspection test.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="UserID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Username" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FullName" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestSubjects_InspectionTestRecord">
    <xsd:annotation>
        <xsd:documentation>An inspection result for a subject.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InspectionTestRecordID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ParentInspectionTestRecordID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ChildInspectionTestRecordID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PassedChildInspectionTestRecordID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InspectorFirm" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectorName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestDateTime" type="xsd:dateTime" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestLocation" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestFailed" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TestWarning" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInspectionTestTypes">
    <xsd:annotation>
        <xsd:documentation>Retrieves the available inspection test types and categories.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="InspectionTestType" type="fsresInspectionTestType" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresInspectionTestType">
    <xsd:annotation>
        <xsd:documentation>An inspection test type.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="TestPurpose" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The purpose of the test, indicates the type of test subject.</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="None" />
                    <xsd:enumeration value="Assembly" />
                    <xsd:enumeration value="Part" />
                    <xsd:enumeration value="Load" />
                    <xsd:enumeration value="Employee" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="TestType" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Category" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInventory">
    <xsd:annotation>
        <xsd:documentation>Retrieves all of the records from the current inventory and/or inventory history.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="LastTransactionID" type="xsd:integer" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            The maximum inventory transaction ID.
                            
                            This value should be passed to the GetInventoryTransactions command
                                so that only the new changes will be retrieved.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>
                            Filters applied to this command are echoed back.
                            
                            Nested Filters elements are supported.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="InventoryRecord" type="fsresInventoryRecord" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetInventoryLocations">
    <xsd:annotation>
        <xsd:documentation>Retrieves list of locations and secondary locations in Inventory.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="Locations" type="fsresGetLocations_Location" minOccurs="0" maxOccurs="1" />
                <xsd:element name="SecondaryLocations" type="fsresGetLocations_Location" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetLocations_Location">
    <xsd:annotation>
        <xsd:documentation>One inventory location.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Location" type="xsd:token" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInventoryLocationSweeps">
    <xsd:annotation>
        <xsd:documentation>Retrieves the details of the given location sweep serial number.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="InventoryLocationSweep" type="fsresInventoryLocationSweep" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresInventoryLocationSweep">
    <xsd:annotation>
        <xsd:documentation>An inventory location sweep.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InventoryLocationSweepID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DateTimeCreated" type="xsd:dateTime" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Location" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="QuantityRemaining" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="QuantityFound" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="QuantityMovedIn" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="QuantityMovedOut" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="QuantityMovedOutComplete" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Complete" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInventorySummary">
    <xsd:annotation>
        <xsd:documentation>Retrieves summary information from inventory.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Filters applied to this command are echoed back.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" />
                <xsd:element name="SummaryField" minOccurs="1" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>Field(s) that the summary information is grouped on.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:simpleType>
                        <xsd:restriction base="xsd:token">
                            <xsd:enumeration value="Shape" />
                            <xsd:enumeration value="ShapeID" />
                            <xsd:enumeration value="Grade" />
                            <xsd:enumeration value="GradeID" />
                            <xsd:enumeration value="Size" />
                            <xsd:enumeration value="SizeID" />
                            <xsd:enumeration value="Dimension" />
                            <xsd:enumeration value="Dimensions" />
                            <xsd:enumeration value="Width" />
                            <xsd:enumeration value="Length" />
                            <xsd:enumeration value="JobNumber" />
                            <xsd:enumeration value="Location" />
                            <xsd:enumeration value="SecondaryLocation" />
                            <xsd:enumeration value="Supplier" />
                            <xsd:enumeration value="CountryOfOrigin" />
                            <xsd:enumeration value="MillOfOrigin" />
                            <xsd:enumeration value="PONumber" />
                            <xsd:enumeration value="BillOfLadingNumber" />
                            <xsd:enumeration value="HeatNumber" />
                            <xsd:enumeration value="HeatSerialNumber" />
                            <xsd:enumeration value="DeliveryDate" />
                            <xsd:enumeration value="Remarks" />
                            <xsd:enumeration value="OnOrder" />
                            <xsd:enumeration value="ReferenceNumber" />
                            <xsd:enumeration value="PartNumber" />
                        </xsd:restriction>
                    </xsd:simpleType>
                </xsd:element>
                <xsd:element name="Summary" type="fsresGetInventorySummary_Summary" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="Offset" type="xsd:integer" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Limit" type="xsd:integer" minOccurs="0" maxOccurs="1" />
                <xsd:element name="LimitHasMore" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetInventorySummary_Summary">
    <xsd:annotation>
        <xsd:documentation>An summary for a set of fields.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="SummaryField" type="fsresGetInventorySummary_SummaryField" minOccurs="1" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>
                    Unique identifier for the transaction.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="InStockQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InStockAmount" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InStockWeight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OnOrderQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OnOrderAmount" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OnOrderWeight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInventorySummary_SummaryField">
    <xsd:annotation>
        <xsd:documentation>A summary field.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Name" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>A Field that the summary information is grouped on.</xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Shape" />
                    <xsd:enumeration value="ShapeID" />
                    <xsd:enumeration value="Grade" />
                    <xsd:enumeration value="GradeID" />
                    <xsd:enumeration value="Size" />
                    <xsd:enumeration value="SizeID" />
                    <xsd:enumeration value="Dimension" />
                    <xsd:enumeration value="Dimensions" />
                    <xsd:enumeration value="Width" />
                    <xsd:enumeration value="Length" />
                    <xsd:enumeration value="JobNumber" />
                    <xsd:enumeration value="Location" />
                    <xsd:enumeration value="SecondaryLocation" />
                    <xsd:enumeration value="Supplier" />
                    <xsd:enumeration value="CountryOfOrigin" />
                    <xsd:enumeration value="MillOfOrigin" />
                    <xsd:enumeration value="PONumber" />
                    <xsd:enumeration value="BillOfLadingNumber" />
                    <xsd:enumeration value="HeatNumber" />
                    <xsd:enumeration value="HeatSerialNumber" />
                    <xsd:enumeration value="DeliveryDate" />
                    <xsd:enumeration value="Remarks" />
                    <xsd:enumeration value="OnOrder" />
                    <xsd:enumeration value="ReferenceNumber" />
                    <xsd:enumeration value="PartNumber" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="Value" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Display" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetInventoryTransactions">
    <xsd:annotation>
        <xsd:documentation>Retrieves the details of inventory transactions that have occured.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="LastTransactionID" type="xsd:integer" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            The new maximum inventory transaction ID.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="HasMoreTransactions" type="xsd:boolean" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            If true then the response was limited by the MaximumNumberOfRecordsToRetrieve value in the
                            request (or the default value if not specified in the request) and the GetInventoryTransactions
                            command should be executed again to get the remainder of the results.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="InventoryTransaction" type="fsresInventoryTransaction" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresInventoryTransaction">
    <xsd:annotation>
        <xsd:documentation>A single inventory transaction.  May include multiple individual changes/operations.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="TransactionID" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Unique identifier for the transaction.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="TransactionDateTime" type="xsd:dateTime" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Date and time that the transaction occured.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="DateActionOccured" type="xsd:date" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Date the action occured.
                    
                    This will usually be the same date that is in TransactionDateTime, the exception being if the action was back-dated in FabSuite.
                    
                    For example, if material was received in the shop on 7/31/2011 but not recorded in FabSuite until 8/1/2011 then
                        the TransactionDateTime will be 2011-08-01... and DateActionOccured will be 2011-07-31.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Username" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    User that performed the transaction.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="InventoryOperation" type="fsresInventoryOperation" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInventoryOperation">
    <xsd:annotation>
        <xsd:documentation>A single change as part of the transaction.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ReportableChanges" type="fsresReportableChanges" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    The types of changes caused by this operation of the transaction.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="OldRecord" type="fsresInventoryRecord" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    The old information of the record.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="NewRecord" type="fsresInventoryRecord" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    The new information of the record.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInventoryRecord">
    <xsd:annotation>
        <xsd:documentation>
        
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Type" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    The type of inventory record.
                    
                    INV - Inventory
                    INVHIST - Inventory History
                </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="INV" />
                    <xsd:enumeration value="INVHIST" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="ID" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    The unique identifier of the record.
                    
                    If this InventoryRecord is from the GetInventoryTransactions command then this
                        element will be the unique identifier of the log record.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Shape" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Grade" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Thickness" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Width" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CurrentPrice" type="fsCurrencyUnit" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Valuation" type="fsCurrency" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OriginalDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OriginalPrice" type="fsCurrencyUnit" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Job" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Location" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="HeatNo" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="HeatSerialNo" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BillOfLadingNo" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CountryOfOrigin" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MillOfOrigin" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PONumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Supplier" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DeliveryDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Remarks" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OnOrder" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReferenceNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PartNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="POItemNumber" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MillMark" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Sequence" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Category" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SubCategory" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReleaseNumber" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Kerf" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="KerfRipCut" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="KerfCrossCut" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PercentCombined" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="RemnantID" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ExternalInventoryID" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NestID" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TFSJob" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TFSDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TFSTime" type="xsd:time" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresReportableChanges">
    <xsd:annotation>
        <xsd:documentation>
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ReportableChange" minOccurs="1" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>
                    The type of change that the transaction caused.
                
                    Cancel
                        PO material cancelled.
                    Job Allocation
                        A change in the job reserve of inventory material.
                    Location
                        A change in the location or secondary location of inventory material.
                    Manual Inventory
                        A manual change to an inventory record.
                    Manual History
                        A manual change to an inventory history record.
                    Manual Purchase Order
                        A manual change to a purchase order record.
                    Quantity
                        A change in the quantity.
                    Receive - Inventory
                        Material received into inventory.
                    Receive - History
                        Material received directly into inventory history.
                    Reject
                        PO material rejected.
                    Reverse TFS
                        A record from Inventory History that has been reversed and put back into Inventory.
                    RTS
                        A drop/remnant from a cut that is returned to Inventory.
                    RTS - Revaluation Difference
                        In FabSuite there are settings to re-value a drop based on the length.
                        For example, a W16x36 that is less than 8'-0 long may not be short enough to scrap but
                            is not likely to be used and so can be set to be re-valued at 40% of the original price.
                            In the case of a 7'-0 drop, it will be added back into Inventory with 40% of the original price
                            and a 7'-0 length at the remaining 60% of the price will be added to Inventory History and
                            charged to the job that the cut was made for.  That 60% line item in Inventory History will
                            have the RevaluationDifference reportable change.
                    TFS
                        A line item that has been cut/taken-from-stock.  The material is added to Inventory History and charged to a job.
                    TFS - Charge
                        A drop from a cut that is charged to the job.
                        The amount of drop is greater than the Scrap setting in FabSuite but below the Charge setting.
                    TFS - Low Drop Waste
                        Amount charged to the job to account for a missing amount of material after a cut.
                        For example, a cutting detail expects 6' or drop but only 5'-6" is returned.
                            In this case 6" will be charged to the job as Low Drop Waste.
                    TFS - Scrap
                        A drop/remnant that is too small to be returned to Inventory (based on settings established in FabSuite).
                            The material is added to Inventory History and charged to the job that the cut was made for.
                    Un-Cancel
                        PO material that is un-cancelled.
                    Un-Receive
                        PO material that is un-received.
                    Un-Reject
                        PO material that is un-rejected.
                    Cost or Valuation
                        A line item that has been altered resulting in a change in the valuation/cost.
                </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
            <xsd:restriction base="xsd:token">
                <xsd:enumeration value="Cancel" />
                <xsd:enumeration value="Job Allocation" />
                <xsd:enumeration value="Location" />
                <xsd:enumeration value="Manual Inventory" />
                <xsd:enumeration value="Manual History" />
                <xsd:enumeration value="Manual Purchase Order" />
                <xsd:enumeration value="Quantity" />
                <xsd:enumeration value="Receive - Inventory" />
                <xsd:enumeration value="Receive - History" />
                <xsd:enumeration value="Reject" />
                <xsd:enumeration value="Reverse TFS" />
                <xsd:enumeration value="RTS" />
                <xsd:enumeration value="RTS - Revaluation Difference" />
                <xsd:enumeration value="TFS" />
                <xsd:enumeration value="TFS - Charge" />
                <xsd:enumeration value="TFS - Low Drop Waste" />
                <xsd:enumeration value="TFS - Scrap" />
                <xsd:enumeration value="Un-Cancel" />
                <xsd:enumeration value="Un-Receive" />
                <xsd:enumeration value="Un-Reject" />
                <xsd:enumeration value="Cost" />
                <xsd:enumeration value="Valuation" />
            </xsd:restriction>
        </xsd:simpleType>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetLoads">
    <xsd:annotation>
        <xsd:documentation>Retrieves the completed/remaining status and details by destination and load #.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Destination" type="fsresGetLoads_Destination" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetLoads_Destination">
    <xsd:annotation>
        <xsd:documentation>A shipping destination.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="DestinationName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Load" type="fsresGetLoads_Destination_Load" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Remaining" type="fsresGetLoads_Destination_Remaining" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetLoads_Destination_Load">
    <xsd:annotation>
        <xsd:documentation>The material completed through a station.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="LoadNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TrailerNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Carrier" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Capacity" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DateShipped" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AssignedQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>Quantity assigned to the truck.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="AssignedWeight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>Weight assigned to the truck.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="LoadedQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>Quantity loaded on the truck.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="LoadedWeight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>Weight loaded on the truck.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ToBeReturned" type="xsd:boolean" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    If the destination is an intermediate shipping location:
                    
                        Indicates if the material on this load is going to be returned to the shop before
                        being shipped to the jobsite.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ReturnedQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>Quantity shipped on this load that has been returned to the shop.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ReturnedWeight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>Weight shipped on this load that has been returned to the shop.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Material" type="fsresGetLoads_Destination_Load_Material" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Additional" type="fsresGetLoads_Destination_Load_Additional" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetLoads_Destination_Load_Material">
    <xsd:annotation>
        <xsd:documentation>Material on a load.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="MainMark" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PieceMark" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Sequence" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="AssignedQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="AssignedInstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AssignedWeight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LoadedQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LoadedInstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LoadedWeight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="QuantityAtLocation" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InstanceNumbersAtLocation" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReturnedQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReturnedInstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReturnedWeight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DrawingNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingRevision" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusCode" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusPurpose" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Shape" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Grade" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Finish" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetLoads_Destination_Load_Additional">
    <xsd:annotation>
        <xsd:documentation>Additional material on a load.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ProductionControlTrucksAdditionalID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Notes" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="WeightEach" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TotalWeight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetLoads_Destination_Remaining">
    <xsd:annotation>
        <xsd:documentation>The material remaining to be shipped to a destination.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="MaterialRemaining" type="fsresGetLoads_Destination_MaterialRemaining" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetLoads_Destination_MaterialRemaining">
    <xsd:annotation>
        <xsd:documentation>Material remaining to be shipped to a destination.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="MainMark" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PieceMark" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Sequence" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InspectionFailures" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InstanceNumbersWithInspectionFailures" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DrawingRevision" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DrawingFile" type="fsresFileData" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusCode" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusPurpose" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Shape" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Grade" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Finish" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetLots">
    <xsd:annotation>
        <xsd:documentation>Retrieves the list of lots in a job.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Lot" type="fsresGetLots_Lot" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetLots_Lot">
    <xsd:annotation>
        <xsd:documentation>A lot.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="AssemblyQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TotalQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetModelObjectIDs">
    <xsd:annotation>
        <xsd:documentation>Retrieves the list of model object IDs in a job.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1"><xsd:annotation><xsd:documentation>The JobNumber of the job</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1"><xsd:annotation><xsd:documentation>The ProductionControlID of the job</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="Assembly" type="fsresGetModelObjectIDs_Assembly" minOccurs="0" maxOccurs="unbounded"><xsd:annotation><xsd:documentation>Assembly Object</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetModelObjectIDs_Assembly">
    <xsd:annotation>
        <xsd:documentation>Assembly Object for connecting to Model</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="MainMark" type="xsd:token" minOccurs="1" maxOccurs="1"><xsd:annotation><xsd:documentation>Main Mark of Assembly</xsd:documentation></xsd:annotation></xsd:element>
        <xsd:element name="Seqiemce" type="xsd:integer" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Assembly Sequence</xsd:documentation></xsd:annotation></xsd:element>
        <xsd:element name="LotNumber" type="xsd:integer" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Assembly Lot Number</xsd:documentation></xsd:annotation></xsd:element>
        <xsd:element name="AssemblyID" type="fsresGetModelObjectIDs_AssemblyID" minOccurs="0" maxOccurs="unbounded"><xsd:annotation><xsd:documentation>Assembly ID Object</xsd:documentation></xsd:annotation></xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetModelObjectIDs_AssemblyID">
    <xsd:annotation>
        <xsd:documentation>Assembly ID for connecting to model</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ModelObjectID" type="xsd:token" minOccurs="1" maxOccurs="1"><xsd:annotation><xsd:documentation>Model Object ID of Assembly (IFC GUID)</xsd:documentation></xsd:annotation></xsd:element>
        <xsd:element name="Part" type="fsresGetModelObjectIDs_AssemblyID_Part" minOccurs="0" maxOccurs="unbounded"><xsd:annotation><xsd:documentation>Part Object</xsd:documentation></xsd:annotation></xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetModelObjectIDs_AssemblyID_Part">
    <xsd:annotation>
        <xsd:documentation>Assembly Part for connecting to model</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="PieceMark" type="xsd:token" minOccurs="1" maxOccurs="1"><xsd:annotation><xsd:documentation>Piece Mark of Assembly Part</xsd:documentation></xsd:annotation></xsd:element>
        <xsd:element name="ModelObjectID" type="xsd:token" minOccurs="1" maxOccurs="unbounded"><xsd:annotation><xsd:documentation>List of Model Object IDs for Assembly Part(IFC GUID)</xsd:documentation></xsd:annotation></xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetNestData">
    <xsd:annotation>
        <xsd:documentation>Retrieves the data file for the given nest.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="NestDataFile" type="fsresNestDataFile" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="ZippedNestFiles" type="fsresFileData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresNestDataFile">
    <xsd:annotation>
        <xsd:documentation>A nest data file.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Format" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="NestFile" type="fsresFileData" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetNestImage">
    <xsd:annotation>
        <xsd:documentation>Retrieves the image for the given nest.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="NestImage" type="fsresFileData" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Remnant" type="fsresGetNestImage_Remnant" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetNestImage_Remnant">
    <xsd:annotation>
        <xsd:documentation>An image of a remnant.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="RemnantName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="RemnantImage" type="fsresFileData" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresNestedInventory">
    <xsd:annotation>
        <xsd:documentation>Information on one inventory item from a nest included in GetNestStatus.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InventoryID" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Shape" type="xsd:token" minOccurs="1" maxOccurs="1" />    
        <xsd:element name="Grade" type="xsd:token" minOccurs="1" maxOccurs="1" />    
        <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:token" minOccurs="1" maxOccurs="1" />    
        <xsd:element name="Width" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Location" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="1" maxOccurs="1" />    
        <xsd:element name="HeatNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />    
        <xsd:element name="PONumber" type="xsd:token" minOccurs="0" maxOccurs="1" />    
        <xsd:element name="DeliveryDate" type="xsd:token" minOccurs="0" maxOccurs="1" />    
        <xsd:element name="OnOrder" type="xsd:token" minOccurs="1" maxOccurs="1" />    
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresNestedRequisition">
    <xsd:annotation>
        <xsd:documentation>Information on one requisition item from a nest included in GetNestStatus.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="RequisitionNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="RequisitionItemID" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Shape" type="xsd:token" minOccurs="1" maxOccurs="1" />    
        <xsd:element name="Grade" type="xsd:token" minOccurs="1" maxOccurs="1" />    
        <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:token" minOccurs="1" maxOccurs="1" />    
        <xsd:element name="Width" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DatePromised" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresNestStatus">
    <xsd:annotation>
        <xsd:documentation>Information on one nest included in GetNestStatus.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="NestID" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TotalQuantity" type="xsd:token" minOccurs="1" maxOccurs="1" />    
        <xsd:element name="NestedInventory" type="fsresNestedInventory" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="NestedRequisition" type="fsresNestedRequisition" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetNestStatus">
    <xsd:annotation>
        <xsd:documentation>Retrieves information on inventory and requisition items in a nest.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="NestStatus" type="fsresNestStatus" minOccurs="1" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresMaterialPrice">
    <xsd:annotation>
        <xsd:documentation>Pricing Data for material from a supplier</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Width" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Price" type="fsCurrencyUnit" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresAvailableMaterial">
    <xsd:annotation>
        <xsd:documentation>A type of material available from a supplier</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="SupplierName" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Name of supplier
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Shape" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Shape of material
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Grade" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Grade of material
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="1" maxOccurs="1" />
        <xsd:element name="MaterialPrice" type="fsresMaterialPrice" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>
                    A list of available material
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetPricingInformation">
    <xsd:annotation>
        <xsd:documentation>Retrieves the pricing information for either a job or the full system.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>
                            Filters applied to this command are echoed back.
                            
                            Nested Filters elements are supported.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="AvailableMaterial" type="fsresAvailableMaterial" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>
                            A list of available material
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetProductionControlJobInformation">
    <xsd:annotation>
        <xsd:documentation>Retrieves the full information of Production Control jobs.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="LastLogID" type="xsd:integer" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            The maximum log ID for production control jobs.
                            
                            This value should be passed to the GetProductionControlJobInformationTransactions command
                                so that only the new changes will be retrieved.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="ProductionControlJobInformation" type="fsresProductionControlJobInformation" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetProductionControlJobInformationTransactions">
    <xsd:annotation>
        <xsd:documentation>Retrieves the changes that have been made to Production Control job information.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="LastLogID" type="xsd:integer" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            The new maximum log ID for production control jobs.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="ProductionControlJobInformationTransaction" type="fsresProductionControlJobInformationTransaction" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlJobInformationTransaction">
    <xsd:annotation>
        <xsd:documentation>A transaction affecting the production control job information.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="TransactionType" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    add - NewProductionControlJobInformation will be specified
                    edit - OldProductionControlJobInformation and NewProductionControlJobInformation will be specified
                    delete - OldProductionControlJobInformation will be specified
                </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="add" />
                    <xsd:enumeration value="edit" />
                    <xsd:enumeration value="delete" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="OldProductionControlJobInformation" type="fsresProductionControlJobInformation" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NewProductionControlJobInformation" type="fsresProductionControlJobInformation" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlJobInformation">
    <xsd:annotation>
        <xsd:documentation>The full details of a production control job.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="JobDescription" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobLocation" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Notes" type="xsd:string" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingNotes" type="xsd:string" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GroupName" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GroupName2" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SoldTo" type="fsresCompanyData" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShipTo" type="fsresCompanyData" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProductionControlJobs">
    <xsd:annotation><xsd:documentation>Retrieves the list of production control jobs.</xsd:documentation></xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlJob" type="fsresGetProductionControlJobs_ProductionControlJob" minOccurs="0" maxOccurs="unbounded" >
                    <xsd:annotation><xsd:documentation>Production Control Job element returned</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="JobGroups" type="fsresGetProductionControlJobs_JobGroups" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>The job group from Tekla PowerFab</xsd:documentation></xsd:annotation>
                </xsd:element>                
                </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetProductionControlJobs_ProductionControlJob">
    <xsd:annotation><xsd:documentation>One production control job.</xsd:documentation></xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Production Control ID of this job</xsd:documentation></xsd:annotation>
        </xsd:element>                            
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Job Number string that is visible to user</xsd:documentation></xsd:annotation>
        </xsd:element>                
        <xsd:element name="JobDescription" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Job description</xsd:documentation></xsd:annotation>
        </xsd:element>                
        <xsd:element name="JobLocation" type="xsd:token" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Job location</xsd:documentation></xsd:annotation>
        </xsd:element>                
        <xsd:element name="GroupName" type="xsd:token" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Job Group Name</xsd:documentation></xsd:annotation>
        </xsd:element>                
        <xsd:element name="GroupName2" type="xsd:token" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Job Group 2 Name</xsd:documentation></xsd:annotation>
        </xsd:element>                
        <xsd:element name="ProjectID" type="xsd:integer" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>ProjectID of Project Management job linked to this Production Control Job</xsd:documentation></xsd:annotation>
        </xsd:element>                
        <xsd:element name="NumberCutLists" type="xsd:token" minOccurs="0" maxOccurs="1" >        
            <xsd:annotation><xsd:documentation>Count of the cut lists in this job</xsd:documentation></xsd:annotation>
        </xsd:element>                
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProductionControlJobs_JobGroups">
    <xsd:annotation><xsd:documentation>The job groups that currently exist in Tekla PowerFab.</xsd:documentation></xsd:annotation>
    <xsd:sequence>
        <xsd:element name="FilterGroupName" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>The job group that the current GetProductionControlJobs command is filtered by.</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="FilterGroupName2" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>The job group 2 that the current GetProductionControlJobs command is filtered by.</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="GroupName" type="xsd:token" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation><xsd:documentation>A job group that currently exists in Tekla PowerFab.</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="GroupName2" type="xsd:token" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation><xsd:documentation>A job group 2 that currently exists in Tekla PowerFab.</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:simpleType name="fsGetProductionShippingStatus_SummaryField">
    <xsd:restriction base="xsd:token">
        <xsd:enumeration value="Sequence" />
        <xsd:enumeration value="LotNumber" />
        <xsd:enumeration value="DrawingNumber" />
        <xsd:enumeration value="MainMark" />
        <xsd:enumeration value="PieceMark" />
        <xsd:enumeration value="InstanceNumber" />
        <xsd:enumeration value="AssemblyInstanceNumber" />
        <xsd:enumeration value="BarcodeSerialNumber" />
        <xsd:enumeration value="InstanceLocation" />
        <xsd:enumeration value="ApprovalStatus" />
        <xsd:enumeration value="Shape" />
        <xsd:enumeration value="Size" />
        <xsd:enumeration value="Dimensions" />
        <xsd:enumeration value="Width" />
        <xsd:enumeration value="Length" />
        <xsd:enumeration value="Grade" />
        <xsd:enumeration value="Finish" />
        <xsd:enumeration value="ReferenceNumber" />
        <xsd:enumeration value="Remark" />
        <xsd:enumeration value="Route" />
        <xsd:enumeration value="Category" />
        <xsd:enumeration value="SubCategory" />
        <xsd:enumeration value="PayCategory" />
        <xsd:enumeration value="ShippingRoute" />
        <xsd:enumeration value="ProductionCode" />
    </xsd:restriction>
</xsd:simpleType>

<xsd:complexType name="fsresGetProductionShippingStatus">
    <xsd:annotation>
        <xsd:documentation>Retrieves the production status for a job.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="ExcludeAccessoriesWithoutPieceLoadTracking" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
                <xsd:element name="StatusOfOnlyMainMembers" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
                <xsd:element name="SummaryField" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>The name of a summary field in the production status.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:simpleContent>
                            <xsd:extension base="fsGetProductionShippingStatus_SummaryField">
                                <xsd:attribute name="Index" type="xsd:integer" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The index of this field, used for brevity to reference this field by the records in the response.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                            </xsd:extension>
                        </xsd:simpleContent>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="ProductionStation" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>The name of a production station referenced by one or more records in the production status.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:simpleContent>
                            <xsd:extension base="xsd:token">
                                <xsd:attribute name="Index" type="xsd:integer" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The index of this production station, used for brevity to reference this station by the records in the response.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                            </xsd:extension>
                        </xsd:simpleContent>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="ShippingDestination" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>The name of a shipping destination referenced by one or more records in the production status.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:simpleContent>
                            <xsd:extension base="xsd:token">
                                <xsd:attribute name="Index" type="xsd:integer" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The index of this shipping destination, used for brevity to reference this destination by the records in the response.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                            </xsd:extension>
                        </xsd:simpleContent>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="FieldStation" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>The name of a field station referenced by one or more records in the production status.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:simpleContent>
                            <xsd:extension base="xsd:token">
                                <xsd:attribute name="Index" type="xsd:integer" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The index of this field station, used for brevity to reference this station by the records in the response.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                            </xsd:extension>
                        </xsd:simpleContent>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Filters applied to this command are echoed back.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Item" type="fsresGetProductionShippingStatus_Item" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="Offset" type="xsd:integer" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>startint at this record number</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="Limit" type="xsd:integer" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Limited to this many records</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="LimitHasMore" type="xsd:boolean" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>True if there are results beyond upper limit</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
                </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetProductionShippingStatus_Item">
    <xsd:annotation>
        <xsd:documentation>A record in the production status.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Field" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The valid of one of the summary fields, identified by the Index attribute.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:token">
                        <xsd:attribute name="Index" type="xsd:integer" use="required" />
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
        <xsd:element name="AssemblyQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="GrossWeight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TFSStatus" minOccurs="0" maxOccurs="1" nillable="true">
            <xsd:annotation>
                <xsd:documentation>The date of the last completed TFS, with attributes to specify the total and completed quantity.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="date-or-empty">
                        <xsd:attribute name="Total" type="xsd:integer" use="required" />
                        <xsd:attribute name="Completed" type="xsd:integer" use="required" />
                        <xsd:attribute name="TWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The total weight required to be taken from stock.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="CWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The weight that has been taken from stock.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="TGWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The total gross weight required to be taken from stock.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="CGWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The gross weight that has been taken from stock.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
        <xsd:element name="ProductionStation" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The date of the last completed entry for a production station, with attributes to specify the index (referring to the ProductionStation element in the response), total quantity, and completed quantity.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="date-or-empty">
                        <xsd:attribute name="Index" type="xsd:integer" use="required" />
                        <xsd:attribute name="Total" type="xsd:integer" use="required" />
                        <xsd:attribute name="Completed" type="xsd:integer" use="required" />
                        <xsd:attribute name="TWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The total weight required to complete this production station.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="CWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The weight that has completed this production station.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="TGWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The total gross weight required to complete this production station.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="CGWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The gross weight that has completed this production station.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
        <xsd:element name="ShippingDestination" type="fsresGetProductionShippingStatus_Item_ShippingDestination" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="FieldStation" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The date of the last completed entry for a field station, with attributes to specify the index (referring to the FieldStation element in the response), total quantity, and completed quantity.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="date-or-empty">
                        <xsd:attribute name="Index" type="xsd:integer" use="required" />
                        <xsd:attribute name="Total" type="xsd:integer" use="required" />
                        <xsd:attribute name="Completed" type="xsd:integer" use="required" />
                        <xsd:attribute name="TWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The total weight required to complete this production station.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="CWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The weight that has completed this production station.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="TGWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The total gross weight required to complete this production station.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="CGWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The gross weight that has completed this production station.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>        
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProductionShippingStatus_Item_ShippingDestination">
    <xsd:annotation>
        <xsd:documentation>A shipping destination in the production status.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ShipStatus" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The date of the last completed entry for a shipping destination, with attributes to specify the index (referring to the ShippingDestination element in the response), total quantity, and completed quantity.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="date-or-empty">
                        <xsd:attribute name="Index" type="xsd:integer" use="required" />
                        <xsd:attribute name="Total" type="xsd:integer" use="required" />
                        <xsd:attribute name="Completed" type="xsd:integer" use="required" />
                        <xsd:attribute name="TWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The total weight required to ship to this destination.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="CWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The completed weight that has been shipped to this destination.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="TGWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The total gross weight required to ship to this destination.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="CGWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The completed gross weight that has been shipped to this destination.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
        <xsd:element name="LoadNumber" type="xsd:integer" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ReturnStatus" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The date of the last return entry for a shipping destination, with attributes to specify the total and completed quantity.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="date-or-empty">
                        <xsd:attribute name="Total" type="xsd:integer" use="required" />
                        <xsd:attribute name="Completed" type="xsd:integer" use="required" />
                        <xsd:attribute name="TWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The total weight required to be returned from this destination.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="CWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The weight that has been returned from this destination.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="TGWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The total gross weight required to be returned from this destination.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="CGWt" type="xsd:decimal" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>The gross weight that has been returned from this destination.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectSchedule">
    <xsd:annotation>
        <xsd:documentation>Retrieves the breakdown elements, tasks, and task links for a baseline plan - optionally at a snapshot.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProjectScheduleBaselinePlan" type="fsresProjectSchedule_ProjectScheduleBaselinePlan" minOccurs="1" maxOccurs="1" />
                <xsd:element name="ProjectScheduleSnapshot" type="fsresProjectSchedule_ProjectScheduleSnapshot" minOccurs="0" maxOccurs="1" />
                <xsd:element name="ProjectScheduleBreakdownElements" type="fsresProjectSchedule_ProjectScheduleBreakdownElements" minOccurs="1" maxOccurs="1" />
                <xsd:element name="ProjectScheduleTasks" type="fsresProjectSchedule_ProjectScheduleTasks" minOccurs="1" maxOccurs="1" />
                <xsd:element name="ProjectScheduleTaskLinks" type="fsresProjectSchedule_ProjectScheduleTaskLinks" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectScheduleBaselinePlans">
    <xsd:annotation>
        <xsd:documentation>Retrieves the baseline plans for a project.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProjectScheduleBaselinePlan" type="fsresProjectSchedule_ProjectScheduleBaselinePlan" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectScheduleSnapshots">
    <xsd:annotation>
        <xsd:documentation>Retrieves the snapshots for a baseline plan.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProjectScheduleSnapshot" type="fsresProjectSchedule_ProjectScheduleSnapshot" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProjectSchedule_ProjectScheduleBaselinePlan">
    <xsd:annotation>
        <xsd:documentation>A schedule baseline plan.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ScheduleBaselineID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="BaselineDateTime" type="xsd:dateTime" minOccurs="1" maxOccurs="1" />
        <xsd:element name="BaselineSetDateTime" type="xsd:dateTime" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LastStatusUpdate" type="xsd:dateTime" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IsCurrent" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ScheduleCalendar" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="BreakdownField1" minOccurs="0" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Sequence" />
                    <xsd:enumeration value="Lot #" />
                    <xsd:enumeration value="Category" />
                    <xsd:enumeration value="Sub-Category" />
                    <xsd:enumeration value="Pay Category" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="BreakdownField2" minOccurs="0" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Sequence" />
                    <xsd:enumeration value="Lot #" />
                    <xsd:enumeration value="Category" />
                    <xsd:enumeration value="Sub-Category" />
                    <xsd:enumeration value="Pay Category" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="BreakdownField3" minOccurs="0" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Sequence" />
                    <xsd:enumeration value="Lot #" />
                    <xsd:enumeration value="Category" />
                    <xsd:enumeration value="Sub-Category" />
                    <xsd:enumeration value="Pay Category" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="BreakdownField4" minOccurs="0" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Sequence" />
                    <xsd:enumeration value="Lot #" />
                    <xsd:enumeration value="Category" />
                    <xsd:enumeration value="Sub-Category" />
                    <xsd:enumeration value="Pay Category" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="BreakdownField5" minOccurs="0" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Sequence" />
                    <xsd:enumeration value="Lot #" />
                    <xsd:enumeration value="Category" />
                    <xsd:enumeration value="Sub-Category" />
                    <xsd:enumeration value="Pay Category" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="BaselineQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BaselineAssemblyQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BaselineWeight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ActualQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ActualAssemblyQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ActualWeight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProjectSchedule_ProjectScheduleSnapshot">
    <xsd:annotation>
        <xsd:documentation>A snapshot of a schedule baseline plan.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ScheduleSnapshotID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ScheduleBaselineID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SnapshotDateTime" type="xsd:dateTime" minOccurs="1" maxOccurs="1" />
        <xsd:element name="User" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Transaction" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IsSavepoint" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProjectSchedule_ProjectScheduleBreakdownElements">
    <xsd:annotation>
        <xsd:documentation>The breakdown elements in a baseline plan.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ProjectScheduleBreakdownElement" type="fsresProjectSchedule_ProjectScheduleBreakdownElement" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProjectSchedule_ProjectScheduleBreakdownElement">
    <xsd:annotation>
        <xsd:documentation>A schedule breakdown element.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ScheduleBreakdownElementID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ScheduleBaselineID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ParentScheduleBreakdownElementID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Level" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Priority" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="BreakdownField" minOccurs="1" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Sequence" />
                    <xsd:enumeration value="Lot #" />
                    <xsd:enumeration value="Category" />
                    <xsd:enumeration value="Sub-Category" />
                    <xsd:enumeration value="Pay Category" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="BreakdownValue" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BaselineQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BaselineAssemblyQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BaselineWeight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ActualQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ActualAssemblyQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ActualWeight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LinkScheduleBreakdownElementID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LinkToPrevious" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LinkPosition" minOccurs="0" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="SS" />
                    <xsd:enumeration value="SF" />
                    <xsd:enumeration value="FS" />
                    <xsd:enumeration value="FF" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="LinkMinimumInterval" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LinkMaximumInterval" type="xsd:integer" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProjectSchedule_ProjectScheduleTasks">
    <xsd:annotation>
        <xsd:documentation>The tasks in a baseline plan.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ProjectScheduleTask" type="fsresProjectSchedule_ProjectScheduleTask" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProjectSchedule_ProjectScheduleTask">
    <xsd:annotation>
        <xsd:documentation>A schedule task.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ScheduleTaskID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ScheduleBaselineID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ParentScheduleTaskID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ScheduleBreakdownElementID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TaskID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Level" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Priority" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TaskType" minOccurs="1" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Summary" />
                    <xsd:enumeration value="Start/End" />
                    <xsd:enumeration value="Milestone" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="StatusAggregate" minOccurs="1" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="No Factor" />
                    <xsd:enumeration value="By Quantity" />
                    <xsd:enumeration value="By Weight" />
                    <xsd:enumeration value="By Duration" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="StatusLink"  type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="StatusLinkStation"  type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OriginalEstimate" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OriginalEstimateOverridden" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="UnreleasedHours" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PlannedHours" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PlannedHoursAdjustment" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PercentReleased" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PercentReleasedOverridden" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BaselineQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BaselineWeight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BaselineStartDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BaselineEndDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BaselineDuration" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BaselinePlannedHours" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ActualQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ActualWeight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ActualStartDate" type="xsd:date" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ActualEndDate" type="xsd:date" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ActualDuration" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ActualLinkedHours" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ActualRegularHours" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ActualOvertimeHours" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ActualTotalHours" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AssignedToUser" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Resource" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PercentCompleted" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PredecessorSlack" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SuccessorSlack" type="xsd:integer" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProjectSchedule_ProjectScheduleTaskLinks">
    <xsd:annotation>
        <xsd:documentation>The task links in a baseline plan.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ProjectScheduleTaskLink" type="fsresProjectSchedule_ProjectScheduleTaskLink" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProjectSchedule_ProjectScheduleTaskLink">
    <xsd:annotation>
        <xsd:documentation>A dependency link between two schedule tasks.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ScheduleTaskLinkID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ScheduleBaselineID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FromScheduleTaskID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ToScheduleTaskID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LinkPosition" minOccurs="1" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="SS" />
                    <xsd:enumeration value="SF" />
                    <xsd:enumeration value="FS" />
                    <xsd:enumeration value="FF" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="MinimumInterval" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="MaximumInterval" type="xsd:integer" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus">
    <xsd:annotation>
        <xsd:documentation>
            Retrieves summary information about the job including:
                Assemblies
                Drawings
                Sequences
                Lots
                RFIs
                Change Orders
                Transmittals
                Cut Lists
                Material Status
                Production Status
                Shipping Status
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Production Control ID of Production Control Job linked to this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Job Number of project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="JobDescription" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Description of Project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="JobLocation" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Location of Project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="GroupName" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Group Name of Project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="GroupName2" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Group Name 2 of Project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ProjectID" type="xsd:integer" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Project ID of Project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="HasProjectSchedule" type="xsd:boolean" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>True if this project has a project schedule</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Display units for this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="Assemblies" type="fsresGetProjectStatus_Assemblies" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Assemblies in this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="Drawings" type="fsresGetProjectStatus_Drawings" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Drawings in this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="Sequences" type="fsresGetProjectStatus_Sequences" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Sequences in this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="Lots" type="fsresGetProjectStatus_Lots" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Lots in this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="Categories" type="fsresGetProjectStatus_Categories" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Categories in this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="SubCategories" type="fsresGetProjectStatus_SubCategories" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>SubCategories in this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="Transmittals" type="fsresGetProjectStatus_Documents" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Transmittals in this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="IncommingRFIs" type="fsresGetProjectStatus_Documents" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Incoming RFIs in this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="OutgoingRFIs" type="fsresGetProjectStatus_Documents" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Outgoing RFIs in this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ChangeOrders" type="fsresGetProjectStatus_Documents" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Change Orders in this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="CutLists" type="fsresGetProjectStatus_CutLists" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Cut Lists in this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="MaterialStatus" type="fsresGetProjectStatus_MaterialStatus" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Material Status for this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ProductionStatus" type="fsresGetProjectStatus_ProductionStatus" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Production Status for this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ShipStatus" type="fsresGetProjectStatus_ShipStatus" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Shipping Status for this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="TrimbleConnect" type="fsresGetProjectStatus_TrimbleConnect" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Trimble Connect Status for this project</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1">
                    <xsd:annotation><xsd:documentation>The given filters constructed as a FilterSet object that can be passed into other commands that require this format.</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="PRJFilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1">
                    <xsd:annotation><xsd:documentation>The given filters converted to a project management FilterSet object that can be passed into other commands that require this format.</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>                
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_QuantityWeight">
    <xsd:annotation>
        <xsd:documentation>
            Quantity by weight object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Quantity</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Weight with UOM</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_Assemblies">
    <xsd:annotation>
        <xsd:documentation>
            Assemblies object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Quantity</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_Drawings">
    <xsd:annotation>
        <xsd:documentation>
            Drawings object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Total" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Total Drawings</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="TotalApproved" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Total Approved Drawings</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_Sequences">
    <xsd:annotation>
        <xsd:documentation>
            Sequences object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Total" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Total Sequences</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_Lots">
    <xsd:annotation>
        <xsd:documentation>
            Lots object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Total" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Total Log Numbers</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_Categories">
    <xsd:annotation>
        <xsd:documentation>
            Categories object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Total" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Total Categories</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_SubCategories">
    <xsd:annotation>
        <xsd:documentation>
            SubCategories object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Total" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Total SubCategories</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_Documents">
    <xsd:annotation>
        <xsd:documentation>
            Documents object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Total" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Total Documents</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Outstanding" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Total Documents Outstanding</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Overdue" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Total Documents Overdue</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_CutLists">
    <xsd:annotation>
        <xsd:documentation>
            Cut Lists object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="CutLists" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Total number of Cut Lists</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="CuttingDetails" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Total number of Cutting Details</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="TotalCut" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Number of Cutting details that are cut</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="TotalInvalidated" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Number of Cutting details that are invalidated</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="TotalValidationRequired" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Number of Cutting details that have validation required</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="TotalOnOrder" type="xsd:integer" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Number of Cutting details that are on order</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="CutList" type="fsresGetProjectStatus_CutList" minOccurs="0" maxOccurs="unbounded" >
                    <xsd:annotation><xsd:documentation>List of Cut List Objects</xsd:documentation></xsd:annotation>
                </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_CutList">
    <xsd:annotation>
        <xsd:documentation>
            Cut List object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>    
    <xsd:sequence>
        <xsd:element name="CutListID" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Cut List ID</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="CutListName" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Cut List Name</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="DateCreated" type="xsd:date" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Date Cut list was created</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="DateTimeCreated" type="xsd:dateTime" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Date/Time Cut list was created</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="DateTimeLastChange" type="xsd:dateTime" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Date/Time of last change to cut list</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="DateRequired" type="xsd:date" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Date cut list is required</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="CuttingDetails" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Number of cutting details on this cut list</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="TotalCut" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Number of cutting details cut</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="TotalInvalidated" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Number of cutting details invalidated</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="TotalValidationRequired" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Number of cutting details with validation required</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="TotalOnOrder" type="xsd:integer" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Number of cutting details with stock on order</xsd:documentation></xsd:annotation>
                </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_MaterialStatus">
    <xsd:annotation>
        <xsd:documentation>
            Material Status object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="MaterialTotal" type="fsresGetProjectStatus_QuantityWeight" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Total Quantity and weight of material</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="TFS" type="fsresGetProjectStatus_QuantityWeight" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Quantity and weight of material taken from stock</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="AllocatedInStock" type="fsresGetProjectStatus_QuantityWeight" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Quantity and weight of material allocated and in stock</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="AllocatedOnOrder" type="fsresGetProjectStatus_QuantityWeight" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Quantity and weight of material allocated and on order</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="AllocatedRequisition" type="fsresGetProjectStatus_QuantityWeight" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Quantity and weight of material allocated and on a requisition</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="NotAllocated" type="fsresGetProjectStatus_QuantityWeight" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Quantity and weight of material not allocated</xsd:documentation></xsd:annotation>
                </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_ProductionStatus">
    <xsd:annotation>
        <xsd:documentation>
            Production Status object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Station" type="fsresGetProjectStatus_ProductionStatus_Station" minOccurs="0" maxOccurs="unbounded" >
                    <xsd:annotation><xsd:documentation>Production status for a station</xsd:documentation></xsd:annotation>
                </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_ProductionStatus_Station">
    <xsd:annotation>
        <xsd:documentation>
            Production Status - Station object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="StationName" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Station Name</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Type" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Production or Field Station</xsd:documentation></xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Production" />
                    <xsd:enumeration value="Field" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="Required" type="fsresGetProjectStatus_QuantityWeight" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Quantity and Weight of Material required</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Completed" type="fsresGetProjectStatus_QuantityWeight" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Quantity and weight of material completed</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Remaining" type="fsresGetProjectStatus_QuantityWeight" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Quantity and weight of material remaining</xsd:documentation></xsd:annotation>
                </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_ShipStatus">
    <xsd:annotation>
        <xsd:documentation>
            Ship Status object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Destination" type="fsresGetProjectStatus_ShipStatus_Destination" minOccurs="0" maxOccurs="unbounded" >
                    <xsd:annotation><xsd:documentation>List of destinations this job ships to</xsd:documentation></xsd:annotation>
                </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_ShipStatus_Destination">
    <xsd:annotation>
        <xsd:documentation>
            Ship Status - Destination object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="DestinationName" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Name of Destination</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Required" type="fsresGetProjectStatus_QuantityWeight" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Quantity and weight of material required to ship here</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Completed" type="fsresGetProjectStatus_QuantityWeight" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Quantity and weight of material completed shipping here</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Remaining" type="fsresGetProjectStatus_QuantityWeight" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Quantity and weight of material remaining to be shipped here</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetProjectStatus_TrimbleConnect">
    <xsd:annotation>
        <xsd:documentation>
            Project Status for Trimble Connect object for getProjectStatus
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ProjectID" type="xsd:token" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Project ID of project in Trimble Connect</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Region" type="xsd:token" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Region of Trimble Connect Project</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="DefaultViewID" type="xsd:token" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>ID of default view</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="DefaultViewName" type="xsd:token" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Name of default view</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetPurchaseOrderInformation">
    <xsd:annotation>
        <xsd:documentation>Retrieves the full information of Purchase Orders.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="LastLogID" type="xsd:integer" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            The maximum log ID for purchase orders.
                            
                            This value should be passed to the GetPurchaseOrderInformationTransactions command
                                so that only the new changes will be retrieved.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="PurchaseOrderInformation" type="fsresPurchaseOrderInformation" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetPurchaseOrderInformationTransactions">
    <xsd:annotation>
        <xsd:documentation>Retrieves the changes that have been made to Purchase Order information.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="LastLogID" type="xsd:integer" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            The new maximum log ID for purchase orders.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="PurchaseOrderInformationTransaction" type="fsresPurchaseOrderInformationTransaction" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresPurchaseOrderInformationTransaction">
    <xsd:annotation>
        <xsd:documentation>A transaction affecting the purchase order information.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="TransactionType" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    add - NewPurchaseOrderInformation will be specified
                    edit - OldPurchaseOrderInformation and NewPurchaseOrderInformation will be specified
                    delete - OldPurchaseOrderInformation will be specified
                </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="add" />
                    <xsd:enumeration value="edit" />
                    <xsd:enumeration value="delete" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="OldPurchaseOrderInformation" type="fsresPurchaseOrderInformation" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NewPurchaseOrderInformation" type="fsresPurchaseOrderInformation" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresPurchaseOrderInformation">
    <xsd:annotation>
        <xsd:documentation>The full details of a purchase order.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="PurchaseOrderID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="PONumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="PODate" type="xsd:date" minOccurs="0" maxOccurs="1" />
                <xsd:element name="ReferenceNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="ConfirmedWith" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="OrderedBy" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="JobName" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="JobLocation" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="MillSpecifications" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="CustomerApplications" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="MaximumLiftCapability" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="UnloadInstructions" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="SpecialInstructions" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="BundleInstructions" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="POType" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="ShippingMethod" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="FOB" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="PaymentTerms" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="DiscountPercent" type="decimal-or-empty" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Freight" type="decimal-or-empty" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Adjustment" type="decimal-or-empty" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Remark" type="xsd:string" minOccurs="0" maxOccurs="1" />        
                <xsd:element name="GroupName" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="GroupName2" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Vendor" type="fsresCompanyData" minOccurs="1" maxOccurs="1" />
                <xsd:element name="ShipTo" type="fsresCompanyData" minOccurs="0" maxOccurs="1" />
                <xsd:element name="BillTo" type="fsresCompanyData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresCompanyData">
    <xsd:sequence>
        <xsd:element name="CompanyName" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Company name.
                    
                    For sole proprietors use the person's first and last names.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="CompanyCode" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Code identifying the company.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="FirmType" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    "Firm type" is how FabSuite categorizes company records.
                    Possible choices include:
                        "Architect"        (Used for Architectural firms)
                        "Associate"        (Used for …)
                        "Client"            (Used for …)
                        "Coating"            (Used for subcontract surface prep, coating, and galvanizing firms)
                        "Contractor"        (Used for…)
                        "Customer"        (Used for contracting companies.  This is the company that pays the FabSuite User)
                        "Detailer"        (Used for detailing firms)
                        "Engineer"        (Used for engineering firms)
                        "Erector"            (Used for firms that will be erecting steel on the job site)
                        "Fabricator"        (Used for firms that will be acting as fabricators)
                        "Owner"            (Used for firms that will ultimately own the project)
                        "Subcontractor"    (Used for subcontracting firms)
                        "Supplier"        (Used for vendors and other companies that PO's will be issued to)
                        "Unknown"            (Used when you don't know or don't want to guess the firm type)
                </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Architect" />
                    <xsd:enumeration value="Associate" />
                    <xsd:enumeration value="Client" />
                    <xsd:enumeration value="Coating" />
                    <xsd:enumeration value="Contractor" />
                    <xsd:enumeration value="Customer" />
                    <xsd:enumeration value="Detailer" />
                    <xsd:enumeration value="Engineer" />
                    <xsd:enumeration value="Erector" />
                    <xsd:enumeration value="Fabricator" />
                    <xsd:enumeration value="My Company" />
                    <xsd:enumeration value="Owner" />
                    <xsd:enumeration value="Subcontractor" />
                    <xsd:enumeration value="Supplier" />
                    <xsd:enumeration value="Unknown" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="PhoneNumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Telephone number.
                    
                    Prefix country codes with "+".
                    
                    Prefix extensions with either "ext.:" or "x:"
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="FaxNumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Facsimile number.
                    
                    Prefix country codes with "+".
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="EmailAddress" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>Email address</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Notes" type="xsd:string" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Notes about the company.
                    
                    Carriage returns are acceptable.
                    
                    Rich and HTML formatting will not be preserved.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="BillingAddress" type="fsresAddressInfo" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingAddress" type="fsresAddressInfo" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Contact" type="fsresContactInfo" minOccurs="0" maxOccurs="1" />
        <xsd:any minOccurs="0" maxOccurs="unbounded" namespace="##other">
            <xsd:annotation>
                <xsd:documentation>
                    Place element(s) beyond the scope of the schema here.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:any>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresAddressInfo">
    <xsd:sequence>
        <xsd:element name="Address1" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    First line of street address or PO Box.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Address2" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Second line of street address or suite number.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="City" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>City name.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="State" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>State, province, suburb or county name.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="PostalCode" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>Zip or postal code.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Country" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Country name (long or short form).
                    
                    Example: United States of America
                    Example: USA
                    Example: England
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:any minOccurs="0" maxOccurs="unbounded" namespace="##other">
            <xsd:annotation>
                <xsd:documentation>
                    Place element(s) beyond the scope of the schema here.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:any>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresContactInfo">
    <xsd:sequence>
        <xsd:element name="ContactName" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>Name of person within a firm.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="PhoneNumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Telephone number.
                    
                    Prefix country codes with "+".
                    
                    Prefix extensions with either "ext.:" or "x:"
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="FaxNumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Facsimile number.
                    
                    Prefix country codes with "+".
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="MobileNumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Cellular or mobile telephone number for person.
                    
                    Prefix country codes with "+".
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="PagerNumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Pager or text messaging number for person at company.
                    
                    Prefix country codes with "+".
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="EmailAddress" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>Email address</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:any minOccurs="0" maxOccurs="unbounded" namespace="##other">
            <xsd:annotation>
                <xsd:documentation>
                    Place element(s) beyond the scope of the schema here.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:any>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetReportTypes">
    <xsd:annotation>
        <xsd:documentation>Retrieves the list of report types and reports for the given report group.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ReportGroup" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="DefaultOptions" type="fsresGetReportTypes_DefaultOptions" minOccurs="1" maxOccurs="1" />
                <xsd:element name="ReportType" type="fsresGetReportTypes_ReportType" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetReportTypes_DefaultOptions">
    <xsd:sequence>
        <xsd:element name="DefaultOption" type="fsresGetReportTypes_DefaultOption" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetReportTypes_DefaultOption">
    <xsd:sequence>
        <xsd:element name="OptionName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DfeaultValue" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetReportTypes_ReportType">
    <xsd:sequence>
        <xsd:element name="ReportTypeID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="IsDefault" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Report" type="fsresGetReportTypes_ReportType_Report" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetReportTypes_ReportType_Report">
    <xsd:sequence>
        <xsd:element name="ReportID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ReportGUID" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Title" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="fsresGetRFIDetails">
    <xsd:annotation>
        <xsd:documentation>Retrieves the details for one or more RFIs.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="RequestForInformationID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
                <xsd:element name="RFINumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="FilterSet" type="fsresGetFilterSelections_FilterSet" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Filters applied to this command are echoed back.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="RFIs" type="fsresRFIDetails_RFIs" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresRFIDetails_RFIs">
    <xsd:annotation>
        <xsd:documentation>The details for one or more RFIs.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="RFI" type="fsresRFIDetails_RFI" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="fsresRFIDetails_RFI">
    <xsd:annotation>
        <xsd:documentation>The details for one RFI.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="RequestForInformationID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="RFINumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="RFIDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Subject" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Body" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ResponseRequestedBy" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Outstanding" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Overdue" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Status" minOccurs="0" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Open" />
                    <xsd:enumeration value="Closed" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="Originator" type="fsresRFIDetails_Originator" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Recipient" type="fsresRFIDetails_Recipient" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="CC" type="fsresRFIDetails_Recipient" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="AttachedFiles" type="fsresRFIDetails_AttachedFiles" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresRFIDetails_Originator">
    <xsd:annotation>
        <xsd:documentation>The details for one RFI originator.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="FirmType" minOccurs="1" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Architect" />
                    <xsd:enumeration value="Associate" />
                    <xsd:enumeration value="Client" />
                    <xsd:enumeration value="Coating" />
                    <xsd:enumeration value="Contractor" />
                    <xsd:enumeration value="Customer" />
                    <xsd:enumeration value="Detailer" />
                    <xsd:enumeration value="Engineer" />
                    <xsd:enumeration value="Erector" />
                    <xsd:enumeration value="Fabricator" />
                    <xsd:enumeration value="My Company" />
                    <xsd:enumeration value="Owner" />
                    <xsd:enumeration value="Subcontractor" />
                    <xsd:enumeration value="Supplier" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="Firm" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Contact" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="RFINumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresRFIDetails_Recipient">
    <xsd:annotation>
        <xsd:documentation>The details for one RFI recipient.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="FirmType" minOccurs="1" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Architect" />
                    <xsd:enumeration value="Associate" />
                    <xsd:enumeration value="Client" />
                    <xsd:enumeration value="Coating" />
                    <xsd:enumeration value="Contractor" />
                    <xsd:enumeration value="Customer" />
                    <xsd:enumeration value="Detailer" />
                    <xsd:enumeration value="Engineer" />
                    <xsd:enumeration value="Erector" />
                    <xsd:enumeration value="Fabricator" />
                    <xsd:enumeration value="My Company" />
                    <xsd:enumeration value="Owner" />
                    <xsd:enumeration value="Subcontractor" />
                    <xsd:enumeration value="Supplier" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="Firm" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Contact" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="RFINumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DateSent" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SentVia" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DateReceived" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ResponseDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ResponseDetails" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresRFIDetails_AttachedFiles">
    <xsd:annotation>
        <xsd:documentation>The files attached to an RFI.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="AttachedFile" type="fsresDocument" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetRouteDetails">
    <xsd:annotation>
        <xsd:documentation>Retrieves the details of the given route.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="RouteID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Route" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="RouteStation" type="fsresGetRouteDetails_RouteStation" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetRouteDetails_RouteStation">
    <xsd:sequence>
        <xsd:element name="StationID" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Type" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Production or Field Station
                </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Production" />
                    <xsd:enumeration value="Field" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>        
        <xsd:element name="IsTFSStation" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetSequences">
    <xsd:annotation>
        <xsd:documentation>Retrieves the list of sequence in a job.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="InspectionTest" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>The title of an inspection test referenced by one or more sequences in the response.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:simpleContent>
                            <xsd:extension base="xsd:token">
                                <xsd:attribute name="Index" type="xsd:integer" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The index of this test, used for brevity to reference this test by the sequence in the response.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                                <xsd:attribute name="Category" type="xsd:token" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The category of the inspection test.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                            </xsd:extension>
                        </xsd:simpleContent>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Sequence" type="fsresGetSequences_Sequence" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetSequences_Sequence">
    <xsd:annotation>
        <xsd:documentation>A sequence.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Sequence" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="AssemblyQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TotalQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InspectionTest" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The number of tests of the type identified by the Index attribute that have been performed on the sequence.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:integer">
                        <xsd:attribute name="Index" type="xsd:integer" use="required">
                            <xsd:annotation>
                                <xsd:documentation>The index of this test, corresponds to the inspection test with a matching index in the InspectionTest element of the response element.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="HasFailures" type="xsd:boolean" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>Indicates if there are any outstanding failures.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetStations">
    <xsd:annotation>
        <xsd:documentation>Retrieves the completed/remaining status and details by station.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Production Control ID for job</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Job Number</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1">
                    <xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Display units</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="Station" type="fsresGetStations_Station" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation><xsd:documentation>List of Tracking stations</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetStations_Station">
    <xsd:annotation>
        <xsd:documentation>A tracking station.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="StationName" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Station Name</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Type" minOccurs="1" maxOccurs="1">
                    <xsd:annotation><xsd:documentation>Production or Field Station</xsd:documentation></xsd:annotation>
                    <xsd:simpleType>
                        <xsd:restriction base="xsd:token">
                            <xsd:enumeration value="Production" />
                            <xsd:enumeration value="Field" />
                        </xsd:restriction>
                    </xsd:simpleType>
                </xsd:element>
        <xsd:element name="Completed" type="fsresGetStations_Station_Completed" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Information on material that has been completed through this station.</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Remaining" type="fsresGetStations_Station_Remaining" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Information on material remaining to be processed through this station.</xsd:documentation></xsd:annotation>
                </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetStations_Station_Completed">
    <xsd:annotation>
        <xsd:documentation>The material completed through a station.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="MaterialCompleted" type="fsresGetStations_Station_MaterialCompleted" minOccurs="0" maxOccurs="unbounded" >
                    <xsd:annotation><xsd:documentation>Information on material that has been completed through this station</xsd:documentation></xsd:annotation>
                </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetStations_Station_MaterialCompleted">
    <xsd:annotation>
        <xsd:documentation>Material completed through a station.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="MainMark" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Main Mark</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="MainPiece" type="xsd:boolean" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Main Piece</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="PieceMark" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Piece mark</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Sequence" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Sequence</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Lot Number</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Quantity</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="InstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Instance Numbers</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Weight, with Units of measure</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="DrawingNumber" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Drawing Number</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="DrawingRevision" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Drawing Revision</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="ApprovalStatusCode" type="xsd:token" minOccurs="0" maxOccurs="1">
                    <xsd:annotation><xsd:documentation>Approval Status Code</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="ApprovalStatusPurpose" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Approval Status Purpose</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Shape" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Shape</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Dimensions, with isMetric attribute</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Length, with UOM attribute</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Grade" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Grade</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Finish" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Finish</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Route" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Route</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="NextStation" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>NextStation</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="CompletedBy" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Completed by user</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="DateCompleted" type="xsd:date" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Date completed</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="TimeCompleted" type="xsd:time" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Time completed</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Hours" type="xsd:decimal" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Hours to be billed for this part</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="BatchID" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Batch ID</xsd:documentation></xsd:annotation>
                </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetStations_Station_Remaining">
    <xsd:annotation>
        <xsd:documentation>The material remaining to be completed through a station.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="MaterialRemaining" type="fsresGetStations_Station_MaterialRemaining" minOccurs="0" maxOccurs="unbounded" >
                    <xsd:annotation><xsd:documentation>The material remaining to be completed through a station</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Users" type="fsresUsers" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Users</xsd:documentation></xsd:annotation>
                </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetStations_Station_MaterialRemaining">
    <xsd:annotation>
        <xsd:documentation>Material remaining to be completed through a station.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="MainMark" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Main Mark</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="MainPiece" type="xsd:boolean" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Main Piece</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="PieceMark" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Piece mark</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Sequence" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Sequence</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Lot Number</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="TotalQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Total Quantity</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Quantity</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="InspectionFailures" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Failed inspections</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="InstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Instance Numbers</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="InstanceNumbersWithInspectionFailures" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Instance numbers with failed Inspections</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Weight, with Units of measure</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="DrawingNumber" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Drawing Number</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="DrawingRevision" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Drawing Revision</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="DrawingFile" type="fsresFileData" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Drawing File object</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="ApprovalStatusCode" type="xsd:token" minOccurs="0" maxOccurs="1">
                    <xsd:annotation><xsd:documentation>Approval Status Code</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="ApprovalStatusPurpose" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Approval Status Purpose</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Shape" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Shape</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Dimensions, with isMetric attribute</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Length, with UOM attribute</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Grade" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Grade</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Finish" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Finish</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="Route" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Route</xsd:documentation></xsd:annotation>
                </xsd:element>
        <xsd:element name="NextStation" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>NextStation</xsd:documentation></xsd:annotation>
                </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresUsers">
    <xsd:annotation>
        <xsd:documentation>Users/Employees that can be selected from for completing the material through the station.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="User" type="fsresUsers_User" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresUsers_User">
    <xsd:annotation>
        <xsd:documentation>A User/Employee that can be selected from for completing the material through the station.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Username" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LastName" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FirstName" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetSubCategories">
    <xsd:annotation>
        <xsd:documentation>Retrieves the list of sub-categories in a job.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="InspectionTest" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>The title of an inspection test referenced by one or more sub-categories in the response.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:simpleContent>
                            <xsd:extension base="xsd:token">
                                <xsd:attribute name="Index" type="xsd:integer" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The index of this test, used for brevity to reference this test by the sub-categories in the response.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                                <xsd:attribute name="Category" type="xsd:token" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>The category of the inspection test.</xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                            </xsd:extension>
                        </xsd:simpleContent>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Filters applied to this command are echoed back.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" />
                <xsd:element name="SubCategory" type="fsresGetCategories_SubCategory" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetCategories_SubCategory">
    <xsd:annotation>
        <xsd:documentation>A Sub-Category.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="SubCategory" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="MainMemberQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TotalQuantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InspectionTest" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The number of tests of the type identified by the Index attribute that have been performed on the sub-category.</xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:integer">
                        <xsd:attribute name="Index" type="xsd:integer" use="required">
                            <xsd:annotation>
                                <xsd:documentation>The index of this test, corresponds to the inspection test with a matching index in the InspectionTest element of the response element.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                        <xsd:attribute name="HasFailures" type="xsd:boolean" use="optional">
                            <xsd:annotation>
                                <xsd:documentation>Indicates if there are any outstanding failures.</xsd:documentation>
                            </xsd:annotation>
                        </xsd:attribute>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="fsresGetTransmittalDetails">
    <xsd:annotation>
        <xsd:documentation>Retrieves the details for one or more transmittals.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="TransmittalID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
                <xsd:element name="TransmittalNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="IncludeAttachedFiles" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
                <xsd:element name="IncludeDrawings" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
                <xsd:element name="FilterSet" type="fsresGetFilterSelections_FilterSet" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation>
                        <xsd:documentation>
                            Filters applied to this command are echoed back.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="Transmittals" type="fsresTransmittalDetails_Transmittals" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresTransmittalDetails_Transmittals">
    <xsd:annotation>
        <xsd:documentation>The details for one or more transmittals.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Transmittal" type="fsresTransmittalDetails_Transmittal" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresTransmittalDetails_Recipient">
    <xsd:annotation>
        <xsd:documentation>The recipient of a transmittal.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Name" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Address1" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Address2" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="City" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="State" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Zip" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Country" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Phone" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Fax" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Email" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Attn" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresTransmittalDetails_Transmittal">
    <xsd:annotation>
        <xsd:documentation>The details for one transmittals.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="TransmittalID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TransmittalNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TransmittalDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Recipient" type="fsresTransmittalDetails_Recipient" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Title" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Sending" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Type" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TransmittalItem" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="TransmittalPurpose" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="NumberOfPrints" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PrintsToReturn" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumberOfSets" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SentBy" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CopyTo" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Remarks" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="StandardText" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReturnDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Outstanding" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Overdue" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SentVia" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumberOfDrawings" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NumberOfOutstandingDrawings" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LastDateReceived" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TransmittalDrawings" type="fsresTransmittalDetails_TransmittalDrawings" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AttachedFiles" type="fsresTransmittalDetails_AttachedFiles" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresTransmittalDetails_TransmittalDrawings">
    <xsd:annotation>
        <xsd:documentation>The drawings for one the current transmittal.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Drawing" type="fsresTransmittalDetails_TransmittalDrawing" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresTransmittalDetails_TransmittalDrawing">
    <xsd:annotation>
        <xsd:documentation>The details for one transmittals.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="DrawingNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Revision" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DrawingDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DateReceived" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatus" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Resubmit" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresTransmittalDetails_AttachedFiles">
    <xsd:annotation>
        <xsd:documentation>The files attached to an RFI.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="AttachedFile" type="fsresDocument" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="fsresGetTimeTrackingSubjects">
    <xsd:annotation>
        <xsd:documentation>Retrieves the available time tracking selections for a job.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="AllowDateEntryOnly" type="xsd:boolean" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            If true then date-only entries are allowed.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="ComputeStartDateTime" type="xsd:boolean" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            If true then the interface can compute the start date/time based on the end date/time and the hours.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="ComputeEndDateTime" type="xsd:boolean" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            If true then the interface can compute the end date/time based on the start date/time and the hours.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="ComputeHours" type="xsd:boolean" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            If true then the interface can compute the hours based on the start and end date/time.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="Employees" type="fsresGetTimeTrackingSubjects_Employees" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Tasks" type="fsresGetTimeTrackingSubjects_Tasks" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Stations" type="fsresGetTimeTrackingSubjects_Stations" minOccurs="1" maxOccurs="1" />
                <xsd:element name="SubjectFields" type="fsresGetTimeTrackingSubjects_SubjectFields" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetTimeTrackingSubjects_Employees">
    <xsd:annotation>
        <xsd:documentation>The employees available to be associated with the time tracking record.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Employee" type="fsresGetTimeTrackingSubjects_Employees_Employee" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetTimeTrackingSubjects_Employees_Employee">
    <xsd:annotation>
        <xsd:documentation>An employee available to be associated with the time tracking record.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="UserID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Username" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="FullName" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetTimeTrackingSubjects_Tasks">
    <xsd:annotation>
        <xsd:documentation>The schedule tasks available to be associated with the time tracking record.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Task" type="fsresGetTimeTrackingSubjects_Tasks_Task" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="SelectedTaskID" type="xsd:integer" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    ID of the task that the interface should set as the default selection.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetTimeTrackingSubjects_Tasks_Task">
    <xsd:annotation>
        <xsd:documentation>A schedule task available to be associated with the time tracking record.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="TaskID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetTimeTrackingSubjects_Stations">
    <xsd:annotation>
        <xsd:documentation>The production workstations available to be associated with the time tracking record.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Station" type="fsresGetTimeTrackingSubjects_Stations_Station" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="SelectedStationID" type="xsd:integer" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    ID of the station that the interface should set as the default selection.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetTimeTrackingSubjects_Stations_Station">
    <xsd:annotation>
        <xsd:documentation>A production workstations available to be associated with the time tracking record.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="StationID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Description" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetTimeTrackingSubjects_SubjectFields">
    <xsd:annotation>
        <xsd:documentation>The additional fields that can be used to identify the subject of the work (sequence, lot, category, sub-category, etc).</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="SubjectField" type="fsresGetTimeTrackingSubjects_SubjectFields_SubjectField" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetTimeTrackingSubjects_SubjectFields_SubjectField">
    <xsd:annotation>
        <xsd:documentation>An additional field that can be used to identify the subject of the work.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="FieldName" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    The name of the field.
                </xsd:documentation>
            </xsd:annotation>
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Sequence" />
                    <xsd:enumeration value="LotNumber" />
                    <xsd:enumeration value="Category" />
                    <xsd:enumeration value="SubCategory" />
                    <xsd:enumeration value="PayCategory" />
                    <xsd:enumeration value="MainMark" />
                    <xsd:enumeration value="PieceMark" />
                    <xsd:enumeration value="UserDefined1" />
                    <xsd:enumeration value="UserDefined2" />
                    <xsd:enumeration value="UserDefined3" />
                    <xsd:enumeration value="UserDefined4" />
                    <xsd:enumeration value="UserDefined5" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="Title" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    The title of the field as it should be presented to the user.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Required" type="xsd:boolean" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    If true then a value is required for this field.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Value" type="xsd:token" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>
                    The list of available selections.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="SelectedValue" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Value that the interface should set as the default selection.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetChangeOrderDetails">
    <xsd:annotation>
        <xsd:documentation>Retrieves the details for one or more Change Orders.</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ChangeOrderID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
                <xsd:element name="ChangeOrderNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="FilterSet" type="fsresGetFilterSelections_FilterSet" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Filters applied to this command are echoed back.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="ChangeOrders" type="fsresChangeOrderDetails_ChangeOrders" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresChangeOrderDetails_ChangeOrders">
    <xsd:annotation>
        <xsd:documentation>The details for one or more ChangeOrders.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ChangeOrder" type="fsresChangeOrderDetails_ChangeOrder" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="fsresChangeOrderDetails_ChangeOrder">
    <xsd:annotation>
        <xsd:documentation>The details for one ChangeOrder.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="ChangeOrderID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ChangeOrderNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ChangeOrderDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Firm" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FirmContact" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SupplierFirm" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Subject" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DescriptionOfChange" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ChangeAdded" minOccurs="0" maxOccurs="1" >
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:integer">
                        <xsd:attribute name="Units" use="required" >
                            <xsd:simpleType>
                                <xsd:restriction base="xsd:token">
                                <xsd:enumeration value="Calendar Days" />
                                <xsd:enumeration value="Days" />
                                <xsd:enumeration value="Weeks" />
                                <xsd:enumeration value="Months" />
                                </xsd:restriction>                
                            </xsd:simpleType>
                        </xsd:attribute>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
        <xsd:element name="ChangeCauseAmount" minOccurs="0" maxOccurs="1">
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:decimal">
                        <xsd:attribute name="Currency" type="xsd:token" use="required" />
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
        <xsd:element name="ChangeRequestedBy" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ResponseRequestedBy" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ResponseReceivedOn" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Outstanding" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Overdue" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Approved" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SentVia" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Author" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ContractItem" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="AttachedFiles" type="fsresChangeOrderDetails_AttachedFiles" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresChangeOrderDetails_AttachedFiles">
    <xsd:annotation>
        <xsd:documentation>The files attached to a change order.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="AttachedFile" type="fsresDocument" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresGetTFSDetails">
    <xsd:annotation>
        <xsd:documentation>Retrieves the details of the parts that have been taken from stock (cut).</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Filters" type="fsresFilters" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Filters applied to this command are echoed back.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Material" type="fsresGetTFSDetails_Material" minOccurs="0" maxOccurs="unbounded" />
                <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1"><xsd:annotation><xsd:documentation>Filters applied to this command are echoed back.</xsd:documentation></xsd:annotation></xsd:element>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresGetTFSDetails_Material">
    <xsd:annotation>
        <xsd:documentation>A part that has been taken from stock (cut).</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="MainMark" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PieceMark" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Sequence" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TFSDate" type="xsd:date" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Supplier" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PONumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BillOfLadingNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CountryOfOrigin" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MillOfOrigin" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="HeatNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="HeatSerialNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresHoldSettings_Get">
    <xsd:annotation>
        <xsd:documentation>Gets hold settings set by the Tekla PowerFab user</xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="1" maxOccurs="1"><xsd:annotation><xsd:documentation>Hold Settings Object</xsd:documentation></xsd:annotation></xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>


<xsd:complexType name="fsresInspectionDocumentAdd">
    <xsd:annotation>
        <xsd:documentation>
            Adds a document to the document index and associates it with the given inspection record.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="DocumentID" type="xsd:integer" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            The DocumentID of the newly-added document index record.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresIntermediateCompanyCodes">
    <xsd:annotation>
        <xsd:documentation>
            Retrieves the valid company codes for intermediate shipping that the specified job contains.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="CompanyCode" type="xsd:token" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>
                            A valid company code for an intermediate shipping destination.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresInventoryAdd">
    <xsd:annotation>
        <xsd:documentation>
            Adds a new inventory record based off the information from another.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresInventoryAuditSave">
    <xsd:annotation>
        <xsd:documentation>
            Associates a barcode serial # with an audit serial # and saves the barcode SN in FabSuite's inventory.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="Shape" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Grade" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="HeatNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="HeatSerialNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Location" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="PONumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="BillOfLadingNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="CountryOfOrigin" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="MillOfOrigin" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresInventoryAuditScan">
    <xsd:annotation>
        <xsd:documentation>
            Retrieves the details of an audit serial #.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="Shape" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Grade" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="PONumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="BillOfLadingNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="CountryOfOrigin" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="MillOfOrigin" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="HeatNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="HeatSerialNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Location" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresInventoryLocationRestrictionGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresInventoryLocationRestrictionGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresInventoryLocationRestrictionGet_ResultData">
    <xsd:sequence>
        <xsd:element name="LastLogID" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The latest log position, to be used in a subsequent InventoryLocationRestriction_Get request to get only the incremental changes.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="DeletedInventoryLocationRestrictionID" type="xsd:integer" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The DeletedInventoryLocationRestrictionID values for the records that were deleted since the LastLogID value in the request.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="InventoryLocationRestriction" type="fsresInventoryLocationRestriction" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInventoryLocationSweepComplete">
    <xsd:annotation>
        <xsd:documentation>
            Completes the given location sweep.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="InventoryLocationSweepID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="QuantityNotFoundCancelled" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="QuantityRemainingMoved" type="xsd:integer" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresInventoryLocationSweepScan">
    <xsd:annotation>
        <xsd:documentation>
            Scans an inventory serial # as being in the given sweep location.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="InventoryLocationSweepID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="SerialNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Shape" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Grade" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Width" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
                <xsd:element name="PONumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="BillOfLadingNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="CountryOfOrigin" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="MillOfOrigin" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="HeatNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="HeatSerialNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="PreviousLocation" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="PreviousSecondaryLocation" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="NewLocation" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="NewSecondaryLocation" type="xsd:token" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresInventoryMove">
    <xsd:annotation>
        <xsd:documentation>
            Changes the location of a piece of inventory material.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresInventoryRemnant_Upsert">
    <xsd:annotation>
        <xsd:documentation>
            Inserts or updates a remnant in Tekla PowerFab Inventory
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresInventoryRemnant_Upsert_ResultData" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>


<xsd:complexType name="fsresInventoryRemnant_Upsert_ResultData">
    <xsd:sequence>
        <xsd:element name="InventoryRemnant" type="fsresInventoryRemnant" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInventoryRemnant">
    <xsd:annotation>
        <xsd:documentation>
            A remnant just inserted into Tekla PowerFab Inventory
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InventoryItemID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="RemnantID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ExternalInventoryID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresLoad">
    <xsd:annotation>
        <xsd:documentation>
            Loads or Un-Loads a production assembly/part from a truck.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresMakeReport">
    <xsd:annotation>
        <xsd:documentation>
            Renders, exports, and retrieves the given report.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ReportInstanceGUID" type="xsd:token" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            GUID representing the instance of report data.  Can be passed to a subsequent MakeReport
                            command to render another report against the same data, avoids re-processing.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="ReportFile" type="fsresFileData" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresMaxTruck">
    <xsd:annotation>
        <xsd:documentation>
            Retrieves the largest truck/load # for a job.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="MaxTruck" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="NextAvailableLoadNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="DefaultCapacity" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="TrailerNumber" type="fsresMaxTruck_Field" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Carrier" type="fsresMaxTruck_Field" minOccurs="1" maxOccurs="1" />
                <xsd:element name="LoadCategory1" type="fsresMaxTruck_Field" minOccurs="1" maxOccurs="1" />
                <xsd:element name="LoadCategory2" type="fsresMaxTruck_Field" minOccurs="1" maxOccurs="1" />
                <xsd:element name="LoadCategory3" type="fsresMaxTruck_Field" minOccurs="1" maxOccurs="1" />
                <xsd:element name="ShippedFrom" type="fsresMaxTruck_Field" minOccurs="1" maxOccurs="1" />
                <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresMaxTruck_Field">
    <xsd:annotation>
        <xsd:documentation>The details of a field associated with a load entry (MaxTruck command).</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Title" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>If not specified then the default title for this field should be used.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="ShowField" type="xsd:boolean" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>If true then this field should be presented to the user for entry.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Required" type="xsd:boolean" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>If true then a non-blank value is required for this field.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="RestrictToList" type="xsd:boolean" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>If true then the entry should be restricted to the list of specified values.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="FieldValues" type="fsresMaxTruck_FieldValues" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresMaxTruck_FieldValues">
    <xsd:annotation>
        <xsd:documentation>The list of available field values.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="FieldValue" type="fsresMaxTruck_FieldValue" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresMaxTruck_FieldValue">
    <xsd:annotation>
        <xsd:documentation>An available field value.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Value" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DefaultCapacity" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The default capacity for a load with this value selected.  Only used for the trailer # field.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresNestSolutionGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresNestSolutionGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresNestSolutionGet_ResultData">
    <xsd:sequence>
        <xsd:element name="LastLogID" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GetOptions" type="fsresNestSolutionGetOptions" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DeletedNestSolutionID" type="xsd:integer" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="NestSolution" type="fsresNestSolution" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="InventoryItem_ProductionFields" type="fsresInventoryItemProductionFields" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="InventoryItem_Sequence" type="fsresInventoryItemSequence" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresNestSolutionGetOptions">
    <xsd:sequence>
        <xsd:element name="IncludeRequired" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IncludeResult" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IncludeResultParts" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IncludeResultPartLinks" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresNestSolution">
    <xsd:sequence>
        <xsd:element name="NestSolutionID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Type" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="RequiredQuantityTypeNone" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="RequiredQuantityTypeRequisition" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="RequiredQuantityTypeInventoryOnOrder" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="RequiredQuantityTypeInventoryInStock" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PercentCombined" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CombinationDetailID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Required" type="fsresNestSolutionRequired" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Result" type="fsresNestSolutionResult" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="LatestNestSolutionLogID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LatestNestSolutionRequiredLogID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LatestNestSolutionResultLogID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LatestNestSolutionResultPartLogID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresNestSolutionRequired">
    <xsd:sequence>
        <xsd:element name="NestSolutionRequiredID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ItemID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Type" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TrueShapeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Shape" type="fsStringID" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Grade" type="fsStringID" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Dimensions" type="fsDimensionValueDisplay" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Length" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SquareMetersEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OnOrder" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Position" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="InventoryItem" type="fsresInventoryItem" minOccurs="0" maxOccurs="1" />
        <xsd:element name="RequisitionItem" type="fsresRequisitionItem" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresNestSolutionResult">
    <xsd:sequence>
        <xsd:element name="NestSolutionResultID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TrueShapeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Valuation" type="fsCurrencyValue" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Weight" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SurfaceArea" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SquareMetersEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Perimeter" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Shape" type="fsStringID" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Grade" type="fsStringID" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Dimensions" type="fsDimensionValueDisplay" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Length" type="decimal-or-empty" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobReserve" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Job" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReserveDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PreviousJob" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OriginalJob" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CurrentPrice" type="fsCurrencyUnitValue" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OriginalDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OriginalPrice" type="fsCurrencyUnitValue" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Location" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="HeatNo" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="HeatSerialNo" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BillOfLadingNo" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CountryOfOriginID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MillOfOriginFirmID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MillOfOriginFirmAddressID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PONumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Supplier" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DeliveryDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Remarks" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Stock" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Reorder" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OnOrder" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReferenceNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PartNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Kerf" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="KerfRipCut" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="KerfCrossCut" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PercentCombined" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CombinationDetailID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ResultPart" type="fsresNestSolutionResultPart" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresNestSolutionResultPart">
    <xsd:sequence>
        <xsd:element name="NestSolutionResultPartID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="CombinationDetailRecordID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SubstituteGrade" type="fsStringID" minOccurs="0" maxOccurs="1" />
        <xsd:element name="RequisitionID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TrueShapeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Width" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SquareMetersEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReferenceNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NestSolutionRequiredID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProductionControlFieldDetailID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GlobalSequenceID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="XCoord" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="YCoord" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Rotated" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Link" type="fsresNestSolutionResultPartLink" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresNestSolutionResultPartLink">
    <xsd:sequence>
        <xsd:element name="MaterialLinkID" type="xsd:integer" minOccurs="1" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProductionControlItemID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Width" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SquareMetersEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="RouteID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProductionControlFieldDetailID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GlobalSequenceID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProductionControlCutListItemID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProductionControlCutListItemMatchFilter" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresPickListGet">
    <xsd:annotation><xsd:documentation>Retrieve stock required for a cut list</xsd:documentation></xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresPickListGet_ResultData" minOccurs="0" maxOccurs="1">
                    <xsd:annotation><xsd:documentation>Results</xsd:documentation></xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresPickListGet_ResultData">
    <xsd:sequence>
        <xsd:element name="GetOptions" type="fsresPickListGetOptions" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Options to the Get command are echoed back</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PickList" type="fsresPickList" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation><xsd:documentation>Pick List object</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresPickListGetOptions">
    <xsd:sequence>
        <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Filter the pick list results</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresPickList">
    <xsd:sequence>
        <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>ID of the Production Control Job</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Name of the Production Control Job</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="CutListID" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>ID of the cut list</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="CutListName" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Name of the cut list</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="DateCreated" type="xsd:date" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Date cut list was created</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="DateRequired" type="xsd:date" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Date cut list is required</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PickListItem" type="fsresPickListItem" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation><xsd:documentation>List of items to pick for this cut list</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresPickListItem">
    <xsd:sequence>
        <xsd:element name="CutListItemID" type="xsd:integer" minOccurs="1" maxOccurs="unbounded">
            <xsd:annotation><xsd:documentation>ID of the Cut list Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Quantity of this item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="NestSolutionRequiredID" type="xsd:integer" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation><xsd:documentation>List of nest solution required IDs for this cut list item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="NestSolutionType" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>The type of nest solution (Split or Splice)</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Shape" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Shape of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Grade" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Grade of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Dimensions" type="fsDimensionValueDisplay" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Dimensions of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Width" type="xsd:decimal" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Width of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Length" type="xsd:decimal" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Length of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Area" type="xsd:decimal" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Area of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Weight" type="xsd:decimal" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Weight of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Location" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Location of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Secondary Location of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="HeatNumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>HeatNumber of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="HeatSerialNumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Heat Serial Number of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="BillOfLadingNumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Bill of Lading Number of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="CountryOfOrigin" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Country of Origin of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="MillOfOrigin" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Mill of Origin of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PONumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>PO Number of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Supplier" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Supplier of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>        
        <xsd:element name="PartNumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Part Number of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="OnOrder" type="xsd:boolean" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>The on order status of item to pick</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInventoryItem">
    <xsd:sequence>
        <xsd:element name="InventoryItemID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PurchaseOrderItemID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TrueShapeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JoinedFromInventoryTransactionID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Valuation" type="fsCurrencyValue" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Weight" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SurfaceArea" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SquareMetersEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InventoryAuditBarcodeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShapeID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="GradeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SizeID" type="fsDimensionValue" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobReserve" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Job" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReserveDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PreviousJob" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OriginalJob" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CurrentPrice" type="fsCurrencyUnitValue" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OriginalDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OriginalPrice" type="fsCurrencyUnitValue" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Location" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="HeatNo" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="HeatSerialNo" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BillOfLadingNo" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CountryOfOriginID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MillOfOriginFirmID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MillOfOriginFirmAddressID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PONumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Supplier" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DeliveryDate" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Remarks" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Stock" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Reorder" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="OnOrder" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReferenceNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PartNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SerialNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SerialNumberQuantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Kerf" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="KerfRipCut" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="KerfCrossCut" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PercentCombined" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ExternalNestID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ExternalNestBroken" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IsSkeleton" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProNestID" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SigmaNestID" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TeklaEPMRemnantID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="RemnantName" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ExpectedDrop" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CombinationDetailID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProductionControlFieldDetailID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GlobalSequenceID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NestSolutionID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NestSolutionType" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NestSolutionRequiredID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CMBItem" type="fsresInventoryItemCMBItem" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInventoryItemCMBItem">
    <xsd:sequence>
        <xsd:element name="CombinationDetailRecordID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InventoryItemCombinationItemIDString" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SubstituteGradeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="RequisitionID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TrueShapeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Width" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SquareMetersEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReferenceNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NestSolutionRequiredIDString" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProductionControlFieldDetailID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GlobalSequenceID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresRequisitionItem">
    <xsd:sequence>
        <xsd:element name="RequisitionItemID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="RequisitionID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="RequisitionNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="TrueShapeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ItemID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Cost" type="fsCurrencyValue" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Weight" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SurfaceArea" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SquareMetersEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ShapeID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="GradeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SizeID" type="fsDimensionValue" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="BasePrice" type="fsCurrencyUnitValue" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReferenceNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DateRequired" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="DatePromised" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="MillMark" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CostCodeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Comment" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PurchasingNote" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Kerf" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="KerfRipCut" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="KerfCrossCut" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PercentCombined" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ExternalNestID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ExternalNestBroken" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ExpectedDrop" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CombinationDetailID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProductionControlFieldDetailID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GlobalSequenceID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NestSolutionID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NestSolutionType" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NestSolutionRequiredID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CMBItem" type="fsresRequisitionItemCMBItem" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresRequisitionItemCMBItem">
    <xsd:sequence>
        <xsd:element name="CombinationDetailRecordID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="RequisitionItemCombinationItemIDString" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SubstituteGradeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TrueShapeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Width" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SquareMetersEach" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ReferenceNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="NestSolutionRequiredIDString" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProductionControlFieldDetailID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GlobalSequenceID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInventoryItemProductionFields">
    <xsd:sequence>
        <xsd:element name="ProductionControlFieldDetailID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ApprovalStatus" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusPurpose" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Finish" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Remark" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Route" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Category" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SubCategory" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="PayCategory" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ShippingRoute" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ProductionCode" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresInventoryItemSequence">
    <xsd:sequence>
        <xsd:element name="GlobalSequenceID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Sequence" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresPing">
    <xsd:annotation>
        <xsd:documentation>
            Pings the connection.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="IdleTimeout" type="xsd:integer" minOccurs="0" maxOccurs="1" />
                <xsd:element name="SecondsBeforeIdleTimeout" type="xsd:integer" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresPrepareReportData">
    <xsd:annotation>
        <xsd:documentation>
            Retrieves the largest truck/load # for a job.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ReportInstanceGUID" type="xsd:token" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            GUID representing the instance of report data.  Can be passed to a MakeReport
                            command to render a report.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="ReportInstanceID" type="xsd:integer" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            ID in the report tables identifying this set of report data.  Can be used to help query
                            the report tables directly.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlCutListExportDSTVPlus">
    <xsd:annotation>
        <xsd:documentation>
            Exports DSTV Plus zip file for a cut list or cut list items
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProductionControlCutListExportDSTVPlus_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlCutListExportDSTVPlus_ResultData">
    <xsd:sequence>
        <xsd:element name="FileName" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    The name of the zip file.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="FileDataBase64" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Result is the base64 encoded contents of the zip file generated from the directory with all DSTVPlus .ba and .nc1 files
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="fsresProductionControlCutListItemSwapGetAvailable">
    <xsd:annotation>
        <xsd:documentation>
            Retrieves the stock that is available to swap for the given cut list item.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProductionControlCutListItemSwapGetAvailable_ResultData" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>List of swappable items</xsd:documentation></xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlCutListItemSwapGetAvailable_ResultData">
    <xsd:sequence>
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>The number of cutting details that can be swapped.</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="SourceMaterial" type="fsresProductionControlCutListItemSwapAvailable" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>The details of the stock item to swap.</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Available" type="fsresProductionControlCutListItemSwapAvailable" minOccurs="0" maxOccurs="unbounded" >
            <xsd:annotation><xsd:documentation>List of swappable items</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlCutListItemSwapAvailable">
    <xsd:sequence>
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>The quantity of inventory items with these specs available to swap in</xsd:documentation></xsd:annotation>
        </xsd:element>        
        <xsd:element name="InventoryItemID" type="xsd:integer" minOccurs="1" maxOccurs="unbounded">
            <xsd:annotation><xsd:documentation>List of inventory item ids matching these qualities</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Shape" type="fsStringID" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Shape of the Inventory Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Dimensions" type="fsDimensionValueDisplay" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Dimensions of the Inventory Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Grade" type="fsStringID" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Grade of the Inventory Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Job that this inventory item is reserved to</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Width" type="xsd:decimal" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Width of Inventory Item if it's a plate</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Length" type="xsd:decimal" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Length of Inventory Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Location" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Location of Inventory Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="SecondayLocation" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Secondary Location of Inventory Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="HeatNo" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Heat Number of Inventory Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="HeatSerialNo" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Heat Serial Number of Inventory Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="BillOfLadingNo" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Bill of Lading Number of Inventory Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="CountryOfOrigin" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Country of Origin of Inventory Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PONumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Purchase Order number of Inventory Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Supplier" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Supplier of Inventory Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PartNumber" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Part Number of Inventory Item</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="OnOrder" type="xsd:boolean" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>0 if inventory item is in stock, 1 if it's on order</xsd:documentation></xsd:annotation>
        </xsd:element>        
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="fsresProductionControlCutListItemSwap">
    <xsd:annotation>
        <xsd:documentation>
            Swaps the stock reserved for the cut list item.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProductionControlCutListItemSwap_ResultData" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>List of swappable items</xsd:documentation></xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlCutListItemSwap_ResultData">
    <xsd:sequence>
        <xsd:element name="ProductionControlCutListItemID" type="xsd:integer" minOccurs="1" maxOccurs="unbounded" >
            <xsd:annotation><xsd:documentation>ProductionControlCutListItems that have been affected by this swap</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlJobGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProductionControlJobGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlJobGet_ResultData">
    <xsd:sequence>
        <xsd:element name="ProductionControlJob" type="fsresProductionControlJob" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProductionControlLoadGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadGet_ResultData">
    <xsd:sequence>
        <xsd:element name="LastLogID" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GetOptions" type="fsresProductionControlLoadGetOptions" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DeletedProductionControlLoadID" type="xsd:integer" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlJob" type="fsresProductionControlJob" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ShippingDestinationGroup" type="fsresShippingDestinationGroup" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Firm" type="fsresFirm" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="FirmAddress" type="fsresFirmAddress" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ApprovalStatus" type="fsresApprovalStatus" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="FieldSettings" type="fsresProductionControlLoadFieldSettings" minOccurs="1" maxOccurs="1" />
        <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadGetOptions">
    <xsd:sequence>
        <xsd:element name="IncludeJobDetails" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IncludeFirmDetails" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="IncludeMaterial" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadDelete">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand" />
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadInsert">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProductionControlLoadInsert_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadInsert_ResultData">
    <xsd:sequence>
        <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadUpdate">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProductionControlLoadUpdate_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadUpdate_ResultData">
    <xsd:sequence>
        <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadShip">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProductionControlLoadShip_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadShip_ResultData">
    <xsd:sequence>
        <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadUnship">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProductionControlLoadUnship_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadUnship_ResultData">
    <xsd:sequence>
        <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadIsDuplicateLoadNumber">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProductionControlLoadIsDuplicateLoadNumber_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadIsDuplicateLoadNumber_ResultData">
    <xsd:sequence>
        <xsd:element name="IsDuplicate" type="xsd:boolean" minOccurs="1" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadInputOptionsGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProductionControlLoadInputOptionsGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadInputOptionsGet_ResultData">
    <xsd:sequence>
        <xsd:element name="InputOptions" type="fsresProductionControlLoadInputOptions" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadAdditionalInsert">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" minOccurs="0" maxOccurs="1">
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="1" maxOccurs="1" />
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadAdditionalUpdate">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" minOccurs="0" maxOccurs="1">
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="1" maxOccurs="1" />
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadAdditionalDelete">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" minOccurs="0" maxOccurs="1">
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="1" maxOccurs="1" />
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadInputOptions">
    <xsd:sequence>
        <xsd:element name="NextLoadNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DefaultCapacity" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ShippedFrom" type="fsresFirmAddressList" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ShippingDestinationGroup" type="fsresProductionControlLoadInputOptionsShippingDestinationGroup" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="FieldSettings" type="fsresProductionControlLoadFieldSettings" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ProductionControlShippingTopText" type="fsresProductionControlShippingTopText" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadInputOptionsShippingDestinationGroup">
    <xsd:sequence>
        <xsd:element name="ShippingDestinationGroup" type="fsresShippingDestinationGroup" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ShippedTo" type="fsresFirmAddressList" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadRemainingGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProductionControlLoadRemainingGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadRemainingGet_ResultData">
    <xsd:sequence>
        <xsd:element name="LastLogID" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="GetOptions" type="fsresProductionControlLoadRemainingGetOptions" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ChangedMainMarkDisplay" type="xsd:token" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProductionControlLoadRemaining" type="fsresProductionControlLoadRemaining" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="HoldSettings" type="fsresHoldSettings" minOccurs="0" maxOccurs="1" ><xsd:annotation><xsd:documentation>Hold Settings as set by user</xsd:documentation></xsd:annotation></xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadRemainingGetOptions">
    <xsd:sequence>
        <xsd:element name="SortOrder" minOccurs="0" maxOccurs="unbounded">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="DrawingNumber" />
                    <xsd:enumeration value="MainMark" />
                    <xsd:enumeration value="PieceMark" />
                    <xsd:enumeration value="Sequence" />
                    <xsd:enumeration value="LotNumber" />
                    <xsd:enumeration value="ShippingLengthEach" />
                    <xsd:enumeration value="ShippingWeightEach" />
                    <xsd:enumeration value="ShippingGrossWeightEach" />
                    <xsd:enumeration value="ShippingSurfaceAreaEach" />
                    <xsd:enumeration value="ShippingSquareMetersEach" />
                    <xsd:enumeration value="ManHoursEach" />
                    <xsd:enumeration value="ApprovalStatus" />
                    <xsd:enumeration value="QuantityRemaining" />
                    <xsd:enumeration value="Shape" />
                    <xsd:enumeration value="Grade" />
                    <xsd:enumeration value="Dimensions" />
                    <xsd:enumeration value="Length" />
                    <xsd:enumeration value="Finish" />
                    <xsd:enumeration value="ReferenceNumber" />
                    <xsd:enumeration value="Remark" />
                    <xsd:enumeration value="Route" />
                    <xsd:enumeration value="Category" />
                    <xsd:enumeration value="SubCategory" />
                    <xsd:enumeration value="PayCategory" />
                    <xsd:enumeration value="ShippingRoute" />
                    <xsd:enumeration value="AccessoryPieceTracking" />
                    <xsd:enumeration value="AccessoryLoadTracking" />
                    <xsd:enumeration value="InstanceTracking" />
                    <xsd:enumeration value="ProductionCode" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="SortDescending" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Offset" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Limit" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="fsresProductionControlLoadMaterialAdd">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" minOccurs="0" maxOccurs="1">
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="1" maxOccurs="1" />
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadMaterialRemove">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" minOccurs="0" maxOccurs="1">
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="1" maxOccurs="1" />
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadMaterialLoad">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" minOccurs="0" maxOccurs="1">
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="1" maxOccurs="1" />
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadMaterialUnload">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" minOccurs="0" maxOccurs="1">
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="1" maxOccurs="1" />
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadMaterialReturn">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" minOccurs="0" maxOccurs="1">
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="1" maxOccurs="1" />
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionControlLoadMaterialUnreturn">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" minOccurs="0" maxOccurs="1">
                    <xsd:complexType>
                        <xsd:sequence>
                            <xsd:element name="ProductionControlLoad" type="fsresProductionControlLoad" minOccurs="1" maxOccurs="1" />
                        </xsd:sequence>
                    </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionShippingProductivityGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresProductionShippingProductivityGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresProductionShippingProductivityGet_ResultData">
    <xsd:sequence>
        <xsd:element name="GetOptions" type="fsresProductionShippingProductivityGetOptions" minOccurs="1" maxOccurs="1" />
        <xsd:element name="InputDisplayUnits" type="fsresInputDisplayUnits" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Result" type="fsresProductionShippingProductivity_Result" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="fsresProductionShippingProductivityGetOptions">
    <xsd:sequence>
        <xsd:element name="StatusType" minOccurs="1" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="production-station">
                        <xsd:annotation>
                            <xsd:documentation>
                                Requires either that Station appears in the GroupBy list or that the FilterSet has a restriction on a single station.
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:enumeration>
                    <xsd:enumeration value="productivity-production-station" />
                    <xsd:enumeration value="field-station">
                        <xsd:annotation>
                            <xsd:documentation>
                                Requires either that Station appears in the GroupBy list or that the FilterSet has a restriction on a single station.
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:enumeration>
                    <xsd:enumeration value="productivity-field-station" />
                    <xsd:enumeration value="shipping-destination">
                        <xsd:annotation>
                            <xsd:documentation>
                                Requires either that Destination Group appears in the GroupBy list or that the FilterSet has a restriction on a single destination group, destination, shipped to, or load number.
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:enumeration>
                    <xsd:enumeration value="last-shipping-destination" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="DateSummary" minOccurs="1" maxOccurs="1">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="day" />
                    <xsd:enumeration value="week" />
                    <xsd:enumeration value="month" />
                    <xsd:enumeration value="quarter" />
                    <xsd:enumeration value="year" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="StartDate" type="xsd:date" minOccurs="1" maxOccurs="1" />
        <xsd:element name="EndDate" type="xsd:date" minOccurs="1" maxOccurs="1" />
        <xsd:element name="GroupBy" minOccurs="0" maxOccurs="unbounded">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="Job #" />
                    <xsd:enumeration value="Job Status" />
                    <xsd:enumeration value="Job Group Name" />
                    <xsd:enumeration value="Job Secondary Group Name" />
                    <xsd:enumeration value="Approval Status" />
                    <xsd:enumeration value="Drawing #" />
                    <xsd:enumeration value="Drawing Description" />
                    <xsd:enumeration value="Revision" />
                    <xsd:enumeration value="Release #" />
                    <xsd:enumeration value="Drawing Category" />
                    <xsd:enumeration value="Drawing Package #" />
                    <xsd:enumeration value="Main Mark" />
                    <xsd:enumeration value="Assembly Drawing Description" />
                    <xsd:enumeration value="Assembly Revision" />
                    <xsd:enumeration value="Assembly Release #" />
                    <xsd:enumeration value="Assembly Drawing Category" />
                    <xsd:enumeration value="Assembly Drawing Package #" />
                    <xsd:enumeration value="Piece Mark" />
                    <xsd:enumeration value="Part Drawing Description" />
                    <xsd:enumeration value="Part Revision" />
                    <xsd:enumeration value="Part Release #" />
                    <xsd:enumeration value="Part Drawing Category" />
                    <xsd:enumeration value="Part Drawing Package #" />
                    <xsd:enumeration value="Shape" />
                    <xsd:enumeration value="Shape &amp; Grade" />
                    <xsd:enumeration value="Shape, Grade, &amp; Size" />
                    <xsd:enumeration value="Finish" />
                    <xsd:enumeration value="Remark" />
                    <xsd:enumeration value="Category" />
                    <xsd:enumeration value="Sub-Category" />
                    <xsd:enumeration value="Pay Category" />
                    <xsd:enumeration value="Route" />
                    <xsd:enumeration value="Shipping Route" />
                    <xsd:enumeration value="Reference #" />
                    <xsd:enumeration value="Production Code" />
                    <xsd:enumeration value="Sequence" />
                    <xsd:enumeration value="Lot #" />
                    <xsd:enumeration value="Station" />
                    <xsd:enumeration value="Station Completed By" />
                    <xsd:enumeration value="Batch ID" />
                    <xsd:enumeration value="Destination Group" />
                    <xsd:enumeration value="Destination" />
                    <xsd:enumeration value="Load Shipped From" />
                    <xsd:enumeration value="Load Shipped To" />
                    <xsd:enumeration value="Load #" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionShippingProductivity_Result">
    <xsd:sequence>
        <xsd:element name="StartDate" type="xsd:date" minOccurs="1" maxOccurs="1" />
        <xsd:element name="EndDate" type="xsd:date" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Weight" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="GrossWeight" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Length" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Area" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SurfaceArea" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Hours" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Group" type="fsresProductionShippingProductivity_GroupResult" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresProductionShippingProductivity_GroupResult">
    <xsd:sequence>
        <xsd:element name="Field" minOccurs="1" maxOccurs="unbounded">
            <xsd:complexType>
                <xsd:simpleContent>
                    <xsd:extension base="xsd:token">
                        <xsd:attribute name="FieldName" type="xsd:token" use="required"/>
                        <xsd:attribute name="DisplayName" type="xsd:token" use="required"/>
                    </xsd:extension>
                </xsd:simpleContent>
            </xsd:complexType>
        </xsd:element>
        <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Weight" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="GrossWeight" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Length" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Area" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SurfaceArea" type="xsd:decimal" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Hours" type="xsd:decimal" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresReceive">
    <xsd:annotation>
        <xsd:documentation>
            Receives material based on the Barcode Checklist receiving report in FabSuite.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="PONumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="QuantityOrdered" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="QuantityRemaining" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Shape" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Grade" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Width" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="WeightEach" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresReceiveASN">
    <xsd:annotation>
        <xsd:documentation>
            Receives material based on a serial number from an ASN file that has been loaded into FabSuite.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="PONumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="QuantityOrdered" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="QuantityRemaining" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Shape" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Grade" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="HeatNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="HeatSerialNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="BillOfLadingNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="CountryOfOrigin" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="MillOfOrigin" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="WeightEach" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresReceiveChecklistScan">
    <xsd:annotation>
        <xsd:documentation>
            Retrieves the details of a checklist serial #.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="PONumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="QuantityOrdered" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="QuantityRemaining" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Shape" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Grade" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Width" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="WeightEach" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresReturn">
    <xsd:annotation>
        <xsd:documentation>
            Returns or Un-Returns material from an intermediate shipping location (galvanizer, subcontractor, etc).
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresSaveCNCFile">
    <xsd:annotation>
        <xsd:documentation>
            Saves a cnc file to the FabSuite database.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="NewCNCFileID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresSaveInspectionTestRecord">
    <xsd:annotation>
        <xsd:documentation>
            Saves an inspection test record.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="InspectionTestRecordID" type="xsd:integer" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Record ID</xsd:documentation></xsd:annotation>
                </xsd:element>        
                <xsd:element name="TestFailed" type="xsd:boolean" minOccurs="1" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>True if test failed</xsd:documentation></xsd:annotation>
                </xsd:element>        
                <xsd:element name="TestWarning" type="xsd:boolean" minOccurs="1" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>True if test generated a warning.</xsd:documentation></xsd:annotation>
                </xsd:element>        
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresSaveNest">
    <xsd:annotation>
        <xsd:documentation>
            Saves the result of a nest performed in External Software to FabSuite.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="TotalSuccessful" type="xsd:integer" minOccurs="1" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>Total number of successfully saved nests.</xsd:documentation></xsd:annotation>
                </xsd:element>        
                <xsd:element name="TotalUnSuccessful" type="xsd:integer" minOccurs="1" maxOccurs="1"  >
                    <xsd:annotation><xsd:documentation>Total number of failed (not saved) nests.</xsd:documentation></xsd:annotation>
                </xsd:element>        
                <xsd:element name="SavedRemnant" type="fsresSavedRemnant" minOccurs="0" maxOccurs="unbounded"  >
                    <xsd:annotation><xsd:documentation>List of saved remnants.</xsd:documentation></xsd:annotation>
                </xsd:element>        
                <xsd:element name="NestError" type="fsresNestError" minOccurs="0" maxOccurs="unbounded"  >
                    <xsd:annotation><xsd:documentation>List of errors generated.</xsd:documentation></xsd:annotation>
                </xsd:element>        
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresSavedRemnant">
    <xsd:annotation>
        <xsd:documentation>
            A remnant saved by this nest in the SaveNest command.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="NestID" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>FabSuite RemnantID assigned to this remnant.</xsd:documentation></xsd:annotation>
        </xsd:element>        
        <xsd:element name="ExternalRemnantID" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>External RemnantID sent in for this remnant.</xsd:documentation></xsd:annotation>
        </xsd:element>        
        <xsd:element name="FabSuiteRemnantID" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>FabSuite RemnantID assigned to this remnant.</xsd:documentation></xsd:annotation>
        </xsd:element>        
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1">
            <xsd:annotation><xsd:documentation>Quantity of remnant.</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresNestError">
    <xsd:annotation>
        <xsd:documentation>
            Report errors generated while saving a nest from an external software.
        </xsd:documentation>
    </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="NestGUID" type="xsd:token" minOccurs="1" maxOccurs="1"  >
                <xsd:annotation><xsd:documentation>Nest ID (from request) of nest with error.</xsd:documentation></xsd:annotation>
            </xsd:element>        
            <xsd:element name="ErrorMessage" type="xsd:token" minOccurs="1" maxOccurs="1"  >
                <xsd:annotation><xsd:documentation>Error Message.</xsd:documentation></xsd:annotation>
            </xsd:element>        
        </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresSaveTimeTrackingRecord">
    <xsd:annotation>
        <xsd:documentation>
            Saves the result of a nest performed in External Software to FabSuite.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="TimeRecordID" type="xsd:integer" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            The ID of the newly-added time tracking record.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresSetAssemblyAssociation">
    <xsd:annotation>
        <xsd:documentation>
            Sets the association between one or more instances of an accessory part with an instance of the assembly.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresSetCutListItemNestID">
    <xsd:annotation>
        <xsd:documentation>
            Assigns an external Nest GUID to a Cut List that already exists in FabSuite
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="TotalSuccessful" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="TotalUnSuccessful" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="MappingError" type="fsresMappingError" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresMappingError">
    <xsd:annotation>
        <xsd:documentation>
            Report errors generated while saving a nest from a Cut List.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="NestID" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="ErrorMessage" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresSetInstanceLocation">
    <xsd:annotation>
        <xsd:documentation>
            Sets the location of a part instance.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresShip">
    <xsd:annotation>
        <xsd:documentation>
            Ships or Un-Ships a load.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresShopFloorSave">
    <xsd:annotation>
        <xsd:documentation>
            Adds or Deletes the record of an assembly/part having completed a tracking station.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresSplicePackageTFS">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresSplicePackageTFS_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresSplicePackageTFS_ResultData">
    <xsd:sequence>
        <xsd:element name="DropInventoryItem" type="fsresInventoryItem" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresSplitPackageTFS">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresSplitPackageTFS_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresSplitPackageTFS_ResultData">
    <xsd:sequence>
        <xsd:element name="DropInventoryItem" type="fsresInventoryItem" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresTFSCut">
    <xsd:annotation>
        <xsd:documentation>
            Processes a Take From Stock (Cut).
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="RTSType" minOccurs="1" maxOccurs="1">
                    <xsd:annotation><xsd:documentation>Type of action.</xsd:documentation></xsd:annotation>
                    <xsd:simpleType>
                        <xsd:restriction base="xsd:token">
                            <xsd:enumeration value="No Drop" />
                            <xsd:enumeration value="Scrap" />
                            <xsd:enumeration value="Restock" />
                        </xsd:restriction>
                    </xsd:simpleType>
                </xsd:element>
                <xsd:element name="CutListItemID" type="xsd:token" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation><xsd:documentation>When the cut completes items on a cut list, the CutListItemID values of those cutting details.</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="CutListItemDateTimeCompleted" type="xsd:token" minOccurs="0" maxOccurs="1">
                    <xsd:annotation><xsd:documentation>If the cutting detail was on a cut list, the time it was recorded as being complete.</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ActualHeatNumber" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Heat number of stock actually used</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ActualHeatSerialNumber" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Heat Serial number of stock actually used</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ActualPONumber" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>PO number of stock actually used</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ActualBillOfLadingNumber" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Bill of Lading Number of stock actually used</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ActualCountryOfOrigin" type="xsd:token" minOccurs="1" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Country of Origin of stock actually used</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ActualDropWidth" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Drop width with UOM.</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ActualDropLength" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Drop length with UOM.</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ActualDropLocation" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Location of drop.</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="ActualDropSecondaryLocation" type="xsd:token" minOccurs="0" maxOccurs="1" >
                    <xsd:annotation><xsd:documentation>Secondary location of drop.</xsd:documentation></xsd:annotation>
                </xsd:element>
                <xsd:element name="CutPart" type="fsresTFSCut_CutPart" minOccurs="0" maxOccurs="unbounded" >
                    <xsd:annotation><xsd:documentation>CutPart object.</xsd:documentation></xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresTFSCut_CutPart">
    <xsd:annotation>
        <xsd:documentation>
            A part that has been cut.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Job Number of part cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="MainMark" type="xsd:token" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Main Mark of part cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="PieceMark" type="xsd:token" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Piece Mark of part cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Sequence" type="xsd:token" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Sequence of part cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Lot Number of part cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Quantity of part cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="InstanceNumbers" type="xsd:token" minOccurs="0" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Instance Numbers of part cut</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="CutPartSerialNumber" type="fsresTFSCut_CutPartSerialNumber" minOccurs="0" maxOccurs="unbounded" >
            <xsd:annotation><xsd:documentation>Part Serial Number of part cut</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresTFSCut_CutPartSerialNumber">
    <xsd:annotation>
        <xsd:documentation>
            A serial number of a part that has been cut.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="InstanceNumber" type="xsd:integer" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>InstanceNumber of part with this serial number.</xsd:documentation></xsd:annotation>
        </xsd:element>
        <xsd:element name="SerialNumber" type="xsd:token" minOccurs="1" maxOccurs="1" >
            <xsd:annotation><xsd:documentation>Serial Number.</xsd:documentation></xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresTFSManual">
    <xsd:annotation>
        <xsd:documentation>
            Processes a Take From Stock (Cut).
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="RTSType" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Type of action.
                        </xsd:documentation>
                    </xsd:annotation>
                    <xsd:simpleType>
                        <xsd:restriction base="xsd:token">
                            <xsd:enumeration value="No Drop" />
                            <xsd:enumeration value="Scrap" />
                            <xsd:enumeration value="Restock" />
                        </xsd:restriction>
                    </xsd:simpleType>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresTransmittalGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresTransmittalGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresTransmittalGet_ResultData">
    <xsd:sequence>
        <xsd:element name="LastLogID" type="xsd:token" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>The latest log position, to be used in a subsequent Transmittal_Get request to get only the incremental changes.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="GetOptions" type="fsresTransmittalGetOptions" minOccurs="1" maxOccurs="1" />
        <xsd:element name="DeletedTransmittalID" type="xsd:integer" minOccurs="0" maxOccurs="unbounded">
            <xsd:annotation>
                <xsd:documentation>The TransmittalID values for the drawings that were deleted since the LastLogID value in the request.</xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="Transmittal" type="fsresTransmittal" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="Firm" type="fsresFirm" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="FirmContact" type="fsresFirmContact" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="SentVia" type="fsresSentVia" minOccurs="0" maxOccurs="unbounded" />
        <xsd:element name="ProjectTransmittalStandardText" type="fsresProjectTransmittalStandardText" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresTransmittalGetOptions">
    <xsd:sequence>
        <xsd:element name="IncludeFirmDetails" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="SortOrder" minOccurs="0" maxOccurs="unbounded">
            <xsd:simpleType>
                <xsd:restriction base="xsd:token">
                    <xsd:enumeration value="TransmittalNumber" />
                    <xsd:enumeration value="TransmittalDate" />
                    <xsd:enumeration value="FirmName" />
                    <xsd:enumeration value="FirmContactName" />
                    <xsd:enumeration value="Attn" />
                    <xsd:enumeration value="Title" />
                    <xsd:enumeration value="Sending" />
                    <xsd:enumeration value="Type" />
                    <xsd:enumeration value="NumberOfPrints" />
                    <xsd:enumeration value="PrintsToReturn" />
                    <xsd:enumeration value="NumberOfSets" />
                    <xsd:enumeration value="SentBy" />
                    <xsd:enumeration value="CopyTo" />
                    <xsd:enumeration value="Remarks" />
                    <xsd:enumeration value="StandardText" />
                    <xsd:enumeration value="ReturnDate" />
                    <xsd:enumeration value="SentVia" />
                    <xsd:enumeration value="NumberOfDrawings" />
                    <xsd:enumeration value="NumberOfOutstandingDrawings" />
                    <xsd:enumeration value="LastDateReceived" />
                    <xsd:enumeration value="TransmittalItems" />
                    <xsd:enumeration value="TransmittalPurposes" />
                </xsd:restriction>
            </xsd:simpleType>
        </xsd:element>
        <xsd:element name="SortDescending" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Offset" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Limit" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FilterSet" type="fsresFilterSetSelections" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresUserPartialGet">
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ResultData" type="fsresUserPartialGet_ResultData" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresUserPartialGet_ResultData">
    <xsd:sequence>
        <xsd:element name="User" type="fsresUserPartial" minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresUserPartial">
    <xsd:sequence>
        <xsd:element name="UserID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Username" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="LastName" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="FirstName" type="xsd:token" minOccurs="0" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresValCutListItem">
    <xsd:annotation>
        <xsd:documentation>
            Validates that a cutting detail and inventory stock is valid.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="CutListItemID" type="xsd:integer" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Unique ID of the cutting detail on a cut list.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="CutListSerialNumber" type="xsd:token" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Serial number from the FabSuite report: Shop PC/PO Cutting List w/ Barcodes.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="PlannedInventoryItemID" type="xsd:integer" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            The unique identifier of the inventory record currently associated with this cutting detail.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="QuantityRemaining" type="xsd:integer" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            The quantity remaining to be cut.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="ExternalNestID" type="xsd:token" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Shape" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Grade" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Width" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Area" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Weight" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Kerf" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="ExpectedDrop" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Expected drop for all parts on the cutting detail, even if they didn't match the cut list filter.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="MatchFilterExpectedDrop" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Expected drop for the parts on the cutting detail that match the cut list filter.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="HasNotMatchFilter" type="xsd:boolean" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Indicates if there are one or more parts in the cutting detail that does not match the cut list filter.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="ScrapAmount" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            The FabSuite setting for the level where drop should be scrapped instead of restocked.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="HasTFSStation" type="xsd:boolean" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Indicates if there are one or more parts in the cutting detail that have been assigned a route
                                with a TFS station.  If this is true then the user should be presented with inputs to
                                enter the user that completed the work, the time to complete, and the batch.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="DropJobReservePrompt" minOccurs="0" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            Expected drop for the parts on the cutting detail that match the cut list filter.
                        </xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                        <xsd:simpleContent>
                            <xsd:extension base="fsDropJobReserveOption">
                                <xsd:attribute name="Option" type="xsd:integer" use="required">
                                    <xsd:annotation>
                                        <xsd:documentation>
                                            Numeric code corresponding to the element value:
                                                1000 - Keep reserved for the TFS job
                                                2000 - Prompt for the new job reserve
                                                3000 - Prompt to unreserve
                                                4000 - Always unreserve
                                        </xsd:documentation>
                                    </xsd:annotation>
                                </xsd:attribute>
                                <xsd:attribute name="CurrentJobReserve" type="xsd:token" use="required" />
                            </xsd:extension>
                        </xsd:simpleContent>
                    </xsd:complexType>
                </xsd:element>
                <xsd:element name="MaterialInStock" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
                <xsd:element name="PONumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="BillOfLadingNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="CountryOfOrigin" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="HeatNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="HeatSerialNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Location" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="PartNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="AllowManualExternalNestAlteration" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
                <xsd:element name="CutListItemAvailable" type="fsresCutListItemAvailable" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>
                            Available inventory stock that matches the cutting detail.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="CutPart" type="fsresCutPart" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                        <xsd:documentation>
                            Parts in the cutting detail.  Will only be retrieved if the request command had
                                IncludeCutListItemParts=true.
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
                <xsd:element name="Users" type="fsresUsers" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresCutPart">
    <xsd:annotation>
        <xsd:documentation>
            A Part in a cutting detail.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="MainMark" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PieceMark" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Sequence" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="LotNumber" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Width" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Area" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusCode" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="ApprovalStatusPurpose" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="Route" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TFSStation" type="xsd:token" minOccurs="0" maxOccurs="1" />
        <xsd:element name="TrueShapeID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CNCFileID" type="xsd:integer" minOccurs="0" maxOccurs="1" />
        <xsd:element name="CNCData" type="xsd:token" minOccurs="0" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Contents of the related CNC File (DSTV or DXF) if it has been loaded into FabSuite.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="MatchFilter" type="xsd:boolean" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
                <xsd:documentation>
                    Indicates if the part matches the cut list filter.
                </xsd:documentation>
            </xsd:annotation>
        </xsd:element>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresCutListItemAvailable">
    <xsd:annotation>
        <xsd:documentation>
            Inventory stock available for a cutting detail.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
        <xsd:element name="HeatNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="HeatSerialNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PONumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="BillOfLadingNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="CountryOfOrigin" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="Location" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="1" maxOccurs="1" />
        <xsd:element name="PartNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="fsresValInventory">
    <xsd:annotation>
        <xsd:documentation>
            Retrieves the details of an inventory serial #.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="Quantity" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Shape" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Grade" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Dimensions" type="fsDimensionsWithMetric" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Width" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Length" type="fsDecimalWithUOM" minOccurs="0" maxOccurs="1" />
                <xsd:element name="Supplier" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="PONumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="BillOfLadingNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="CountryOfOrigin" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="MillOfOrigin" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="HeatNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="HeatSerialNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Location" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="SecondaryLocation" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobReserve" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="Remarks" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="WeightEach" type="fsDecimalWithUOM" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresValJob">
    <xsd:annotation>
        <xsd:documentation>
            Validates that the specified production job exists.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresValStation">
    <xsd:annotation>
        <xsd:documentation>
            Validates that the specified tracking station exists.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="StationID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresValTruck">
    <xsd:annotation>
        <xsd:documentation>
            Validates that a truck/load exists, optionally adds it if it does not exist.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="ProductionControlID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
                <xsd:element name="JobNumber" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="TruckAdded" type="xsd:boolean" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresValUser">
    <xsd:annotation>
        <xsd:documentation>
            Validates that a user exists.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="UserID" type="xsd:integer" minOccurs="1" maxOccurs="1" />
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

<xsd:complexType name="fsresVersion">
    <xsd:annotation>
        <xsd:documentation>
            Retrieves the version number of the API.
        </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
        <xsd:extension base="fsresCommand">
            <xsd:sequence>
                <xsd:element name="MajorVersion" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="MinorVersion" type="xsd:token" minOccurs="1" maxOccurs="1" />
                <xsd:element name="InterfaceVersionNumber" type="xsd:token" minOccurs="1" maxOccurs="1">
                    <xsd:annotation>
                        <xsd:documentation>
                            ex: 3.3.1
                        </xsd:documentation>
                    </xsd:annotation>
                </xsd:element>
            </xsd:sequence>
        </xsd:extension>
    </xsd:complexContent>
</xsd:complexType>

</xsd:schema>
 

Was this helpful?
The feedback you give here is not visible to other users. We use your comments to improve the content.