<?xml version="1.0" encoding="UTF-8" ?>
<!--
Copyright © 2005 Covad, Mahindra – British Telecom Limited, 
MetaSolv Software Inc., Motorola, Inc., NEC Corporation, 
Nokia Networks Oy, Nortel Networks Limited, Sun Microsystems Inc..  
All rights reserved. Use is subject to license terms. 
-->
<!--
 
DOCUMENTATION IS PROVIDED "AS IS" AND ALL EXPRESS OR IMPLIED
CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED
WARRANTY OF MERCHANTABILITY, FITNESS FOR FOR A PARTICULAR PURPOSE OR
NON-INFRINGEMENT, ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT SUCH
DISCLAIMERS ARE HELD TO BE LEGALLY INVALID.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:co="http://java.sun.com/products/oss/xml/Common" xmlns:cbeparty="http://java.sun.com/products/oss/xml/CBE/Party" xmlns:cbedatatypes="http://java.sun.com/products/oss/xml/CBE/Datatypes" xmlns:cbecore="http://java.sun.com/products/oss/xml/CBE/Core" elementFormDefault="qualified" targetNamespace="http://java.sun.com/products/oss/xml/CBE/Party">
   <annotation>
      <documentation>This Schema was generated by the OSS through Java XML Toolkit Doclet 3-30-2005 15:27</documentation>
   </annotation>
   <import namespace="http://java.sun.com/products/oss/xml/CBE/Datatypes" schemaLocation="http://java.sun.com/products/oss/xml/CBE/Datatypes/XmlCBEDatatypesSchema.xsd" />
   <import namespace="http://java.sun.com/products/oss/xml/Common" schemaLocation="http://java.sun.com/products/oss/xml/Common/XmlCommonSchema.xsd" />
   <import namespace="http://java.sun.com/products/oss/xml/CBE/Core" schemaLocation="http://java.sun.com/products/oss/xml/CBE/Core/XmlCBECoreSchema.xsd" />
   <complexType name="PartyValue">
      <annotation>
         <documentation>A Common Business Entity interface defining a Party Managed Entity Value.
 A &lt;CODE&gt;Party&lt;/CODE&gt;  represents an individual or an organzation.
 Party is an abstract concept that should be used in places where the business
 says something can be an organization, organization unit or an individual.
 The &lt;CODE&gt;PartyRole&lt;/CODE&gt;  represents the various roles a party could play with
 regard to various managed entities.
 Each &lt;CODE&gt;Party&lt;/CODE&gt;  is associated to a set of party role instances.</documentation>
      </annotation>
      <complexContent>
         <extension base="cbecore:EntityValue">
            <sequence>
               <element name="validFor" minOccurs="0" nillable="true" type="cbedatatypes:TimePeriod" />
               <element name="individualPartyNames" minOccurs="0" nillable="true" type="cbeparty:ArrayOfIndividualName" />
               <element name="organizationPartyNames" minOccurs="0" nillable="true" type="cbeparty:ArrayOfOrganizationName" />
            </sequence>
         </extension>
      </complexContent>
   </complexType>
   <complexType name="PartyRoleValue">
      <annotation>
         <documentation>A Common Managed Entity interface defining a Party Role.
 The part played by a &lt;CODE&gt;Party&lt;/CODE&gt; in a given context with any
 characteristics, such as expected pattern of behavior, attributes, and or
 associations that it entails.
 The &lt;CODE&gt;PartyRole&lt;/CODE&gt; represents the various roles a &lt;CODE&gt;Party&lt;/CODE&gt;
 could play with regard to various managed entities.
 This interface may be extended in order to derive specific party roles
 (e.g. customer, etc.).</documentation>
      </annotation>
      <complexContent>
         <extension base="cbecore:EntityValue">
            <sequence>
               <element name="partyKey" minOccurs="0" nillable="true" type="cbeparty:PartyKey" />
               <element name="validFor" minOccurs="0" nillable="true" type="cbedatatypes:TimePeriod" />
               <element name="status" minOccurs="0" nillable="true" type="string" />
            </sequence>
         </extension>
      </complexContent>
   </complexType>
   <complexType name="PartyRoleKey">
      <annotation>
         <documentation>A PartyRoleKey type.</documentation>
      </annotation>
      <complexContent>
         <extension base="co:ManagedEntityKey">
            <sequence />
         </extension>
      </complexContent>
   </complexType>
   <complexType name="PartyKey">
      <annotation>
         <documentation>A PartyKey type.</documentation>
      </annotation>
      <complexContent>
         <extension base="co:ManagedEntityKey">
            <sequence />
         </extension>
      </complexContent>
   </complexType>
   <complexType name="OrganizationName">
      <annotation>
         <documentation>This interface defines the &lt;CODE&gt;OrganizationName&lt;/CODE&gt; type.
 A word, term, or phrase by which an organization is known and 
 distinguished from other organizations. A name is an informal way 
 of identifying an object.</documentation>
      </annotation>
      <sequence>
         <element name="tradingName" minOccurs="0" nillable="true" type="string" />
      </sequence>
   </complexType>
   <complexType name="IndividualName">
      <annotation>
         <documentation>This interface defines the &lt;CODE&gt;IndividualName&lt;/CODE&gt; type.
 A word, term, or phrase by which an individual is known and distinguished
 from other individuals. A name is an informal way of identifying an object.
  This entity allows for international naming variations.</documentation>
      </annotation>
      <sequence>
         <element name="formOfAddress" minOccurs="0" nillable="true" type="string" />
         <element name="givenName" minOccurs="0" nillable="true" type="string" />
         <element name="preferredGivenName" minOccurs="0" nillable="true" type="string" />
         <element name="middleName" minOccurs="0" nillable="true" type="string" />
         <element name="familyNamePrefix" minOccurs="0" nillable="true" type="string" />
         <element name="familyName" minOccurs="0" nillable="true" type="string" />
         <element name="familyGeneration" minOccurs="0" nillable="true" type="string" />
      </sequence>
   </complexType>
   <complexType name="ArrayOfPartyValue">
      <sequence>
         <element name="item" type="cbeparty:PartyValue" nillable="true" minOccurs="0" maxOccurs="unbounded" />
      </sequence>
   </complexType>
   <complexType name="ArrayOfIndividualName">
      <sequence>
         <element name="item" type="cbeparty:IndividualName" nillable="true" minOccurs="0" maxOccurs="unbounded" />
      </sequence>
   </complexType>
   <complexType name="ArrayOfOrganizationName">
      <sequence>
         <element name="item" type="cbeparty:OrganizationName" nillable="true" minOccurs="0" maxOccurs="unbounded" />
      </sequence>
   </complexType>
   <complexType name="ArrayOfPartyRoleValue">
      <sequence>
         <element name="item" type="cbeparty:PartyRoleValue" nillable="true" minOccurs="0" maxOccurs="unbounded" />
      </sequence>
   </complexType>
   <complexType name="ArrayOfPartyRoleKey">
      <sequence>
         <element name="item" type="cbeparty:PartyRoleKey" nillable="true" minOccurs="0" maxOccurs="unbounded" />
      </sequence>
   </complexType>
   <complexType name="ArrayOfPartyKey">
      <sequence>
         <element name="item" type="cbeparty:PartyKey" nillable="true" minOccurs="0" maxOccurs="unbounded" />
      </sequence>
   </complexType>
</schema>
