<?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.
 
        *****     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/Common/Components.xsd"/>
    
    <xsd:element name="TradingPartnerRules" type="TradingPartnerRulesType">
        <xsd:annotation>
            <xsd:documentation >
            </xsd:documentation>
        </xsd:annotation>
    </xsd:element>
    
    <xsd:complexType name="TradingPartnerRulesType">
        <xsd:sequence>
            <xsd:element ref="TPType" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="TPID" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="PartyID" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="Description" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="EffectiveTimePeriod" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="ComponentRule" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
    </xsd:complexType>
    
    <xsd:element name="ComponentRule" type="ComponentRuleType"/>
    
    <xsd:complexType name="ComponentRuleType">
        <xsd:sequence>
            <xsd:element ref="ComponentName" minOccurs="0"/>
            <xsd:element ref="EffectiveTimePeriod" minOccurs="0"/>
            <xsd:element ref="RuleAssociation" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attribute name="revision" type="NumericType"/>
    </xsd:complexType>
    
    <xsd:element name="RuleAssociation" type="RuleAssociationType"/>
    
    <xsd:complexType name="RuleAssociationType">
        <xsd:sequence>
            <xsd:element ref="RuleName" minOccurs="0"/>
            <xsd:element ref="RuleValue" minOccurs="0"/>
            <xsd:element ref="TPType" minOccurs="0"/>
            <xsd:element ref="TPID" minOccurs="0"/>
            <xsd:element ref="PartyID" minOccurs="0"/>
            <xsd:element ref="Description"  minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element ref="EffectiveTimePeriod" minOccurs="0"/>
        </xsd:sequence>
    </xsd:complexType>
    
    <xsd:element name="ComponentName" type="NameType"/>
    <xsd:element name="RuleName" type="RuleValueType"/>
    <xsd:element name="RuleValue" type="RuleValueType"/>
    <xsd:element name="Revision" type="NumericType"/>
    <xsd:element name="TPType" type="AgencyRoleContentType"/>
    <xsd:element name="TPID" type="IdentifierType"/>
    <xsd:element name="PartyID" type="IdentifierType"/>
</xsd:schema>
