<?xml version="1.0" encoding="utf-8"?>
<!--
        
        ** OAGIS® Revision: 9.1  **
        ** Date: 11 May 2007 **
        ** Copyright 1997-2007, 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 xml@openapplications.org.
        
        XML Schema 
        
-->
 
<!--
© Copyright 2007 Infor Global Solutions Technology GmbH and/or its affiliates and subsidiaries. All rights reserved. The 
word and design marks set forth herein are trademarks and/or registered trademarks of Infor Global Solutions 
Technology GmbH and/or its affiliates and subsidiaries. All rights reserved. All other trademarks listed herein 
are the property of their respective owners.
 
-->
 
<!--    *****     Update Log     *****
 
Date          By      Note
10 Apr 2008    JB      Added correct Copyright and update comments to schema.
17 Oct 2008    JB      Added ItemsConsumed (Lot like the BOM bod) for new production BODs ProductionOrder and BillOfResources
17 Oct 2008    JB      Added BillOfResourcesType, BillOfResourcesReferenceType
23 Oct 2008    JB      Added OriginationDataType and added ItemOrigination to InputItemType
23 Oct 2008    JB      Changed element name ItemsConsumed to ConsumedItems
23 Oct 2008    JB      Changed ItemOrigination to OriginationItemData
11 Nov 2008    JB      Changed cardinality on NextID in operations to be 0..*
11 Nov 2008    JB      Added YieldPercent, ScrapFactor, and ScrapQuantity to InputItemType.
13 Nov 2008    JB      Removed PannedCost and ActucalCost added Costing. Added location to ManurfacturingItemType.
20 Nov 2008    JB      Changed ConsumedItem to contain contents of InputItem to help flatten out the structure some.
02 Dec 2008    JB      Changed InputItemType and InputItemSchedule to ConsumedItemType and ConsumedItemSchedule respectfully.
09 Dec 2008    JB      Changed BillOfResourcesHeaderType to extend StatusEnabledDocumentIDHeaderType.
09 Dec 2008    JB      Added DocumentReference and Status to ConsumedItemType
09 Dec 2008    JB      Added OrderQuantity and DueQuantity to ManufacturingOutputItemType
23 Jan 2009    JB      Added LineNumber to ConsumedItemType and ManufacturingOutputItemType
14 Jan 2010    PO      Added ActualDateTime to the actual resources. (BOD-1214)
19 Jan 2010    JB      Changed CostAllocationPercent to have maxOccurs unbounded. (BOD-747)
02 Aug 2010    NO      Added OvertimeLabourIndicator. (BOD-1361)
13 Oct 2010    NO      Moved RejectionType down to Common/Components.
13 Dec 2010    NO      Changed RespondingScheduleReference's basetype to OrderReferenceType (BOD-1489)

        *****     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="../Common/Components.xsd"/>

        <xsd:element name="FinishedGoodItem" type="ManufacturingItemType">

                <xsd:annotation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Is the
                                finished good en item. In the case that the Item is raw material or
                                sub-compoenent. This identifies the finished good that it is for.
                                For example in case of Manufacturing an airplane and the compenents
                                used must be tracked.</xsd:documentation>

                </xsd:annotation>

        </xsd:element>

        <xsd:group name="LotSizeGroup">

                <xsd:sequence>

                        <xsd:element ref="MaximumLotSizeQuantity" minOccurs="0"/>

                        <xsd:element ref="MinimumLotSizeQuantity" minOccurs="0"/>

                        <xsd:element ref="LotSizeMultipler" minOccurs="0"/>

                </xsd:sequence>

        </xsd:group>

        <xsd:complexType name="ManufacturingItemBaseType">

                <xsd:complexContent>

                        <xsd:extension base="ItemInstanceType">

                                <xsd:sequence>

                                        <xsd:element ref="Lot" minOccurs="0" maxOccurs="unbounded"/>

                                        <xsd:element ref="Type" minOccurs="0"/>

                                        <xsd:element ref="EffectiveTimePeriod" minOccurs="0"/>

                                        <xsd:element ref="ExecutionTimePeriod" minOccurs="0"/>

                                        <xsd:element ref="FixedQuantityIndicator" minOccurs="0"/>

                                        <xsd:group ref="LotSizeGroup" minOccurs="0"/>

                                        <xsd:element ref="LeadTimeDuration" minOccurs="0"/>

                                        <xsd:element ref="RequiredPercent" minOccurs="0"/>

                                        <xsd:choice>

                                                <xsd:annotation>

                                                  <xsd:documentation
                                                  source="http://schema.infor.com/InforOAGIS/2"
                                                  >Idicates if the Item is reported
                                                  theoretically (back-flushed) or if
                                                  the ITEM is reported directly
                                                  (actual)</xsd:documentation>

                                                </xsd:annotation>

                                                <xsd:element ref="BackFlushedIndicator"
                                                  minOccurs="0"/>

                                                <xsd:element ref="ActualIndicator" minOccurs="0"/>

                                        </xsd:choice>

                                        <xsd:element ref="TrackingIndicator" minOccurs="0"/>

                                        <xsd:element ref="ScrapIndicator" minOccurs="0"/>

                                </xsd:sequence>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:complexType name="ManufacturingItemType">

                <xsd:complexContent>

                        <xsd:extension base="ManufacturingItemBaseType">

                                <xsd:sequence>

<!--                                        <xsd:element ref="UserArea" minOccurs="0"/> -->

                                </xsd:sequence>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:element name="ManufacturingItem" type="ManufacturingItemType">

                <xsd:annotation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Is the
                                manufacturing view of an Item where the complete detail of an Item
                                is represented by the MasterItem.</xsd:documentation>

                </xsd:annotation>

        </xsd:element>

        <xsd:group name="OperationGroup">

                <xsd:annotation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Group of
                                Operation elements that occur together in the Operation and
                                QualifiedResource.</xsd:documentation>

                </xsd:annotation>

                <xsd:sequence>

                        <xsd:element ref="BatchSizeQuantity" minOccurs="0"/>

                        <xsd:element ref="PerishedInOperationQuantity" minOccurs="0"/>

                        <xsd:element ref="PerishedBetweenOperationsQuantity" minOccurs="0"/>

                        <xsd:element ref="TransferLotQuantity" minOccurs="0"/>

                        <xsd:element ref="SetupTimeDuration" minOccurs="0"/>

                        <xsd:element ref="WaitTimeDuration" minOccurs="0"/>

                        <xsd:element ref="RunTimeDuration" minOccurs="0"/>

                        <xsd:element ref="TearDownDuration" minOccurs="0"/>

                        <xsd:element ref="BatchDuration" minOccurs="0"/>

                        <xsd:element ref="QueueDuration" minOccurs="0"/>

                        <xsd:element ref="MoveDuration" minOccurs="0"/>

                        <xsd:element ref="FixedDuration" minOccurs="0"/>

                        <xsd:element ref="RejectPercent" minOccurs="0"/>
                        
                        <xsd:element ref="MoveOverlapDuration" minOccurs="0"/>
                        
                        <xsd:element ref="QueueOverlapDuration" minOccurs="0" />

                </xsd:sequence>

        </xsd:group>
        
        <xsd:complexType name="OperationBaseType">
                                <xsd:sequence>
                                        <xsd:element ref="ID" minOccurs="0" />
                                        <xsd:element ref="NextID" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:group ref="FreeFormTextGroup" minOccurs="0"/>
                                        <xsd:group ref="ReferencesGroup" minOccurs="0"/>
                                        <xsd:element ref="Status" minOccurs="0" />
                                </xsd:sequence>
        </xsd:complexType>
        
        <xsd:complexType name="OperationType">
                <xsd:complexContent>
                        <xsd:extension base="OperationBaseType">
                                <xsd:sequence>
                                        <xsd:element ref="BOMReference" minOccurs="0"
                                                maxOccurs="unbounded">
                                                <xsd:annotation>
                                                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">
                                                                This reference is no longer used
                                                        </xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element ref="RouteReference" minOccurs="0"
                                                maxOccurs="unbounded">
                                                <xsd:annotation>
                                                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">
                                                                This reference is no longer used
                                                        </xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element ref="Type" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation
                                                  source="http://schema.infor.com/InforOAGIS/2"
                                                  >Is used to indicate how the rates
                                                  are specified. </xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element ref="ConsumedItem" minOccurs="0" maxOccurs="unbounded" />
                                        <xsd:element ref="OutputItem" minOccurs="0" maxOccurs="unbounded" />
                                        <xsd:element ref="ConstrainedResourceReference" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="CostType" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation
                                                  source="http://schema.infor.com/InforOAGIS/2"
                                                  >Is the.methodology by which the
                                                  value of an item is determined.
                                                  Values are: Standard Moving Average
                                                  LIFO - last in first out. FIFO -
                                                  first in first out.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element ref="ContainerType" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation
                                                  source="http://schema.infor.com/InforOAGIS/2"
                                                  >Identifies the type of container
                                                  used to place the items that result
                                                  from the operation.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element ref="DepartmentID" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation
                                                  source="http://schema.infor.com/InforOAGIS/2"
                                                  >Indicates the department in which
                                                  the operation is performed.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element ref="CostAmount" minOccurs="0"/>
                                        <xsd:element ref="ProcessCode" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation
                                                  source="http://schema.infor.com/InforOAGIS/2"
                                                  >Is a process code used for grouping
                                                  like operations. Possible examples
                                                  are: Heat Treat, Dyeing</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element ref="MachineSetupDependencyCodes" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation
                                                  source="http://schema.infor.com/InforOAGIS/2"
                                                  >Indicates whether the machine can
                                                  be setup for the operation early or
                                                  whether setup must happen at a
                                                  specific time depending upon
                                                  conditions. Possible values: - Early
                                                  - NotDelayed - DelayedByPredicessor
                                                  - DelayedByMaterial</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element ref="MaximumParallelTeamsFactor" minOccurs="0"/>
                                        <xsd:element ref="FixedRejectQuantity" minOccurs="0"/>
                                        <xsd:element ref="RejectedQuantity" minOccurs="0"/>
                                        <xsd:group ref="OperationGroup" minOccurs="0"/>
                                        <xsd:element ref="Site" minOccurs="0" maxOccurs="unbounded">
                                                <xsd:annotation>
                                                  <xsd:documentation
                                                  source="http://schema.infor.com/InforOAGIS/2"
                                                  >Identifies the Location that the
                                                  work is done.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element ref="MultipleRunSaveTimeIndicator"
                                                minOccurs="0"/>
                                        <xsd:element ref="TrackingIndicator" minOccurs="0">
                                                <xsd:annotation>
                                                  <xsd:documentation
                                                  source="http://schema.infor.com/InforOAGIS/2"
                                                  >Indicates whether the operation
                                                  should be tracked.</xsd:documentation>
                                                  <xsd:documentation
                                                  source="http://schema.infor.com/InforOAGIS/2"
                                                  >Indicates whether the operation
                                                  should be tracked.</xsd:documentation>
                                                </xsd:annotation>
                                        </xsd:element>
                                        <xsd:element ref="QualifiedResource" minOccurs="0"
                                                maxOccurs="unbounded"/>
                                        <xsd:element ref="Charge" minOccurs="0"
                                                maxOccurs="unbounded"/>
                                        <xsd:element ref="Distribution" minOccurs="0"
                                                maxOccurs="unbounded"/>
                                        <xsd:element ref="Step" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="UserArea" minOccurs="0"/>
                                        <xsd:element ref="Effectivity" minOccurs="0"/>
                                        <xsd:element ref="YieldPercent" minOccurs="0"/>
                                        <xsd:element ref="RequiredSkills" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="ControlPoint" minOccurs="0"/>
                                        <xsd:element ref="ScrapQuantity" minOccurs="0"/>
                                        <xsd:element ref="Tools" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="OperationPersonReference" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="EquipmentReference" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="OperationCosts" minOccurs="0"/>
                                        <xsd:element ref="WorkCenterID" minOccurs="0"/>
                                        <xsd:element ref="ContainerID" minOccurs="0"/>
                                        <xsd:element ref="OperationMultiplier" minOccurs="0"/>
                                        <xsd:element ref="InQueueLocation" minOccurs="0"/>
                                        <xsd:element ref="TerminationIndicator" minOccurs="0"/>
                                        <xsd:element ref="Costing" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="ExecutionTimePeriod" minOccurs="0"/>
                                        <xsd:element ref="ForecastedTimePeriod" minOccurs="0"/>
                                        <xsd:element ref="RunTimePeriod" minOccurs="0"/>
                                        <xsd:element ref="SetupTimePeriod" minOccurs="0"/>
                                        <xsd:element ref="TearDownTimePeriod" minOccurs="0"/>
                                        <xsd:element ref="BackFlushedIndicator" minOccurs="0"/>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>

        <xsd:complexType name="PreviousOperationType">
                
                <xsd:complexContent>
                        
                        <xsd:extension base="OperationReferenceBaseType">
                                
                                <xsd:sequence>
                                        
                                        <xsd:element ref="OutQueueLocation" minOccurs="0"
                                                maxOccurs="unbounded"/>
                                        
                                        <xsd:element ref="TimeInQueueDuration" minOccurs="0"/>
                                        
                                        <xsd:element ref="PlannedOverrunPercent" minOccurs="0"/>
                                        
                                        <xsd:element ref="UserArea" minOccurs="0"/>
                                        
                                </xsd:sequence>
                                
                        </xsd:extension>
                        
                </xsd:complexContent>
                
        </xsd:complexType>
        
        <xsd:complexType name="QualifiedResourceType">

                <xsd:sequence>

                        <xsd:element ref="ResourceUseCode" minOccurs="0"/>

                        <xsd:element ref="WorkCenterID" minOccurs="0"/>

                        <xsd:group ref="OperationGroup" minOccurs="0"/>

                        <xsd:element ref="CapacityPercent" minOccurs="0"/>

                        <xsd:element ref="Duration" minOccurs="0"/>

                        <xsd:element ref="EmployeesRequiredQuantity" minOccurs="0"/>

                        <xsd:element ref="ToolsRequiredQuantity" minOccurs="0"/>

                        <xsd:element ref="AllocatedResources" minOccurs="0"/>

                        <xsd:element ref="ActualResources" minOccurs="0"/>

                        <xsd:element ref="UserArea" minOccurs="0"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:complexType name="ProductionStepType">
                <xsd:complexContent>
                        <xsd:extension base="SequenceType">
                                <xsd:sequence>
                                        <xsd:group ref="ReferencesGroup" minOccurs="0"/>
                                        <xsd:element ref="Type" minOccurs="0"/>
                                        <xsd:element ref="SequenceCode" minOccurs="0"/>
                                        <xsd:element ref="Site" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="DepartmentID" minOccurs="0"/>
                                        <xsd:element ref="QualifiedResource" minOccurs="0"
                                                maxOccurs="unbounded"/>
                                        <xsd:element ref="Charge" minOccurs="0"
                                                maxOccurs="unbounded"/>
                                        <xsd:element ref="Distribution" minOccurs="0"
                                                maxOccurs="unbounded"/>
                                        <xsd:element ref="UserArea" minOccurs="0"/>
                                        <xsd:element ref="Tools" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="Instructions" minOccurs="0" maxOccurs="unbounded"/>                                                           
                                        <xsd:element ref="ConstrainedResourceReference" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="OperationPersonReference" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="EquipmentReference" minOccurs="0" maxOccurs="unbounded"/>
                                 </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>

        <xsd:element name="Step" type="ProductionStepType">

                <xsd:annotation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Information
                                specific to the steps specified to perform the operation.</xsd:documentation>

                </xsd:annotation>

        </xsd:element>

        <xsd:element name="QualifiedResource" type="QualifiedResourceType">

                <xsd:annotation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Information
                                that describes the resources to perform the specified resource usage
                                for the operation and/or the step that is defined by the preceding
                                Operation or Step. </xsd:documentation>

                </xsd:annotation>

        </xsd:element>

        <xsd:complexType name="ScheduleHeaderType">

                <xsd:complexContent>

                        <xsd:extension base="StatusEnabledHeaderType">

                                <xsd:sequence>

                                        <xsd:element ref="RespondingScheduleReference" minOccurs="0"/>

                                        <xsd:element ref="EffectiveTimePeriod" minOccurs="0"/>

                                        <xsd:element ref="DateCode" minOccurs="0"/>

                                        <xsd:element ref="ScheduleType" minOccurs="0"/>

                                        <xsd:element ref="Party" minOccurs="0" maxOccurs="unbounded"/>

                                        <xsd:element ref="ShipToParty" minOccurs="0"
                                                maxOccurs="unbounded"/>

                                </xsd:sequence>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:complexType name="ScheduleLineType">

                <xsd:complexContent>

                        <xsd:extension base="StatusEnabledLineType">

                                <xsd:sequence>

                                        <xsd:element ref="LineType" minOccurs="0"/>

                                        <xsd:element ref="RespondingScheduleReference" minOccurs="0"
                                                maxOccurs="unbounded"/>

                                        <xsd:element ref="ManufacturingItem" minOccurs="0"/>

                                        <xsd:element ref="EffectiveTimePeriod" minOccurs="0"/>

                                        <xsd:element ref="EngineeringChangeDateTime" minOccurs="0"/>

                                        <xsd:element ref="ActualDeliveryDateTime" minOccurs="0"/>

                                        <xsd:element ref="ReceivedDateTime" minOccurs="0"/>

                                        <xsd:element ref="ShipmentDateTime" minOccurs="0"/>

                                        <xsd:element ref="LastShipmentDateTime" minOccurs="0"/>

                                        <xsd:element ref="LastShipmentReceivedQuantity"
                                                minOccurs="0"/>

                                        <xsd:element ref="LastReceivingDateTime" minOccurs="0"/>

                                        <xsd:element ref="DeliveredQuantity" minOccurs="0"/>

                                        <xsd:element ref="ItemQuantity" minOccurs="0"/>

                                        <xsd:element ref="ReceivedQuantity" minOccurs="0"/>

                                        <xsd:element ref="ShippedQuantity" minOccurs="0"/>

                                        <xsd:element ref="AuthorizationID" minOccurs="0"/>

                                        <xsd:element ref="CommodityClassification" minOccurs="0"/>

                                        <xsd:element ref="LoadingLocation" minOccurs="0"/>

                                        <xsd:element ref="HazardousMaterial" minOccurs="0"
                                                maxOccurs="unbounded"/>

                                        <xsd:element ref="KanbanNumber" minOccurs="0"/>

                                        <xsd:element ref="Packaging" minOccurs="0">

                                                <xsd:annotation>

                                                  <xsd:documentation
                                                  source="http://schema.infor.com/InforOAGIS/2"
                                                  >Represents the secondary packing
                                                  code used to further identify the
                                                  package of the product. Hmmm, where
                                                  is the primary packing code?</xsd:documentation>

                                                </xsd:annotation>

                                        </xsd:element>

                                        <xsd:element ref="PriorityCode" minOccurs="0"/>

                                        <xsd:element ref="ProjectReference" minOccurs="0"/>

                                        <xsd:element ref="LastDeliveryReference" minOccurs="0"/>

                                        <xsd:element ref="LastShipmentReference" minOccurs="0" maxOccurs="unbounded"/>

                                        <xsd:element ref="Party" minOccurs="0" maxOccurs="unbounded"/>

                                        <xsd:element ref="ShipToParty" minOccurs="0"
                                                maxOccurs="unbounded"/>

                                </xsd:sequence>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:complexType name="ScheduleExceptionType">

                <xsd:complexContent>

                        <xsd:extension base="LineType">

                                <xsd:sequence>

                                        <xsd:element ref="ActionCodes" minOccurs="0"
                                                maxOccurs="unbounded"/>

                                        <xsd:element ref="EffectiveTimePeriod" minOccurs="0"/>

                                        <xsd:element ref="ExceptionCodes" minOccurs="0"
                                                maxOccurs="unbounded"/>

                                        <xsd:element ref="ReasonCode" minOccurs="0"
                                                maxOccurs="unbounded"/>

                                        <xsd:element ref="UserArea" minOccurs="0"/>

                                </xsd:sequence>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:element name="ScheduleException" type="ScheduleExceptionType">

                <xsd:annotation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Exception
                                detail for Detail or Lline information.</xsd:documentation>

                </xsd:annotation>

        </xsd:element>

        <xsd:element name="RespondingScheduleReference" type="OrderReferenceType">

                <xsd:annotation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Identifies
                                the previously received plan schedule that this new schedule is
                                responding to as a reference. The typical scenario is a supplier
                                uses a Sync PlanningSchedule or Sync ShipmentSchedule to respond to
                                a customer demand schedule, and this will identify the customer
                                demand schedule that this supplier previously received. The date and
                                time is also used in identifying the previously received plan
                                schedule that the new plan schedule is responding to. Note that the
                                combination of document id, document date, and revision number can
                                uniquely identify a plan schedule.</xsd:documentation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">DateType
                                indicates whether the dates specified on the schedule are delivery
                                based or shipment based. Dates specified on the schedule include
                                FromDateTime and ToDateTime at Header and Line levels. ScheduleType
                                indicates whether the PlanningSchedule is a demand schedule from a
                                customer or a supply schedule from a supplier. For the supplier
                                schedule to respond to the original demand schedule, the
                                RespondingScheduleReference is used to identify the customer's
                                original demand schedule that it is responding to. </xsd:documentation>

                </xsd:annotation>

        </xsd:element>

        <xsd:complexType name="ResourceType">

                <xsd:complexContent>

                        <xsd:extension base="ResourceBaseType">

                                <xsd:sequence>

                                        <xsd:element ref="UserArea" minOccurs="0"/>

                                </xsd:sequence>

                                <xsd:attribute name="type" type="ResourceTypeCodeContentType"/>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:complexType name="ResourcesType">

                <xsd:sequence>

                        <xsd:element ref="Resource" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="Tool" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="Machine" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="Labour" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="ManufacturingItem" minOccurs="0" maxOccurs="unbounded"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:complexType name="LabourType">

                <xsd:complexContent>

                        <xsd:extension base="ResourceBaseType">

                                <xsd:sequence>

                                        <xsd:group ref="EmployeeGroup" minOccurs="0"/>

                                        <xsd:element ref="UserArea" minOccurs="0"/>

                                </xsd:sequence>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:complexType name="MachineBaseType" abstract="true">

                <xsd:complexContent>

                        <xsd:extension base="ResourceBaseType">

                                <xsd:sequence>

                                        <xsd:element ref="FixedAssetCode" minOccurs="0"/>

                                        <xsd:element ref="Status" minOccurs="0"/>

                                </xsd:sequence>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:complexType name="MachineType">

                <xsd:complexContent>

                        <xsd:extension base="MachineBaseType">

                                <xsd:sequence>

                                        <xsd:element ref="UserArea" minOccurs="0"/>

                                </xsd:sequence>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:complexType name="ToolBaseType" abstract="true">

                <xsd:complexContent>

                        <xsd:extension base="ResourceBaseType"/>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:complexType name="ToolType">

                <xsd:complexContent>

                        <xsd:extension base="ToolBaseType">

                                <xsd:sequence>

                                        <xsd:element ref="UserArea" minOccurs="0"/>

                                </xsd:sequence>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:element name="Labour" type="LabourType">

                <xsd:annotation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Identifies
                                the Labour needed for a given task.</xsd:documentation>

                </xsd:annotation>

        </xsd:element>

        <xsd:element name="Machine" type="MachineType">

                <xsd:annotation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Idenitifies
                                a machine.</xsd:documentation>

                </xsd:annotation>

        </xsd:element>

        <xsd:element name="Tool" type="ToolType">

                <xsd:annotation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Identifies
                                the tool needed for a given task.</xsd:documentation>

                </xsd:annotation>

        </xsd:element>

        <xsd:element name="Resource" type="ResourceType"/>

        <xsd:element name="Resources" type="ResourcesType"/>

        <xsd:group name="ResourceAllocationGroup">

                <xsd:sequence>

                        <xsd:element ref="UnitCost" minOccurs="0"/>

                        <xsd:element ref="RequiredQuantity" minOccurs="0"/>

                        <xsd:element ref="RequiredDuration" minOccurs="0"/>

                        <xsd:element ref="TotalCostAmount" minOccurs="0"/>

                        <xsd:group ref="FreeFormTextGroup" minOccurs="0"/>

                </xsd:sequence>

        </xsd:group>

        <xsd:complexType name="AllocationType">

                <xsd:sequence>

                        <xsd:element ref="Resource" minOccurs="0"/>

                        <xsd:group ref="ResourceAllocationGroup" minOccurs="0"/>

                        <xsd:element ref="UserArea" minOccurs="0"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:complexType name="InventoryAllocationType">

                <xsd:sequence>

                        <xsd:element ref="Item" minOccurs="0"/>

                        <xsd:group ref="ResourceAllocationGroup" minOccurs="0"/>

                        <xsd:element ref="UserArea" minOccurs="0"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:complexType name="LabourAllocationType">

                <xsd:sequence>

                        <xsd:element ref="Labour" minOccurs="0"/>

                        <xsd:group ref="ResourceAllocationGroup" minOccurs="0"/>

                        <xsd:element ref="UserArea" minOccurs="0"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:complexType name="MachineAllocationType">

                <xsd:sequence>

                        <xsd:element ref="Machine" minOccurs="0"/>

                        <xsd:group ref="ResourceAllocationGroup" minOccurs="0"/>

                        <xsd:element ref="UserArea" minOccurs="0"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:complexType name="OperationAllocationType">

                <xsd:sequence>

                        <xsd:element ref="OperationReference" minOccurs="0"/>

                        <xsd:group ref="ResourceAllocationGroup" minOccurs="0"/>

                        <xsd:element ref="UserArea" minOccurs="0"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:complexType name="ToolAllocationType">

                <xsd:sequence>

                        <xsd:element ref="Tool" minOccurs="0"/>

                        <xsd:group ref="ResourceAllocationGroup" minOccurs="0"/>

                        <xsd:element ref="UserArea" minOccurs="0"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:element name="Allocation" type="AllocationType"/>

        <xsd:element name="InventoryAllocation" type="InventoryAllocationType"/>

        <xsd:element name="LabourAllocation" type="LabourAllocationType"/>

        <xsd:element name="MachineAllocation" type="MachineAllocationType"/>

        <xsd:element name="OperationAllocation" type="OperationAllocationType"/>

        <xsd:element name="ToolAllocation" type="ToolAllocationType"/>

        <xsd:complexType name="AllocatedResources">

                <xsd:sequence>

                        <xsd:element ref="Allocation" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="InventoryAllocation" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="LabourAllocation" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="MachineAllocation" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="OperationAllocation" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="ToolAllocation" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="UserArea" minOccurs="0"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:element name="AllocatedResources" type="AllocatedResources"/>

        <xsd:element name="EstimatedResourceRequirements" type="AllocatedResources">

                <xsd:annotation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">This
                                identifies resources that are required to perform the maintenance
                                operation. Resource Requirements can be specified for the entire
                                maintenance order or for each operation within the order</xsd:documentation>

                </xsd:annotation>

        </xsd:element>

        <xsd:group name="ActualResourceGroup">

                <xsd:sequence>

                        <xsd:element ref="UnitCost" minOccurs="0"/>

                        <xsd:element ref="Quantity" minOccurs="0"/>

                        <xsd:element ref="TotalCostAmount" minOccurs="0"/>
                        <xsd:element ref="ActualDateTime" minOccurs="0"/>
                        <xsd:group ref="FreeFormTextGroup" minOccurs="0"/>
                        <xsd:element ref="RequiredQuantity" minOccurs="0"/>
                        <xsd:element ref="RequiredDuration" minOccurs="0"/>
                        
                </xsd:sequence>

        </xsd:group>

        <xsd:complexType name="ActualType">

                <xsd:sequence>

                        <xsd:element ref="Resource" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:group ref="ActualResourceGroup" minOccurs="0"/>

                        <xsd:element ref="UserArea" minOccurs="0"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:complexType name="InventoryActualType">

                <xsd:sequence>

                        <xsd:element ref="Item" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:group ref="ActualResourceGroup" minOccurs="0"/>

                        <xsd:element ref="UserArea" minOccurs="0"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:complexType name="LabourActualType">

                <xsd:sequence>

                        <xsd:element ref="Labour" minOccurs="0" maxOccurs="unbounded"/>
                        <xsd:group ref="ActualResourceGroup" minOccurs="0"/>
                        <xsd:element ref="BreakTimeDuration" minOccurs="0"/>
                        <xsd:element ref="UserArea" minOccurs="0"/>
                        <xsd:element ref="ActualDuration" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Is the actual duration spent for doing the work.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                       
                        <xsd:element ref="OvertimeLabourIndicator" minOccurs="0"/>
                </xsd:sequence>

        </xsd:complexType>

        <xsd:complexType name="MachineActualType">

                <xsd:sequence>

                        <xsd:element ref="Machine" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:group ref="ActualResourceGroup" minOccurs="0"/>

                        <xsd:element ref="DownTimeDuration" minOccurs="0"/>

                        <xsd:element ref="UserArea" minOccurs="0"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:complexType name="OperationActualType">

                <xsd:sequence>

                        <xsd:element ref="OperationReference" minOccurs="0"/>

                        <xsd:group ref="ActualResourceGroup" minOccurs="0"/>

                        <xsd:element ref="UserArea" minOccurs="0"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:complexType name="ToolActualType">

                <xsd:sequence>

                        <xsd:element ref="Tool" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:group ref="ActualResourceGroup" minOccurs="0"/>

                        <xsd:element ref="DownTimeDuration" minOccurs="0"/>

                        <xsd:element ref="UserArea" minOccurs="0"/>

                        <xsd:element ref="ActualDuration" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Is the duration value the tool is actually used.</xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                </xsd:sequence>

        </xsd:complexType>

        <xsd:element name="Actual" type="ActualType"/>

        <xsd:element name="InventoryActual" type="InventoryActualType"/>

        <xsd:element name="LabourActual" type="LabourActualType"/>

        <xsd:element name="MachineActual" type="MachineActualType"/>

        <xsd:element name="OperationActual" type="OperationActualType"/>

        <xsd:element name="ToolActual" type="ToolActualType"/>

        <xsd:complexType name="ActualResourcesType">

                <xsd:sequence>

                        <xsd:element ref="Actual" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="InventoryActual" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="LabourActual" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="MachineActual" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="OperationActual" minOccurs="0" maxOccurs="unbounded"/>

                        <xsd:element ref="ToolActual" minOccurs="0" maxOccurs="unbounded"/>

                </xsd:sequence>

        </xsd:complexType>

        <xsd:element name="ActualResources" type="ActualResourcesType"/>

        <xsd:complexType name="WIPHeaderBaseType">

                <xsd:complexContent>

                        <xsd:extension base="HeaderType">

                                <xsd:sequence>

                                        <xsd:element ref="ReasonCode" minOccurs="0"
                                                maxOccurs="unbounded"/>

                                </xsd:sequence>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>
        
        <xsd:complexType name="BillOfResourcesType">
                <xsd:sequence>
                        <xsd:element ref="BillOfResourcesHeader" minOccurs="0" maxOccurs="1" />
                        <xsd:element ref="Operations" minOccurs="0" maxOccurs="unbounded"/>
                </xsd:sequence>
        </xsd:complexType>

        <xsd:complexType name="BillOfResourcesHeaderType">
                <xsd:complexContent>
                        <xsd:extension base="StatusEnabledDocumentIDHeaderType">
                                <xsd:sequence>
                                        <xsd:element ref="ParentBillOperationReference" minOccurs="0" maxOccurs="1" />
                                        <xsd:element ref="PrimaryIndicator" minOccurs="0" maxOccurs="1" />
                                        <xsd:element ref="RunSizeQuantity" minOccurs="0" maxOccurs="1" />
                                        <xsd:element ref="EffectiveDateTime" minOccurs="0" maxOccurs="1" />
                                        <xsd:element ref="InactiveDateTime" minOccurs="0" maxOccurs="1" />
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        
        <xsd:complexType name="WIPEventHeaderBaseType">

                <xsd:complexContent>

                        <xsd:extension base="WIPHeaderBaseType">

                                <xsd:sequence>

                                        <xsd:element ref="ProductionOrderReference" minOccurs="0"/>

                                </xsd:sequence>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:complexType name="WIPEventHeaderType">

                <xsd:complexContent>

                        <xsd:extension base="WIPEventHeaderBaseType">

                                <xsd:sequence>

                                        <xsd:element ref="UserArea" minOccurs="0"/>

                                </xsd:sequence>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:complexType name="WIPDistributedEventHeaderType">

                <xsd:complexContent>

                        <xsd:extension base="WIPEventHeaderBaseType">

                                <xsd:sequence>

                                        <xsd:element ref="Distribution" minOccurs="0"/>

                                        <xsd:element ref="UserArea" minOccurs="0"/>

                                </xsd:sequence>

                        </xsd:extension>

                </xsd:complexContent>

        </xsd:complexType>

        <xsd:element name="MoveFromOperation" type="OperationType">

                <xsd:annotation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Indicates
                                the Work-In-Process Operation in which the items are being moved
                                from.</xsd:documentation>

                </xsd:annotation>

        </xsd:element>

        <xsd:element name="MoveToOperation" type="OperationType">

                <xsd:annotation>

                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Indicates
                                the Work-In-Process Operation in which the items are being moved to.</xsd:documentation>

                </xsd:annotation>

        </xsd:element>

        <xsd:complexType name="PMScheduleType">
                <xsd:sequence>
                        <xsd:element ref="ScheduleID"/>
                </xsd:sequence>
        </xsd:complexType>

        <xsd:complexType name="OperationCostsType">
                <xsd:sequence>
                        <xsd:element ref="MachineCosts" minOccurs="0"/>
                        <xsd:element ref="LaborCosts" minOccurs="0"/>
                </xsd:sequence>
        </xsd:complexType>

        <xsd:complexType name="MachineCostsType">
                <xsd:sequence>
                        <xsd:element ref="PlannedTime" minOccurs="0"/>
                        <xsd:element ref="PlannedCostAmount" minOccurs="0"/>
                        <xsd:element ref="ActualTime" minOccurs="0"/>
                        <xsd:element ref="ActualCostAmount" minOccurs="0"/>
                </xsd:sequence>
        </xsd:complexType>

        <xsd:complexType name="LaborCostsType">
                <xsd:sequence>
                        <xsd:element ref="PlannedTime" minOccurs="0"/>
                        <xsd:element ref="PlannedCostAmount" minOccurs="0"/>
                        <xsd:element ref="ActualTime" minOccurs="0"/>
                        <xsd:element ref="ActualCostAmount" minOccurs="0"/>
                </xsd:sequence>
        </xsd:complexType>

        <xsd:complexType name="FlexibleBucketType">
                <xsd:annotation>
                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">This Data
                                Type is used to communicate a flexible bucket definition. The value
                                of Identifier can be taken from predefined values such as Day, Week,
                                etc. or it can hold a user defined identifier with a specific time
                                period. In any case the actual time period and Identifier must be
                                used.</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                        <xsd:element ref="ID" minOccurs="0"/>
                        <xsd:element ref="BucketType" minOccurs="0"/>
                        <xsd:element ref="Name" minOccurs="0"/>
                        <xsd:element ref="TimePeriod" minOccurs="0"/>
                        <xsd:element ref="UserArea" minOccurs="0"/>
                </xsd:sequence>
        </xsd:complexType>
        
        
        <xsd:element name="FlexibleBucket" type="FlexibleBucketType">
                <xsd:annotation>
                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">All time
                                bucket definitions used within the schedule.</xsd:documentation>
                </xsd:annotation>
        </xsd:element>
        
        <xsd:element name="BucketID" type="IdentifierType"/>
        
        <xsd:complexType name="ControlPointType">
                <xsd:sequence>
                        <xsd:element ref="Effectivity" minOccurs="0"/>
                </xsd:sequence>
        </xsd:complexType>
        
        <xsd:complexType name="RequiredSkillsType">
                <xsd:complexContent>
                        <xsd:extension base="ProfessionalSkillType">
                                <xsd:sequence>
                                        <xsd:element ref="CrewSize" minOccurs="0"/>
                                        <xsd:element ref="PrimaryIndicator" minOccurs="0"/>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        
        <xsd:complexType name="ManufacturingOutputItemType">
                <xsd:complexContent>
                        <xsd:extension base="ManufacturingItemBaseType">
                                <xsd:sequence>
                                        <xsd:element ref="LineNumber" minOccurs="0" maxOccurs="1"/>
                                        <xsd:element ref="ParentItemID" minOccurs="0"/>
                                        <xsd:element ref="YieldPercent" minOccurs="0"/>
                                        <xsd:element ref="PhantomIndicator" minOccurs="0" />
                                        <xsd:element name="BatchSizeQuantity" type="QuantityType" minOccurs="0">
                                                
                                                <xsd:annotation>
                                                        
                                                        <xsd:documentation
                                                                source="http://schema.infor.com/InforOAGIS/2"
                                                                >Identifies the number of items that
                                                                can be produced in each run of the
                                                                BillOfResources.</xsd:documentation>
                                                        
                                                </xsd:annotation>
                                                
                                        </xsd:element>
                                        <xsd:element ref="ProducedQuantity" minOccurs="0"/>
                                        <xsd:element ref="InTransitQuantity" minOccurs="0"/>
                                        <xsd:element ref="InWarehouseQuantity" minOccurs="0"/>
                                        <xsd:element ref="Quantity" minOccurs="0"/>
                                        <xsd:element ref="OrderQuantity" minOccurs="0"/>
                                        <xsd:element ref="DueQuantity" minOccurs="0"/>
                                        <xsd:element ref="ShippedQuantity" minOccurs="0"/>
                                        <xsd:element ref="Rejection" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="Costing" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="CostAllocationPercent" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="Location" minOccurs="0"
                                        maxOccurs="unbounded"/>
                                        <xsd:element ref="OutputItemSchedule" minOccurs="0" maxOccurs="unbounded"/>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>

        <xsd:complexType name="ChildItemType">
                <xsd:complexContent>
                        <xsd:extension base="ItemBaseType">
                                <xsd:sequence>
                                        <xsd:element ref="OperationSequence" minOccurs="0"/>
                                        <xsd:element ref="Sequence" minOccurs="0"/>
                                        <xsd:element ref="QuantityRequired" minOccurs="0"/>
                                        <xsd:element ref="Substitutes" minOccurs="0" maxOccurs="unbounded" />
                                        <xsd:element ref="ScrapQuantity" minOccurs="0"/>
                                        <xsd:element ref="ScrapPercent" minOccurs="0"/>
                                        <xsd:element ref="Effectivity" minOccurs="0"/>
                                        <xsd:element ref="ItemIssue" minOccurs="0"/>
                                        <xsd:element ref="BackFlushedIndicator" minOccurs="0"/>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        
        <xsd:complexType name="ProducedItemType">
                <xsd:complexContent>
                        <xsd:extension base="ItemBaseType">
                                <xsd:sequence>
                                        <xsd:element ref="ProducedQuantity" minOccurs="0"/>
                                        <xsd:element ref="InTransitQuantity" minOccurs="0"/>
                                        <xsd:element ref="InWarehouseQuantity" minOccurs="0"/>
                                        <xsd:element ref="Rejection" minOccurs="0" maxOccurs="unbounded"/>
                                </xsd:sequence>               
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        <xsd:complexType name="ConsumedItemType">
                <xsd:complexContent>
                        <xsd:extension base="ItemType">
                                <xsd:sequence>
                                        <xsd:element ref="LineNumber" minOccurs="1" maxOccurs="1"/>
                                        <xsd:element ref="DocumentReference" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="Status" minOccurs="0" maxOccurs="1"/>
                                        <xsd:element ref="Type" minOccurs="0"/>
                                        <xsd:element ref="Name" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="Quantity" minOccurs="0"/>
                                        <xsd:element ref="FixedQuantityIndicator" minOccurs="0"/>
                                        <xsd:element ref="OriginationItemData" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="BackFlushedIndicator" minOccurs="0"/>
                                        <xsd:element ref="Costing" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="YieldPercent" minOccurs="0"/>
                                        <xsd:element ref="ScrapFactor" minOccurs="0"/>
                                        <xsd:element ref="ScrapQuantity" minOccurs="0"/>
                                        <xsd:element ref="ShippedQuantity" minOccurs="0"/>
                                        <xsd:element ref="EffectiveTimePeriod" minOccurs="0"/>
                                        <xsd:element ref="ConsumedItemSchedule" minOccurs="0" maxOccurs="unbounded"/>      
                                        <xsd:element ref="AlternateVersion" minOccurs="0" />
                                        
                                        <xsd:element ref="Location" minOccurs="0"
                                                maxOccurs="unbounded"/>
                                        
                                        <xsd:element ref="TrackingIndicator" minOccurs="0"/> 
                                        
                                        <xsd:element ref="MandatoryIndicator" minOccurs="0"/>
                                        
                                        <xsd:element ref="DefaultIndicator" minOccurs="0"/>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        
        <xsd:complexType name="OutputItemType">
                <xsd:complexContent>
                        <xsd:extension base="ItemInstanceType">
                                <xsd:sequence>
                                        <xsd:element ref="Type" minOccurs="0"/>
                                        <xsd:element ref="Name" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="Quantity" minOccurs="0"/>
                                        <xsd:element ref="FixedQuantityIndicator" minOccurs="0"/>
                                        <xsd:element ref="Rejection" minOccurs="0"/>
                                        <xsd:element ref="BackFlushedIndicator" minOccurs="0"/>
                                        <xsd:element ref="Location" minOccurs="0"
                                        maxOccurs="unbounded"/>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        
        <xsd:complexType name="ItemScheduleType">
                <xsd:complexContent>
                        <xsd:extension base="ProcurementScheduleType">
                                <xsd:sequence>
                                        <xsd:element ref="ShippedQuantity" minOccurs="0"/>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>
        
        <xsd:complexType name="ItemIssueType">
                <xsd:sequence>
                        <xsd:element ref="SerializedLot" minOccurs="0"/>
                        <xsd:element ref="Costing" minOccurs="0"/>
                        <xsd:element ref="ProductionOrderCost" minOccurs="0"/>
                </xsd:sequence>
        </xsd:complexType>
        
        
        <xsd:complexType name="SubstitutesType">
                <xsd:sequence>
                        <xsd:element ref="ItemID" minOccurs="0"/>
                        <xsd:element ref="PriorityCode" minOccurs="0"/>
                        <xsd:element ref="Effectivity" minOccurs="0"/>
                </xsd:sequence>
        </xsd:complexType>
        
        <xsd:complexType name="OriginationDataType">
                <xsd:sequence>
                        <xsd:element ref="OriginationCountryCode" minOccurs="0"/>
                        <xsd:element ref="Percentage" minOccurs="0"/>
                </xsd:sequence>
        </xsd:complexType>
        
        <xsd:element name="BillOfResources" type="BillOfResourcesType">
                <xsd:annotation>
                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">The location of a
                                The PLM system or engineer (we were working with a tomato soup example) 
                                creates the bill of resources. This is basically a recipe that identifies 
                                the materials used and the steps involved in creating the desired output. 
                                A Planner will take that BillOfResources and assign it to a production 
                                facility (line) and that will create a ProductionOrder that is open - not 
                                yet in production. The production supervisor will review the order and then 
                                release it to production. The operator will update the order as they complete 
                                steps.
                        </xsd:documentation>
                </xsd:annotation>
        </xsd:element>        
        <xsd:element name="BillOfResourcesHeader" type="BillOfResourcesHeaderType" /> 
        <xsd:element name="ParentBillOperationReference" type="BillOfResourcesOperationReferenceType"/>
        <xsd:element name="OriginalBillOfResourcesReference" type="BillOfResourcesReferenceType"/>
        <xsd:element name="AlternateBillOfResourcesReference" type="BillOfResourcesReferenceType"/>
        <xsd:element name="BillOfResourcesReference" type="BillOfResourcesReferenceType"/>
        <xsd:element name="ChildItem" type="ChildItemType"/>
        <xsd:element name="Costing" type="CostRuleType"/>
        <xsd:element name="ItemIssue" type="ItemIssueType"/>
        <xsd:element name="ProductionOrderCost" type="CostRuleType"/>
        <xsd:element name="ProducedItem" type="ProducedItemType"/>
        <xsd:element name="Substitutes" type="SubstitutesType"/>
        <xsd:element name="InWarehouseQuantity" type="QuantityType"/>
        <xsd:element name="InTransitQuantity" type="QuantityType"/>
        <xsd:element name="QuantityRequired" type="QuantityType"/>
        <xsd:element name="RunSizeQuantity" type="QuantityType"/>
        <xsd:element name="OperationSequence" type="CodeType"/>
        <xsd:element name="ScrapPercent" type="PercentType"/>
        <xsd:element name="OutputItem" type="ManufacturingOutputItemType"/>
        <xsd:element name="PhantomIndicator" type="IndicatorType"/>
        <xsd:element name="ConsumedItem" type="ConsumedItemType"/>
        <xsd:element name="Operations" type="OperationType" />
        <xsd:element name="OriginationItemData" type="OriginationDataType"/>
                <xsd:element name="PreviousOperation" type="PreviousOperationType">
                
                <xsd:annotation>
                        
                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2">Information
                                specifying the previous operation. This provides the immediate
                                preceding operation of the current operation defined in
                                RouteOperation. The RouteOperation of the operations of the
                                potential first operations will not have an associated
                                PreviousOperation, however all others must contain one.</xsd:documentation>
                        
                </xsd:annotation>
                
                </xsd:element>       
        <xsd:element name="InputItem" type="ConsumedItemType"/>
        <xsd:element name="ControlPoint" type="ControlPointType"/>
        <xsd:element name="ActualTime" type="DurationMeasureType"/>
        <xsd:element name="MoveOverlapDuration" type="DurationMeasureType"/>
        <xsd:element name="QueueOverlapDuration" type="DurationMeasureType"/>
        <xsd:element name="ActualCostAmount" type="AmountType"/>
        <xsd:element name="AlternateVersion" type="DocumentReferenceType"/>
        <xsd:element name="LaborCosts" type="LaborCostsType"/>
        <xsd:element name="MachineCosts" type="MachineCostsType"/>
        <xsd:element name="OperationCosts" type="OperationCostsType"/>
        <xsd:element name="PlannedTime" type="DurationMeasureType"/>
        <xsd:element name="PlannedCostAmount" type="AmountType"/>
        <xsd:element name="ScheduleID" type="IdentifierType"/>
        <xsd:element name="NextID" type="IdentifierType"/>
        <xsd:element name="CostAllocationPercent" type="PercentType"/>
        <xsd:element name="YieldPercent" type="PercentType" />        
        <xsd:element name="RequiredSkills" type="RequiredSkillsType" />
        <xsd:element name="Tools" type="EquipmentReferenceType" />
        <xsd:element name="CrewSize" type="NumericType" />
        <xsd:element name="PrimaryIndicator" type="IndicatorType" />
        <xsd:element name="ScrapFactor" type="NumericType"/>
        <xsd:element name="ConsumedItemSchedule" type="ItemScheduleType"/>
        <xsd:element name="OutputItemSchedule" type="ItemScheduleType"/>
        <xsd:element name="InactiveDateTime" type="DateTimeType" />
        <xsd:element name="OvertimeLabourIndicator" type="IndicatorType" />
</xsd:schema>
