<?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
11 Apr 2014        LA            New noun for WorkCenter - BOD-2542
22 Dec 2014        LA            UserArea added, BOD-3075
        *****     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="WorkCenter" type="WorkCenterType"/>
    
    <xsd:complexType name="WorkCenterType">
        <xsd:complexContent>
            <xsd:extension base="StatusEnabledStandardHeaderType">
                <xsd:sequence>
                    <xsd:element ref="VirtualWorkCenterIndicator" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation>
                                Indicates whether the work center is a virtual one. In this case
                                the work center encompasses multiple locations. Otherwise a location 
                                to specify the address of the workcenter could be specified with the 
                                Location element
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="Location" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation>
                                Indicates the plant/production facility of which the work center
                                is a part
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="WarehouseLocation" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation>
                                Indicates the warehouse (shopfloor warehouse) attached to the 
                                work center
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    
                    <xsd:element ref="NumberOfMachines" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation>
                                Indicates the number of machines in the work center
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element> 
                    
                    <xsd:element ref="NumberOfOperators" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation>
                                To specify the number of operators
                            </xsd:documentation>
                        </xsd:annotation> 
                    </xsd:element>
                    <xsd:element ref="CriticalCapacityType" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation>
                                To specify whether the work center is machine critical
                                or man critical
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="DayCapacity" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation>
                                To specify the default daily capacity for the work center
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="WeekCapacity" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation>
                                To specify the default weekly capacity for the work center
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
    <!--
        There is another JIRA about calendars and shifts - BOD-2609. 
        It wouldnt be a good idea to have any reference or shift related elements
        unless that is finalized, so removing these from the noun for now
        Will be added when the calendar/shit/availability noun(s) is finalized  
        
                    <xsd:element ref="FreeCalendarReference" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation>
                                The calendar that is linked to the work center to give the 
                                days of availability. 
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    <xsd:element ref="NumberOfShifts" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation>
                                Indicates the number of shifts possible in a day for the work center
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>  
                    
                    <xsd:element ref="HoursPerShift" minOccurs="0">
                        <xsd:annotation>
                            <xsd:documentation>
                                Specifies the number of hours per shift
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
-->                    
                    <xsd:element ref="WorkType" minOccurs="0" maxOccurs="unbounded">
                        <xsd:annotation> 
                            <xsd:documentation>
                                Indicates the types of work (setup, run, fixed, tear down wtc)
                                possible in the work center.
                                Why is the code list called 'cost rule'? 
                                In constrained resource its part of the element cost rule, but shouldnt
                                the actual code list used for costRule@use be more generically termed?
                            </xsd:documentation>
                        </xsd:annotation>
                    </xsd:element>
                    
                    <xsd:element ref="UserArea" minOccurs="0"/>
                </xsd:sequence>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>
</xsd:schema>