<?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 2010    PO      New ProjectBalance noun...in progress.
26 Jul 2010    NO      Added Sequence attr to ProjectCostType. 
        *****     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/Financial/Components.xsd"/>

        <xsd:element name="ProjectBalance" type="ProjectBalanceType">
                <xsd:annotation>
                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2"
                        > </xsd:documentation>
                </xsd:annotation>
        </xsd:element>

        <xsd:complexType name="ProjectBalanceType">
                <xsd:annotation>
                        <xsd:documentation source="http://schema.infor.com/InforOAGIS/2"/>
                </xsd:annotation>
                <xsd:complexContent>
                        <xsd:extension base="StandardHeaderType">
                                <xsd:sequence>
                                        <xsd:element ref="ProjectMonitoringCosts" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="ProjectPerformanceCosts" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="ProjectPlan" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="Project" minOccurs="0"/>
                                        <xsd:element ref="Extensions" minOccurs="0" maxOccurs="unbounded"/>
                                        <xsd:element ref="UserArea" minOccurs="0"/>
                                </xsd:sequence>
                        </xsd:extension>
                </xsd:complexContent>
        </xsd:complexType>

        <!-- New elements and types that will be left in noun for 2.3.3 and moved to components and Fields for 2.4. -->

        <xsd:complexType name="ProjectCostType">
                <xsd:sequence>
                        <xsd:element ref="CostType" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation>Includes Material, labor, Sundry, Equipment, Subcontractinge.
                                        </xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element ref="ControlCode" minOccurs="0"/>
                        <xsd:element ref="CostComponentCode" minOccurs="0"/>
                        
                        <xsd:element ref="TotalBudgetAmount" minOccurs="0"/>
                        <xsd:element ref="TotalBudgetBaseAmount" minOccurs="0"/>
                        <xsd:element ref="ActualCostAmount" minOccurs="0"/>
                        <xsd:element ref="ActualCostBaseAmount" minOccurs="0"/>
                        <xsd:element ref="PerformedCostAmount" minOccurs="0"/>
                        <xsd:element ref="PerformedCostBaseAmount" minOccurs="0"/>
                        <xsd:element ref="RemainingBudgetAmount" minOccurs="0"/>
                        <xsd:element ref="RemainingBudgetBaseAmount" minOccurs="0"/>
                        <xsd:element ref="ActualRevenueAmount" minOccurs="0"/>
                        <xsd:element ref="ActualRevenueBaseAmount" minOccurs="0"/>
                        <xsd:element ref="PlannedRevenueAmount" minOccurs="0"/>
                        <xsd:element ref="PlannedRevenueBaseAmount" minOccurs="0"/>
                        <xsd:element ref="WorkInProcessCostAmount" minOccurs="0"/>
                        <xsd:element ref="WorkInProcessCostBaseAmount" minOccurs="0"/>
                        <xsd:element ref="ForecastCostAmount" minOccurs="0"/>
                        <xsd:element ref="ForecastCostBaseAmount" minOccurs="0"/>
                        <xsd:element ref="VarianceAtCompletionAmount" minOccurs="0"/>
                        <xsd:element ref="VarianceAtCompletionBaseAmount" minOccurs="0"/>
                        <xsd:element ref="BudgetAtCompletionAmount" minOccurs="0"/>
                        <xsd:element ref="BudgetAtCompletionBaseAmount" minOccurs="0"/>
                        <xsd:element ref="EstimateAtCompletionAmount" minOccurs="0"/>
                        <xsd:element ref="EstimateAtCompletionBaseAmount" minOccurs="0"/>
                        <xsd:element ref="EstimateToCompletionAmount" minOccurs="0"/>
                        <xsd:element ref="EstimateToCompletionBaseAmount" minOccurs="0"/>
                        <xsd:element ref="EstimateExtraCostAmount" minOccurs="0"/>
                        <xsd:element ref="EstimateExtraCostBaseAmount" minOccurs="0"/>
                        <xsd:element ref="CommitmentCostAmount" minOccurs="0"/>
                        <xsd:element ref="CommitmentCostBaseAmount" minOccurs="0"/>
                        <xsd:element ref="ForecastExtraRevenueAmount" minOccurs="0"/>
                        <xsd:element ref="ForecastExtraRevenueBaseAmount" minOccurs="0"/>
                        <xsd:element ref="CostOfGoodsSoldAmount" minOccurs="0"/>
                        <xsd:element ref="CostOfGoodsSoldBaseAmount" minOccurs="0"/>
                        <xsd:element ref="RevenuesRecognizedAmount" minOccurs="0"/>
                        <xsd:element ref="RevenuesRecognizedBaseAmount" minOccurs="0"/>

                        <xsd:element ref="RegistrationDate" minOccurs="0"/>
                </xsd:sequence>
                <xsd:attribute name="sequence" type="PositiveIntegerNumericType"/>
        </xsd:complexType>
        
        <xsd:element name="ProjectMonitoringCosts" type="ProjectCostType"/>
        <xsd:element name="ProjectPerformanceCosts" type="ProjectCostType"/>
        
        <xsd:complexType name="ProjectPlanType">
                <xsd:sequence>
                        <xsd:element ref="PlanID" minOccurs="0">
                                <xsd:annotation>
                                        <xsd:documentation>The plan is a three digit alpha numeric field.  All activities are under a plan code. </xsd:documentation>
                                </xsd:annotation>
                        </xsd:element>
                        <xsd:element ref="ProjectActivity" minOccurs="0" maxOccurs="unbounded"/>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:element name="ProjectPlan" type="ProjectPlanType"/>

        <xsd:complexType name="ProjectActivityType">
                <xsd:sequence>
                        <xsd:element ref="ActivityID" minOccurs="0"/>
                        <xsd:element ref="ActivityMonitoringCosts" minOccurs="0" maxOccurs="unbounded"/>
                        <xsd:element ref="ActivityPerformanceCosts" minOccurs="0" maxOccurs="unbounded"/>
                        <xsd:element ref="UserArea" minOccurs="0"/>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:element name="ProjectActivity" type="ProjectActivityType"/>
        
        <xsd:complexType name="ExtensionType">
                <xsd:sequence>
                        <xsd:element ref="ExtensionID" minOccurs="0"/>
                        <xsd:element ref="ExtensionMonitoringCosts" minOccurs="0" maxOccurs="unbounded"/>
                        <xsd:element ref="ExtensionPerformanceCosts" minOccurs="0" maxOccurs="unbounded"/>
                        <xsd:element ref="UserArea" minOccurs="0"/>
                </xsd:sequence>
        </xsd:complexType>
        <xsd:element name="Extensions" type="ExtensionType"/>        
        
        <xsd:element name="ActivityMonitoringCosts" type="ProjectCostType"/>
        <xsd:element name="ActivityPerformanceCosts" type="ProjectCostType"/>
        
        <xsd:element name="ControlCode" type="CodeType"/>
        <xsd:element name="CostComponentCode" type="CodeType"/>
        
        <xsd:element name="FinancialStatus" type="StatusType"/>
        <xsd:element name="TotalBudgetAmount" type="AmountType"/>
        <xsd:element name="TotalBudgetBaseAmount" type="AmountType"/>
        <xsd:element name="ActualCostAmount" type="AmountType"/>
        <xsd:element name="ActualCostBaseAmount" type="AmountType"/>
        <xsd:element name="PerformedCostAmount" type="AmountType"/>
        <xsd:element name="PerformedCostBaseAmount" type="AmountType"/>
        <xsd:element name="RemainingBudgetAmount" type="AmountType"/>
        <xsd:element name="RemainingBudgetBaseAmount" type="AmountType"/>
        <xsd:element name="ActualRevenueAmount" type="AmountType"/>
        <xsd:element name="ActualRevenueBaseAmount" type="AmountType"/>
        <xsd:element name="PlannedRevenueAmount" type="AmountType"/>
        <xsd:element name="PlannedRevenueBaseAmount" type="AmountType"/>
        <xsd:element name="WorkInProcessCostAmount" type="AmountType"/>
        <xsd:element name="WorkInProcessCostBaseAmount" type="AmountType"/>
        <xsd:element name="ForecastCostAmount" type="AmountType"/>
        <xsd:element name="ForecastCostBaseAmount" type="AmountType"/>
        <xsd:element name="VarianceAtCompletionAmount" type="AmountType"/>
        <xsd:element name="VarianceAtCompletionBaseAmount" type="AmountType"/>
        <xsd:element name="BudgetAtCompletionAmount" type="AmountType"/>
        <xsd:element name="BudgetAtCompletionBaseAmount" type="AmountType"/>
        <xsd:element name="ForecastExtraRevenueAmount" type="AmountType"/>
        <xsd:element name="ForecastExtraRevenueBaseAmount" type="AmountType"/>
        <xsd:element name="CostOfGoodsSoldAmount" type="AmountType"/>
        <xsd:element name="CostOfGoodsSoldBaseAmount" type="AmountType"/>
        <xsd:element name="RevenuesRecognizedAmount" type="AmountType"/>
        <xsd:element name="RevenuesRecognizedBaseAmount" type="AmountType"/>
        
        <xsd:element name="EstimateAtCompletionAmount" type="AmountType"/>
        <xsd:element name="EstimateAtCompletionBaseAmount" type="AmountType"/>
        <xsd:element name="EstimateToCompletionAmount" type="AmountType"/>
        <xsd:element name="EstimateToCompletionBaseAmount" type="AmountType"/>
        <xsd:element name="EstimateExtraCostAmount" type="AmountType"/>
        <xsd:element name="EstimateExtraCostBaseAmount" type="AmountType"/>
        <xsd:element name="CommitmentCostAmount" type="AmountType"/>
        <xsd:element name="CommitmentCostBaseAmount" type="AmountType"/>
        
        <xsd:element name="RegistrationDate" type="DateType"/>
        
        <xsd:element name="Project" type="ProjectReferenceType"/>

        <xsd:element name="ExtensionID" type="IdentifierType"/>
        <xsd:element name="ExtensionMonitoringCosts" type="ProjectCostType"/>
        <xsd:element name="ExtensionPerformanceCosts" type="ProjectCostType"/>
        

</xsd:schema>
