<?xml version="1.0" encoding="UTF-8"?>
<!--




   Schema agency: 	Open Applications Group 


   OAGIS® Revision:    9_4_1  
   Date:               30 June 2009 
   Copyright 1997-2009, All Rights Reserved 

  	
   Copyright (C) Open Applications Group (1997-2009). All Rights Reserved.
  
  
   This is an OAGIS® BOD XML Schema (XSD) Definition.

   License information for this file is provided in the file **OAGi License Agreement.txt** that is provided with this download package.

   For support, more information, or to report implementation bugs, please contact the Open Applications Group at oagis@openapplications.org.
    
   XML Schema 
     
    Name: /OAGi-BPI-Platform/org_openapplications_oagis/9_4_1/Developer/BODs/ProcessServiceOrder.xsd
-->

<!--    *****     Update Log     *****
    
    Date          By      Note
    24 Aug 2011   NO      Draft version....in progress. BOD-1390
    06 Sep 2011   NO      Initial Check-in (JIRA BOD-1390)
    27 Aug 2013    Ajay    Added ActualSalesPriceAmount (BOD 2230)
    20 Sep 2013   LA       Enhancements for ServiceOrder (BOD 2355 and BOD 2230)
    24 Sep 2013   LA       Changes for 2230, changed the way actual amounts on order line are represented.
    27 Sep 2013   LA        Changes for 2374 - new elements EstimatedReturnReason and ActualRetrunReason added
                            Changes for 2355 - review comments from Pat corrected, check the JIRA for details
    26 Nov 2015   LA        LineSourcing added to ServiceMaterialGroupType, BOD-3076
    14 Mar 2016   LA        UserArea added to AssignmentGroupType, BOD-3118
    1 Sep 2017    LA        Note in ServiceMaterialGroupType, ServiceLaborGroupType and ServiceOtherGroupType
                            made as repeating, BOD-3332
    5 Sep 2017    LA       Note in AssignmentGroupType made repeating, BOD-3332
    *****     Update End     *****
    
-->
 
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns="http://schema.infor.com/InforOAGIS/2"
    targetNamespace="http://schema.infor.com/InforOAGIS/2" elementFormDefault="qualified"
    attributeFormDefault="unqualified">

    <xsd:include schemaLocation="../Components/Operational/ManufacturingComponents.xsd"/>

    <xsd:element name="ServiceOrder" type="ServiceOrderType">
        <xsd:annotation>
            <xsd:documentation source="http://www.openapplications.org/oagis/9">A Service Order is an order for a machine, building, 
                tooling or fixed asset to be repaired under warranty or a service agreement.  The service order is a cluster of activities 
                that can be selected from a library or defined at the moment the service order is made. The service order consists of a 
                header, order lines and estimated cost lines. In the header, you can enter general information, including customer, 
                cluster, site/location, and start and end dates.</xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    <xsd:complexType name="ServiceOrderType">
        <xsd:sequence>
            <xsd:element ref="ServiceOrderHeader" minOccurs="0"/>
            <xsd:element ref="ServiceOrderLine" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attribute name="type" type="NormalizedStringType"/>
    </xsd:complexType>
    <xsd:element name="ServiceOrderHeader" type="ServiceOrderHeaderType">
        <xsd:annotation>
            <xsd:documentation source="http://www.openapplications.org/oagis/9">Information that generally describes the 
                service order</xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    <xsd:complexType name="ServiceOrderHeaderType">
        <xsd:complexContent>
            <xsd:extension base="HeaderType">
                <xsd:sequence>
                    <xsd:element ref="PriorityCode" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Identifies the priority of the 
                                Service Order</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="Status" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="CustomerParty" minOccurs="0"/>
                    <xsd:element ref="ShipToParty" minOccurs="0"/>
                    <xsd:element ref="ConfiguredAsset" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="Classification" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="Event" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="ParentServiceOrderID" minOccurs="0" maxOccurs="unbounded">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Indicates the service order that 
                                proceeded this order or from which this service order originated after further investigation or 
                                work was performed.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="ReportedDateTime" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Identifies when the work to be done 
                                in this work order was reported</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="RespondByDateTime" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Indicates the date by which a response 
                                is expected for this service order</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="ChangeDateTime" minOccurs="0" maxOccurs="unbounded">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Timestamp in which the service order 
                                was changed.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="FailureDateTime" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Indicates the timestamp when the machine 
                                failed or broke down such that it was no longer useable.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="PlannedTimePeriod" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Indicates the Planned TimePeriod in 
                                which the service order is planned to be performed.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="ScheduledTimePeriod" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Is the TimePeriod in which the work is 
                                Scheduled to be performed.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="ActualTimePeriod" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Is the TimePeriod in which the work was 
                                actually done. There maybe multiple occurances of this compound if part of the work was completed and 
                                the remainder performed at another time. This may happen when a part needs to be ordered.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="BudgetedAmount" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Is the monetary amount budgeted for the 
                                ServiceOrder.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="BudgetedBaseAmount" minOccurs="0"/>
                    <xsd:element ref="BudgetedReportAmount" minOccurs="0"/>
                    <xsd:element ref="EstimatedAmount" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Is the EstimatedAmount of the 
                                ServiceOrder.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="EstimatedBaseAmount" minOccurs="0"/>
                    <xsd:element ref="EstimatedReportAmount" minOccurs="0"/>
                    <xsd:element ref="ActualAmount" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Is the ActualAmount of the 
                                ServiceOrder.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="ActualBaseAmount" minOccurs="0"/>
                    <xsd:element ref="ActualReportAmount" minOccurs="0"/>
                    <xsd:element ref="EstimatedDuration" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Is an estimate as to how long it 
                                will take to complete the ServiceOrder.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="ActualDuration" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Is the total time spent working on 
                                the ServiceOrder. Is all of the sum of all the occurances of the ActualDuration.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="RemainingDuration" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Time needed to complete the 
                                ServiceOrder.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="ItemInstance" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Indicates the status of the 
                                machine.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="Facility" minOccurs="0"/>
                    <xsd:element ref="JobPlanID" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Is a identifier that describes the 
                                specific type of job sequence being performed/requested.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="PreventiveMaintenanceID" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Describes the specific type of 
                                preventive maintenance sequence being performed/requested.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="CalendarID" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Identifies the service calendar 
                                used when scheduling this service order</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="SplitOperationsIndicator" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Indicates whether an operation in a 
                                service order have to be performed all at once or can be split into non-contiguous work 
                                segments.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="Party" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="PlannerID" minOccurs="0"/>
                    <xsd:element ref="SupervisorID" minOccurs="0"/>
                    <xsd:element ref="RequesterID" minOccurs="0"/>
                    <xsd:element ref="ProjectReference" minOccurs="0"/>
                    <xsd:element ref="Distribution" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="Safety" minOccurs="0"/>
                    <xsd:element ref="Failure" minOccurs="0"/>
                    <xsd:element ref="UserArea" minOccurs="0"/>
                    <xsd:element ref="SalesPersonReference" minOccurs="0"/>
                    <xsd:element ref="PreferredEngineerPerson" minOccurs="0"/>
                    <xsd:element ref="ServiceCarAsset" minOccurs="0"/>                    <!-- BOD-2355 -->
                    <xsd:element ref="EmergencyIndicator" minOccurs="0"/>
                    <xsd:element ref="SiteLocation" minOccurs="0"/>
                    <xsd:element ref="ServiceAreaCode" minOccurs="0"/>
                    <xsd:element ref="ServiceTypeCode" minOccurs="0"/>
                    <xsd:element ref="TravelDuration" minOccurs="0"/>
                    <xsd:element ref="CustomerTimePeriod" minOccurs="0"/>
                    <xsd:element ref="AppointmentIndicator" minOccurs="0"/>
                    <xsd:element ref="BillToParty" minOccurs="0"/>
                    <xsd:element ref="PayFromParty" minOccurs="0"/>
                    <xsd:element ref="PaymentTerm" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="ServiceMaterialGroup" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="ServiceLaborGroup" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="ServiceOtherGroup" minOccurs="0" maxOccurs="unbounded"/>                    
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>

    <xsd:element name="ServiceCarAsset" type="AssetType"/>
    
    <xsd:element name="ItemActual" type="ItemActualType"/>
    <xsd:complexType name="ItemActualType">
        <xsd:sequence>
            <xsd:element ref="ItemInstance" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:group ref="ActualResourceGroup" minOccurs="0"/>
            <xsd:element ref="DownTimeDuration" minOccurs="0"/>
            <xsd:element ref="DownTimePeriod" minOccurs="0"/>
            <xsd:element ref="UserArea" minOccurs="0"/>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:element name="DownTimePeriod" type="TimePeriodType"/>
   
    <xsd:element name="Event" type="EventType">
        <xsd:annotation>
            <xsd:documentation source="http://www.openapplications.org/oagis/9"/>
        </xsd:annotation>
    </xsd:element>
    <xsd:complexType name="EventType">
        <xsd:sequence>
            <xsd:element ref="StartDateTime"  minOccurs="0"/>
            <xsd:element ref="Duration" minOccurs="0"/>
            <xsd:element ref="EndDateTime"  minOccurs="0"/>
            <xsd:element ref="Description" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attribute name="type" type="CodeContentType"/>
    </xsd:complexType>
    <xsd:simpleType name="CodeContentType">
        <xsd:restriction base="NormalizedStringType"/>
    </xsd:simpleType>


    <xsd:element name="ServiceOrderLine" type="ServiceOrderLineType">
        <xsd:annotation>
            <xsd:documentation>If the service order status is Free, Planned, or Released, you can add new activity lines. 
                New activities are created with the status Free. The information that is recorded about the activity is used 
                to specify what type of work is performed. You can record information such as what the work is performed on, 
                for example, item, anonymous item, or serial number, when the work is performed, what skills are required to 
                perform the work, and any changes that will occur to the cluster based on the work performed. The information 
                for the activity can be defaulted if linked to a reference activity.</xsd:documentation>
        </xsd:annotation>

    </xsd:element>
    <xsd:complexType name="ServiceOrderLineType">
        <xsd:complexContent>
            <xsd:extension base="LineType">
                <xsd:sequence>
                    <xsd:element ref="ShipToParty" minOccurs="0"/>
                    <xsd:element ref="ProjectReference" minOccurs="0"/>            <!--BOD-2355-->
                    <xsd:element ref="OperationID" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">This is the identifier of the 
                                Service Operation</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                                        
                    <xsd:element ref="ActualDuration" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Is the total time spent working 
                                on the ServiceOrder. Is all of the sum of all the occurances of the ActualTimePeriod.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="RemainingDuration" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Time needed to complete the 
                                ServiceOrder.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="EstimatedDuration" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Is an estimate as to how long 
                                it will take to complete the ServiceOrder.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="ReportedDateTime" minOccurs="0"/>
                    <xsd:element ref="CompletionDateTime" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Is the timestamp that indicates 
                                when the ServiceOrder was completed.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="MeterRecording" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="Safety" minOccurs="0"/>
                    <xsd:element ref="Failure" minOccurs="0"/>
                    <xsd:element ref="Distribution" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="UserArea" minOccurs="0"/>
                    <xsd:element ref="Status" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="ActivityTemplateCode" minOccurs="0"/>
                    <xsd:element ref="ServiceTypeCode" minOccurs="0"/>
                    <xsd:element ref="CoverageTypeCode" minOccurs="0"/>
                    <xsd:element ref="ConfiguredAsset" minOccurs="0" maxOccurs="unbounded"/>
                    
                    <xsd:element ref="EstimatedDownTimeDuration" minOccurs="0"/>	<!--BOD-2355-->
                    <xsd:element ref="ActualDownTimeDuration" minOccurs="0"/>
                    
                    <xsd:element ref="CustomerTimePeriod" minOccurs="0"/>
                    <xsd:element ref="PlannedTimePeriod" minOccurs="0"/>
                    <xsd:element ref="AppointmentIndicator" minOccurs="0"/>
                    <xsd:element ref="ActualTimePeriod" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation source="http://www.openapplications.org/oagis/9">Is the TimePeriod in which the work was 
                                actually done. There maybe multiple occurances of this compound if part of the work was completed and 
                                the remainder performed at another time. This may happen when a part needs to be ordered.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="SiteLocation" minOccurs="0"/>                    <!--BOD-2355-->
                    <xsd:element ref="ServiceCarAsset" minOccurs="0"/>
                    <xsd:element ref="PlannedTravelTimePeriod" minOccurs="0"/>
                    <xsd:element ref="ActualTravelTimePeriod" minOccurs="0"/>
                    <xsd:element ref="TravelDistance" minOccurs="0"/>
                                        
                    <xsd:element ref="SupplierParty" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation>This is used for referencing the Subcontractor SupplierParty.</xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="RequiredServiceSkills" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="CustomerCallReference" minOccurs="0"/>            
                    <xsd:element ref="ActualAmounts" minOccurs="0" maxOccurs="unbounded"/>                    <!--BOD-2230 -->
                    <xsd:element ref="AssignmentGroup" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="ServiceMaterialGroup" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="ServiceLaborGroup" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="ServiceOtherGroup" minOccurs="0" maxOccurs="unbounded"/>
                    <xsd:element ref="ReportedProblemCode" minOccurs="0"/>        <!--BOD-2355-->
                    <xsd:element ref="ExpectedProblemCode" minOccurs="0"/>
                    <xsd:element ref="ExpectedSolutionCode" minOccurs="0"/>  
                    <xsd:element ref="PriorityCode" minOccurs="0"/>
                    <xsd:element ref="ActualProblemCode" minOccurs="0"/>
                    <xsd:element ref="ActualSolutionCode" minOccurs="0"/>
                    
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
    
    <xsd:element name="PlannedTravelTimePeriod" type="TimePeriodType">
        <xsd:annotation>
            <xsd:documentation>Indicates the planned travel time period. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    <xsd:element name="ActualTravelTimePeriod" type="TimePeriodType">
        <xsd:annotation>
            <xsd:documentation>Indicates the actual travel time period. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    <xsd:element name="TravelDistance" type="MeasureType"/>
    
    <xsd:element name="EstimatedDownTimeDuration" type="DurationMeasureType"/>
    <xsd:element name="ActualDownTimeDuration" type="DurationMeasureType"/>
    
    <xsd:element name="ActualAmounts" type="AmountsType"/>

    <xsd:complexType name="AmountsType">
        <xsd:sequence>
            <xsd:element ref="CostAmount" minOccurs="0"/>
            <xsd:element ref="CostBaseAmount" minOccurs="0"/>
            <xsd:element ref="CostReportAmount" minOccurs="0"/>
            
            <xsd:element ref="SalesAmount" minOccurs="0"/>
            <xsd:element ref="SalesBaseAmount" minOccurs="0"/>
            <xsd:element ref="SalesReportAmount" minOccurs="0"/>
            
            <xsd:element ref="InvoiceAmount" minOccurs="0"/>
            <xsd:element ref="InvoiceBaseAmount" minOccurs="0"/>
            <xsd:element ref="InvoiceReportAmount" minOccurs="0"/>
            
            <xsd:element ref="DistributedTax" minOccurs="0" maxOccurs="unbounded"/>
            
            <xsd:element ref="TotalInvoiceAmount" minOccurs="0"/>
            <xsd:element ref="TotalInvoiceBaseAmount" minOccurs="0"/>
            <xsd:element ref="TotalInvoiceReportAmount" minOccurs="0"/>
        </xsd:sequence>
        <xsd:attribute name="costType" use="optional"/>
    </xsd:complexType>
    
    <xsd:element name="InvoiceAmount" type="AmountType"/>
    <xsd:element name="InvoiceBaseAmount" type="AmountType"/>
    <xsd:element name="InvoiceReportAmount" type="AmountType"/>
    <xsd:element name="TotalInvoiceAmount" type="AmountType"/>
    <xsd:element name="TotalInvoiceBaseAmount" type="AmountType"/>
    <xsd:element name="TotalInvoiceReportAmount" type="AmountType"/>
    
    <xsd:element name="PreferredEngineerPerson" type="PersonType">
        <xsd:annotation>
            <xsd:documentation>Identifies the preferred service engineer assigned. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="ServiceTypeCode" type="CodeType">
        <xsd:annotation>
            <xsd:documentation>Identifies the type of service for this order. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="TravelDuration" type="DurationMeasureType">
        <xsd:annotation>
            <xsd:documentation>The amount of time the service engineer requires to travel (oneway) to the location where 
                the service order is to be implemented. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="ActivityTemplateCode" type="CodeType">
        <xsd:annotation>
            <xsd:documentation>building blocks that provide the activity base. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="DeliveryTypeCode" type="CodeType">
        <xsd:annotation>
            <xsd:documentation>Identifies the type of delivery is associated with this line. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="EstimatedWarehouseLocation" type="LocationType">
        <xsd:annotation>
            <xsd:documentation>Identifies the location of the estimated warehouse. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="ActualWarehouseLocation" type="LocationType">
        <xsd:annotation>
            <xsd:documentation>Identifies the location of the actual warehouse. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:complexType name="RequiredServiceSkillsType">
        <xsd:complexContent>
            <xsd:extension base="ProfessionalSkillType">
                <xsd:sequence>
                    <xsd:element ref="MandatoryIndicator" minOccurs="0"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>

    <xsd:element name="RequiredServiceSkills" type="RequiredServiceSkillsType">
        <xsd:annotation>
            <xsd:documentation>Identifies skills required to perforn the activity.</xsd:documentation>
        </xsd:annotation>
    </xsd:element>


    <xsd:element name="AssignmentGroup" type="AssignmentGroupType">
        <xsd:annotation>
            <xsd:documentation>Each activity will get in the planning phase one or more assignments.</xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    
    <xsd:complexType name="AssignmentGroupType">
        <xsd:sequence>
            <xsd:element ref="LineNumber" minOccurs="0"/>
            <xsd:element ref="ActivityEngineerPerson" minOccurs="0"/>
            <xsd:element ref="Status" minOccurs="0"/>
            <xsd:element ref="AcceptedDateTime" minOccurs="0"/>
            <xsd:element ref="RejectionDatetime" minOccurs="0"/>
            <xsd:element ref="PlannedTimePeriod" minOccurs="0"/>
            <xsd:element ref="ActualTimePeriod" minOccurs="0"/>
            <xsd:element ref="PlannedTravelTimePeriod" minOccurs="0"/>    <!--BOD-2355-->
            <xsd:element ref="ActualTravelTimePeriod" minOccurs="0"/>
            <xsd:element ref="Note" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="UserArea" minOccurs="0"/>
        </xsd:sequence>
    </xsd:complexType>
    

    <xsd:element name="ActivityEngineerPerson" type="PersonReferenceType">
        <xsd:annotation>
            <xsd:documentation>Identifies the engineer assigned to the activity.</xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="AcceptedDateTime" type="DateTimeType">
        <xsd:annotation>
            <xsd:documentation>Identifies date/time the assignment was accepted. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="RejectionDatetime" type="DateTimeType">
        <xsd:annotation>
            <xsd:documentation>Identifies date/time the assignment was rejected. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    

    <xsd:element name="ServiceMaterialGroup" type="ServiceMaterialGroupType">
        <xsd:annotation>
            <xsd:documentation>Contains Estimated and Actual Resources for each Material Line.</xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    
    <xsd:complexType name="ServiceMaterialGroupType">
        <xsd:sequence>
            <xsd:element ref="LineNumber" minOccurs="0"/>
            <xsd:element ref="MaterialEngineerPerson" minOccurs="0"/>
            <xsd:element ref="Status" minOccurs="0"/>
            <xsd:element ref="Note" minOccurs="0" maxOccurs="unbounded"/>                    
            <xsd:element ref="CreationDateTime" minOccurs="0"/>
            <xsd:element ref="InvoiceDateTime" minOccurs="0"/>

            <xsd:element ref="MaterialItem" minOccurs="0"/>
            <xsd:element ref="Classification" minOccurs="0"/>    <!-- BOD-2355-->
            
            <xsd:element ref="ShipToParty" minOccurs="0"/>
                       
            <xsd:element ref="EstimatedDeliveryTypeCode" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>
                        Indicates how the material would be delivered for the service order or how the item would be 
                        returned from customer for repair or replacement. Check the code list 
                        Service Delivery Types for a complete list of available types. 
                    </xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element ref="ActualDeliveryTypeCode" minOccurs="0"/>
            
            <xsd:element ref="EstimatedReturnReason" minOccurs="0">                        <!-- BOD-2374 -->
                <xsd:annotation>
                    <xsd:documentation>Indicates the probable reason because of which item is being returned by customer</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element ref="ActualReturnReason" minOccurs="0">                        <!-- BOD-2374 -->
                <xsd:annotation>
                    <xsd:documentation>Indicates the actual reason because of which item is being returned by customer</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            
            <xsd:element ref="DocumentReference" minOccurs="0"> <!-- BOD-2355-->
                <xsd:annotation>
                    <xsd:documentation>Indicates the details of the related document with which material is procured. 
                        It could be a purchase order or a warehouse transfer</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element ref="SupplierParty" minOccurs="0">    <!-- BOD-2355-->
                <xsd:annotation>
                    <xsd:documentation>Indicates the supplier from which material is procured. </xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element ref="EstimatedWarehouseLocation" minOccurs="0">        <!-- BOD-2355-->
                <xsd:annotation>
                    <xsd:documentation>Indicates the warehouse in which the material would be received in case of a purchase order or 
                                       a warehouse transfer. Note that in case of purchase direct delivery, warehouse need not be filled.                   
                    </xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element ref="EstimatedQuantity" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation >Indicates the estimated quantity of the material. Note that even for return delivery types quantity would be positive only </xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element ref="EstimatedBaseUOMQuantity" minOccurs="0"/>
            <xsd:element ref="LineSourcing" minOccurs="0"/>
            <xsd:element ref="DropShipIndicator" minOccurs="0"/> 
            <xsd:element ref="ActualQuantity" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation >Indicates the actual quantity of the material. Note that even for return delivery types quantity would be positive only </xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element ref="ActualBaseUOMQuantity" minOccurs="0"/>
            <xsd:element ref="InvoiceQuantity" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation >Indicates the invoiced quantity of the material. Note that even for return delivery types quantity would be positive only </xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element ref="InvoiceBaseUOMQuantity" minOccurs="0"/>
            
            
             <xsd:element ref="ActualWarehouseLocation" minOccurs="0"/>
            
            <xsd:element ref="PricingRequiredIndicator" minOccurs="0"/>           <!--BOD-2230-->
            <xsd:element ref="EstimatedPrices" minOccurs="0"/>
            <xsd:element ref="ActualPrices" minOccurs="0"/>

                       
            <xsd:element ref="EstimatedCostPriceAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedCostPriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedCostPriceReportAmount" minOccurs="0"/>
            <xsd:element ref="ActualCostPriceAmount" minOccurs="0"/>
            <xsd:element ref="ActualCostPriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="ActualCostPriceReportAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedSalesPriceAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedSalesPriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedSalesPriceReportAmount" minOccurs="0"/>
            <xsd:element ref="ActualSalesPriceAmount" minOccurs="0"/>
            <xsd:element ref="ActualSalesPriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="ActualSalesPriceReportAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedInvoicePriceAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedInvoicePriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedInvoicePriceReportAmount" minOccurs="0"/>
            
            <xsd:element ref="EstimatedDistributedTax" minOccurs="0" maxOccurs="unbounded"/>                    <!--BOD-2230-->
            <xsd:element ref="EstimatedTotalInvoiceAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedTotalInvoiceBaseAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedTotalInvoiceReportAmount" minOccurs="0"/>
           
            <xsd:element ref="ActualInvoicePriceAmount" minOccurs="0"/>
            <xsd:element ref="ActualInvoicePriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="ActualInvoicePriceReportAmount" minOccurs="0"/>
            
            <xsd:element ref="ActualDistributedTax" minOccurs="0" maxOccurs="unbounded"/>                    <!--BOD-2230-->
            <xsd:element ref="ActualTotalInvoiceAmount" minOccurs="0"/>
            <xsd:element ref="ActualTotalInvoiceBaseAmount" minOccurs="0"/>
            <xsd:element ref="ActualTotalInvoiceReportAmount" minOccurs="0"/>
            
            <xsd:element ref="UserArea" minOccurs="0"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:element name="EstimatedDistributedTax" type="DistributedTaxType"/>                    <!--BOD-2230-->
    <xsd:element name="EstimatedTotalInvoiceAmount" type="AmountType"/>
    <xsd:element name="EstimatedTotalInvoiceBaseAmount" type="AmountType"/>
    <xsd:element name="EstimatedTotalInvoiceReportAmount" type="AmountType"/>
    <xsd:element name="ActualDistributedTax" type="DistributedTaxType"/>                    
    <xsd:element name="ActualTotalInvoiceAmount" type="AmountType"/>
    <xsd:element name="ActualTotalInvoiceBaseAmount" type="AmountType"/>
    <xsd:element name="ActualTotalInvoiceReportAmount" type="AmountType"/>

    <xsd:element name="MaterialEngineerPerson" type="PersonReferenceType">
        <xsd:annotation>
            <xsd:documentation>Identifies the engineer assigned to the Material Line.</xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="EstimatedDeliveryTypeCode" type="CodeType">
        <xsd:annotation>
            <xsd:documentation>Identifies the estimated Delivery Type to be used. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="ActualDeliveryTypeCode" type="CodeType">
        <xsd:annotation>
            <xsd:documentation>Identifies the Delivery Type to was actually used. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    
    <xsd:element name="EstimatedReturnReason" type="CodeType"/>
    <xsd:element name="ActualReturnReason" type="CodeType"/>

    <xsd:element name="InvoiceQuantity" type="QuantityType">
        <xsd:annotation>
            <xsd:documentation>Identifies invoice quantity. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>
      
    <xsd:element name="MaterialItem" type="ItemType">
        <xsd:annotation>
            <xsd:documentation>Item associated with the Service Material used. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="ServiceLaborGroup" type="ServiceLaborGroupType">
        <xsd:annotation>
            <xsd:documentation>Contains information for each Service Labor Line.</xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    
    <xsd:complexType name="ServiceLaborGroupType">
        <xsd:sequence>
            <xsd:element ref="LineNumber" minOccurs="0"/>
            <xsd:element ref="CreationDateTime" minOccurs="0"/>
            <xsd:element ref="Status" minOccurs="0"/>
            <xsd:element ref="Note" minOccurs="0" maxOccurs="unbounded"/>        <!-- BOD-2355 -->
            <xsd:element ref="LineCode" minOccurs="0"/>
            <xsd:element ref="Classification" minOccurs="0"/>     <!-- BOD-2355-->
            <xsd:element ref="DocumentReference" minOccurs="0"/>
            <xsd:element ref="PersonReference" minOccurs="0"/>
            
            <xsd:element ref="InvoiceDateTime" minOccurs="0"/>
            <xsd:element ref="EstimatedTimeDuration" minOccurs="0"/>
            <xsd:element ref="ActualTimeDuration" minOccurs="0"/>
            
            <xsd:element ref="PricingRequiredIndicator" minOccurs="0"/>
            <xsd:element ref="EstimatedPrices" minOccurs="0"/>
            <xsd:element ref="ActualPrices" minOccurs="0"/>
                       
            <xsd:element ref="EstimatedCostPriceAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedCostPriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedCostPriceReportAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedSalesPriceAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedSalesPriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedSalesPriceReportAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedInvoicePriceAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedInvoicePriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedInvoicePriceReportAmount" minOccurs="0"/>
            
            <xsd:element ref="EstimatedDistributedTax" minOccurs="0" maxOccurs="unbounded"/>                    <!--BOD-2230-->
            <xsd:element ref="EstimatedTotalInvoiceAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedTotalInvoiceBaseAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedTotalInvoiceReportAmount" minOccurs="0"/>
            
            <xsd:element ref="ActualCostPriceAmount" minOccurs="0"/>
            <xsd:element ref="ActualCostPriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="ActualCostPriceReportAmount" minOccurs="0"/>
            <xsd:element ref="ActualSalesPriceAmount" minOccurs="0"/>
            <xsd:element ref="ActualSalesPriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="ActualSalesPriceReportAmount" minOccurs="0"/>
            <xsd:element ref="ActualInvoicePriceAmount" minOccurs="0"/>
            <xsd:element ref="ActualInvoicePriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="ActualInvoicePriceReportAmount" minOccurs="0"/>
            
            <xsd:element ref="ActualDistributedTax" minOccurs="0" maxOccurs="unbounded"/>                    <!--BOD-2230-->
            <xsd:element ref="ActualTotalInvoiceAmount" minOccurs="0"/>
            <xsd:element ref="ActualTotalInvoiceBaseAmount" minOccurs="0"/>
            <xsd:element ref="ActualTotalInvoiceReportAmount" minOccurs="0"/>
            
            
            <xsd:element ref="EstimatedLaborRate" minOccurs="0"/>
            <xsd:element ref="ActualLaborRate" minOccurs="0"/>
            <xsd:element ref="UserArea" minOccurs="0"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:element name="LineCode" type="CodeType">
        <xsd:annotation>
            <xsd:documentation>Identifies the Task Code for this Labor Line. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="LaborInvoiceDateTime" type="DateTimeType">
        <xsd:annotation>
            <xsd:documentation>Identifies invoice date/time for the Labor. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="EstimatedTimeDuration" type="DurationMeasureType">
        <xsd:annotation>
            <xsd:documentation>Identifies estimated labor time duration for the labor. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="ActualTimeDuration" type="DurationMeasureType">
        <xsd:annotation>
            <xsd:documentation>Identifies actual labor time duration for the labor. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="EstimatedCostPriceAmount" type="AmountType">
        <xsd:annotation>
            <xsd:documentation>Identifies Estimated Cost Price Amount for the Labor (in transaction currency)</xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="EstimatedSalesPriceAmount" type="AmountType">
        <xsd:annotation>
            <xsd:documentation>Identifies Estimated Cost Price Amount for the Labor (in transaction currency).</xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="EstimatedInvoicePriceAmount" type="AmountType">
        <xsd:annotation>
            <xsd:documentation>Identifies Estimated Cost Price Amount for the Labor (in transaction currency).</xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="ActualCostPriceAmount" type="AmountType">
        <xsd:annotation>
            <xsd:documentation>Identifies Actual Cost Price Amount for the Labor (in transaction currency)</xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="ActualSalesPriceAmount" type="AmountType">
        <xsd:annotation>
            <xsd:documentation>Identifies Actual Cost Price Amount for the Labor (in transaction currency).</xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="ActualInvoicePriceAmount" type="AmountType">
        <xsd:annotation>
            <xsd:documentation>Identifies Actual Cost Price Amount for the Labor (in transaction currency).</xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="EstimatedLaborRate" type="RateType">
        <xsd:annotation>
            <xsd:documentation>Identifies Estimated Rate for the Labor.</xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="ActualLaborRate" type="RateType">
        <xsd:annotation>
            <xsd:documentation>Identifies Actual Rate for the Labor.</xsd:documentation>
        </xsd:annotation>
    </xsd:element>


    <xsd:element name="ServiceOtherGroup" type="ServiceOtherGroupType">
        <xsd:annotation>
            <xsd:documentation>Contains information for each Service.</xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    
    <xsd:complexType name="ServiceOtherGroupType">
        <xsd:sequence>
            <xsd:element ref="LineNumber" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>This is used for uniqueness of this instance of the Service Other Line. </xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element ref="CreationDateTime" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>Identifies date/time the Service Other Line was created. </xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element ref="Status" minOccurs="0"/>
            <xsd:element ref="Note" minOccurs="0" maxOccurs="unbounded"/>        <!-- BOD-2355 -->
            <xsd:element ref="Description" minOccurs="0"/>
            <xsd:element ref="CostTypeCode" minOccurs="0"/>
            
            <xsd:element ref="Item" minOccurs="0"/>                <!--BOD-2355 -->
            <xsd:element ref="Classification" minOccurs="0" maxOccurs="unbounded"/> 
            <xsd:element ref="DocumentReference" minOccurs="0"/>
            <xsd:element ref="PersonReference" minOccurs="0"/>
            <xsd:element ref="PlannedTravelTimePeriod" minOccurs="0"/>
            <xsd:element ref="ActualTravelTimePeriod" minOccurs="0"/>
            <xsd:element ref="PlannedTravelDistance" minOccurs="0"/>
            <xsd:element ref="ActualTravelDistance" minOccurs="0"/>
            
            <xsd:element ref="EstimatedCallOutAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedCallOutBaseAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedCallOutReportAmount" minOccurs="0"/>
            <xsd:element ref="ActualCallOutAmount" minOccurs="0"/>
            <xsd:element ref="ActualCallOutBaseAmount" minOccurs="0"/>
            <xsd:element ref="ActualCallOutReportAmount" minOccurs="0"/>
            
            <xsd:element ref="PricingRequiredIndicator" minOccurs="0"/>
            <xsd:element ref="EstimatedPrices" minOccurs="0"/>
            <xsd:element ref="ActualPrices" minOccurs="0"/>
            
            <xsd:element ref="EstimatedCostPriceAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedCostPriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedCostPriceReportAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedSalesPriceAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedSalesPriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedSalesPriceReportAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedInvoicePriceAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedInvoicePriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedInvoicePriceReportAmount" minOccurs="0"/>
            
            <xsd:element ref="EstimatedDistributedTax" minOccurs="0" maxOccurs="unbounded"/>                    <!--BOD-2230-->
            <xsd:element ref="EstimatedTotalInvoiceAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedTotalInvoiceBaseAmount" minOccurs="0"/>
            <xsd:element ref="EstimatedTotalInvoiceReportAmount" minOccurs="0"/>
            
            <xsd:element ref="ActualCostPriceAmount" minOccurs="0"/>
            <xsd:element ref="ActualCostPriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="ActualCostPriceReportAmount" minOccurs="0"/>
            <xsd:element ref="ActualSalesPriceAmount" minOccurs="0"/>
            <xsd:element ref="ActualSalesPriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="ActualSalesPriceReportAmount" minOccurs="0"/>
            <xsd:element ref="ActualInvoicePriceAmount" minOccurs="0"/>
            <xsd:element ref="ActualInvoicePriceBaseAmount" minOccurs="0"/>
            <xsd:element ref="ActualInvoicePriceReportAmount" minOccurs="0"/>
           
            <xsd:element ref="ActualDistributedTax" minOccurs="0" maxOccurs="unbounded"/>                    <!--BOD-2230-->
            <xsd:element ref="ActualTotalInvoiceAmount" minOccurs="0"/>
            <xsd:element ref="ActualTotalInvoiceBaseAmount" minOccurs="0"/>
            <xsd:element ref="ActualTotalInvoiceReportAmount" minOccurs="0"/>
            
            
            <xsd:element ref="EstimatedQuantity" minOccurs="0"/>
            <xsd:element ref="ActualQuantity" minOccurs="0"/>
            
            <xsd:element ref="InvoiceDateTime" minOccurs="0"/>
            <xsd:element ref="UserArea" minOccurs="0"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:element name="PlannedTravelDistance" type="MeasureType"/>
    <xsd:element name="ActualTravelDistance" type="MeasureType"/>
    <xsd:element name="EstimatedQuantity" type="QuantityType">
        <xsd:annotation>
            <xsd:documentation>Identifies estimated quantity. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="ActualQuantity" type="QuantityType">
        <xsd:annotation>
            <xsd:documentation>Identifies actual quantity. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>

    <xsd:element name="InvoiceDateTime" type="DateTimeType">
        <xsd:annotation>
            <xsd:documentation>Identifies date/time the Service Other was invoiced. </xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    
    <xsd:element name="EstimatedCallOutAmount" type="AmountType"/>
    <xsd:element name="EstimatedCallOutBaseAmount" type="AmountType"/>
    <xsd:element name="EstimatedCallOutReportAmount" type="AmountType"/>
    <xsd:element name="ActualCallOutAmount" type="AmountType"/>
    <xsd:element name="ActualCallOutBaseAmount" type="AmountType"/>
    <xsd:element name="ActualCallOutReportAmount" type="AmountType"/>
    
    <xsd:element name="EstimatedPrices" type="PricesType"/>
    <xsd:element name="ActualPrices" type="PricesType"/>
    
    <xsd:complexType name="PricesType">
        <xsd:sequence>
            <xsd:element ref="CostPrice" minOccurs="0"/>
            <xsd:element ref="SalesPrice" minOccurs="0"/>
        </xsd:sequence>
    </xsd:complexType>

</xsd:schema>
