You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by ho...@apache.org on 2006/08/29 19:59:04 UTC

svn commit: r438133 [4/10] - in /geronimo/server/branches/1.1.1: etc/ modules/axis-builder/ modules/client-builder/ modules/connector-builder/ modules/j2ee-builder/ modules/j2ee-schema/ modules/j2ee-schema/src/catalog/ modules/j2ee-schema/src/conf/ mod...

Modified: geronimo/server/branches/1.1.1/modules/j2ee-schema/src/j2ee_1_4schema/ejb-jar_2_1.xsd
URL: http://svn.apache.org/viewvc/geronimo/server/branches/1.1.1/modules/j2ee-schema/src/j2ee_1_4schema/ejb-jar_2_1.xsd?rev=438133&r1=438132&r2=438133&view=diff
==============================================================================
--- geronimo/server/branches/1.1.1/modules/j2ee-schema/src/j2ee_1_4schema/ejb-jar_2_1.xsd (original)
+++ geronimo/server/branches/1.1.1/modules/j2ee-schema/src/j2ee_1_4schema/ejb-jar_2_1.xsd Tue Aug 29 10:59:01 2006
@@ -1,2207 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
-	    targetNamespace="http://java.sun.com/xml/ns/j2ee"
-	    xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
-	    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
-	    elementFormDefault="qualified"
-	    attributeFormDefault="unqualified"
-	    version="2.1">
-  <xsd:annotation>
-    <xsd:documentation>
-      @(#)ejb-jar_2_1.xsds	1.23 08/01/03
-    </xsd:documentation>
-  </xsd:annotation>
-
-  <xsd:annotation>
-    <xsd:documentation>
-
-      Copyright 2003 Sun Microsystems, Inc., 901 San Antonio
-      Road, Palo Alto, California 94303, U.S.A. All rights
-      reserved.
-
-      Sun Microsystems, Inc. has intellectual property rights
-      relating to technology described in this document. In
-      particular, and without limitation, these intellectual
-      property rights may include one or more of the U.S. patents
-      listed at http://www.sun.com/patents and one or more
-      additional patents or pending patent applications in the
-      U.S. and other countries.
-
-      This document and the technology which it describes are
-      distributed under licenses restricting their use, copying,
-      distribution, and decompilation. No part of this document
-      may be reproduced in any form by any means without prior
-      written authorization of Sun and its licensors, if any.
-
-      Third-party software, including font technology, is
-      copyrighted and licensed from Sun suppliers.
-
-      Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
-      JavaServer Pages, Enterprise JavaBeans and the Java Coffee
-      Cup logo are trademarks or registered trademarks of Sun
-      Microsystems, Inc. in the U.S. and other countries.
-
-      Federal Acquisitions: Commercial Software - Government Users
-      Subject to Standard License Terms and Conditions.
-
-    </xsd:documentation>
-  </xsd:annotation>
-
-  <xsd:annotation>
-    <xsd:documentation>
-      <![CDATA[
-
-	This is the XML Schema for the EJB 2.1 deployment descriptor.
-	The deployment descriptor must be named "META-INF/ejb-jar.xml" in
-	the EJB's jar file.  All EJB deployment descriptors must indicate
-	the ejb-jar schema by using the J2EE namespace:
-
-	http://java.sun.com/xml/ns/j2ee
-
-	and by indicating the version of the schema by
-	using the version element as shown below:
-
-	    <ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee"
-	      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	      xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
-		  http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"
-	      version="2.1">
-	      ...
-	    </ejb-jar>
-
-	The instance documents may indicate the published version of
-	the schema using the xsi:schemaLocation attribute for the
-	J2EE namespace with the following location:
-
-	http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd
-
-	]]>
-    </xsd:documentation>
-  </xsd:annotation>
-
-  <xsd:annotation>
-    <xsd:documentation>
-
-      The following conventions apply to all J2EE
-      deployment descriptor elements unless indicated otherwise.
-
-      - In elements that specify a pathname to a file within the
-	same JAR file, relative filenames (i.e., those not
-	starting with "/") are considered relative to the root of
-	the JAR file's namespace.  Absolute filenames (i.e., those
-	starting with "/") also specify names in the root of the
-	JAR file's namespace.  In general, relative names are
-	preferred.  The exception is .war files where absolute
-	names are preferred for consistency with the Servlet API.
-
-    </xsd:documentation>
-  </xsd:annotation>
-
-  <xsd:include schemaLocation="j2ee_1_4.xsd"/>
-
-
-<!-- **************************************************** -->
-
-
-  <xsd:element name="ejb-jar" type="j2ee:ejb-jarType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	This is the root of the ejb-jar deployment descriptor.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:key name="ejb-name-key">
-      <xsd:annotation>
-	<xsd:documentation>
-
-	  The ejb-name element contains the name of an enterprise
-	  bean. The name must be unique within the ejb-jar file.
-
-	</xsd:documentation>
-      </xsd:annotation>
-      <xsd:selector xpath="j2ee:enterprise-beans/*"/>
-      <xsd:field    xpath="j2ee:ejb-name"/>
-    </xsd:key>
-
-    <xsd:keyref name="ejb-name-references"
-		refer="j2ee:ejb-name-key">
-      <xsd:annotation>
-	<xsd:documentation>
-
-	  The keyref indicates the references from
-	  relationship-role-source must be to a specific ejb-name
-	  defined within the scope of enterprise-beans element.
-
-	</xsd:documentation>
-      </xsd:annotation>
-      <xsd:selector
-	   xpath=".//j2ee:ejb-relationship-role/j2ee:relationship-role-source"/>
-      <xsd:field
-	   xpath="j2ee:ejb-name"/>
-    </xsd:keyref>
-
-    <xsd:key name="role-name-key">
-      <xsd:annotation>
-	<xsd:documentation>
-
-	  A role-name-key is specified to allow the references
-	  from the security-role-refs.
-
-	</xsd:documentation>
-      </xsd:annotation>
-      <xsd:selector xpath="j2ee:assembly-descriptor/j2ee:security-role"/>
-      <xsd:field    xpath="j2ee:role-name"/>
-    </xsd:key>
-
-    <xsd:keyref name="role-name-references"
-		refer="j2ee:role-name-key">
-      <xsd:annotation>
-	<xsd:documentation>
-
-	  The keyref indicates the references from
-	  security-role-ref to a specified role-name.
-
-	</xsd:documentation>
-      </xsd:annotation>
-      <xsd:selector xpath="j2ee:enterprise-beans/*/j2ee:security-role-ref"/>
-      <xsd:field    xpath="j2ee:role-link"/>
-    </xsd:keyref>
-  </xsd:element>
-
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="activation-config-propertyType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The activation-config-propertyType contains a name/value
-	configuration property pair for a message-driven bean.
-
-	The properties that are recognized for a particular
-	message-driven bean are determined by the messaging type.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="activation-config-property-name"
-		   type="j2ee:xsdStringType">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The activation-config-property-name element contains
-	    the name for an activation configuration property of
-	    a message-driven bean.
-
-	    For JMS message-driven beans, the following property
-	    names are recognized: acknowledgeMode,
-	    messageSelector, destinationType, subscriptionDurability
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-      <xsd:element name="activation-config-property-value"
-		   type="j2ee:xsdStringType">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The activation-config-property-value element
-	    contains the value for an activation configuration
-	    property of a message-driven bean.
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="activation-configType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The activation-configType defines information about the
-	expected configuration properties of the message-driven bean
-	in its operational environment. This may include information
-	about message acknowledgement, message selector, expected
-	destination type, etc.
-
-	The configuration information is expressed in terms of
-	name/value configuration properties.
-
-	The properties that are recognized for a particular
-	message-driven bean are determined by the messaging type.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="description"
-		   type="j2ee:descriptionType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="activation-config-property"
-		   type="j2ee:activation-config-propertyType"
-		   maxOccurs="unbounded"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="assembly-descriptorType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The assembly-descriptorType defines
-	application-assembly information.
-
-	The application-assembly information consists of the
-	following parts: the definition of security roles, the
-	definition of method permissions, the definition of
-	transaction attributes for enterprise beans with
-	container-managed transaction demarcation and a list of
-	methods to be excluded from being invoked.
-
-	All the parts are optional in the sense that they are
-	omitted if the lists represented by them are empty.
-
-	Providing an assembly-descriptor in the deployment
-	descriptor is optional for the ejb-jar file producer.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="security-role"
-		   type="j2ee:security-roleType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="method-permission"
-		   type="j2ee:method-permissionType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="container-transaction"
-		   type="j2ee:container-transactionType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="message-destination"
-		   type="j2ee:message-destinationType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="exclude-list"
-		   type="j2ee:exclude-listType"
-		   minOccurs="0"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="cmp-fieldType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The cmp-fieldType describes a container-managed field. The
-	cmp-fieldType contains an optional description of the field,
-	and the name of the field.
-
-      </xsd:documentation>
-    </xsd:annotation>
-    <xsd:sequence>
-      <xsd:element name="description"
-		   type="j2ee:descriptionType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="field-name"
-		   type="j2ee:java-identifierType">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The field-name element specifies the name of a
-	    container managed field.
-
-	    The name of the cmp-field of an entity bean with
-	    cmp-version 2.x must begin with a lowercase
-	    letter. This field is accessed by methods whose
-	    names consists of the name of the field specified by
-	    field-name in which the first letter is uppercased,
-	    prefixed by "get" or "set".
-
-	    The name of the cmp-field of an entity bean with
-	    cmp-version 1.x must denote a public field of the
-	    enterprise bean class or one of its superclasses.
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="cmp-versionType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The cmp-versionType specifies the version of an entity bean
-	with container-managed persistence. It is used by
-	cmp-version elements.
-
-	The value must be one of the two following:
-
-	    1.x
-	    2.x
-
-      </xsd:documentation>
-    </xsd:annotation>
-    <xsd:simpleContent>
-      <xsd:restriction base="j2ee:string">
-	<xsd:enumeration value="1.x"/>
-	<xsd:enumeration value="2.x"/>
-      </xsd:restriction>
-    </xsd:simpleContent>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="cmr-field-typeType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The cmr-field-type element specifies the class of a
-	collection-valued logical relationship field in the entity
-	bean class. The value of an element using cmr-field-typeType
-	must be either: java.util.Collection or java.util.Set.
-
-      </xsd:documentation>
-    </xsd:annotation>
-    <xsd:simpleContent>
-      <xsd:restriction base="j2ee:string">
-	<xsd:enumeration value="java.util.Collection"/>
-	<xsd:enumeration value="java.util.Set"/>
-      </xsd:restriction>
-    </xsd:simpleContent>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="cmr-fieldType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The cmr-fieldType describes the bean provider's view of
-	a relationship. It consists of an optional description, and
-	the name and the class type of a field in the source of a
-	role of a relationship. The cmr-field-name element
-	corresponds to the name used for the get and set accessor
-	methods for the relationship. The cmr-field-type element is
-	used only for collection-valued cmr-fields. It specifies the
-	type of the collection that is used.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="description"
-		   type="j2ee:descriptionType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="cmr-field-name"
-		   type="j2ee:string">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The cmr-field-name element specifies the name of a
-	    logical relationship field in the entity bean
-	    class. The name of the cmr-field must begin with a
-	    lowercase letter. This field is accessed by methods
-	    whose names consist of the name of the field
-	    specified by cmr-field-name in which the first
-	    letter is uppercased, prefixed by "get" or "set".
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-      <xsd:element name="cmr-field-type"
-		   type="j2ee:cmr-field-typeType"
-		   minOccurs="0"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="container-transactionType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The container-transactionType specifies how the container
-	must manage transaction scopes for the enterprise bean's
-	method invocations. It defines an optional description, a
-	list of method elements, and a transaction attribute. The
-	transaction attribute is to be applied to all the specified
-	methods.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="description"
-		   type="j2ee:descriptionType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="method"
-		   type="j2ee:methodType"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="trans-attribute"
-		   type="j2ee:trans-attributeType"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="ejb-classType">
-    <xsd:annotation>
-      <xsd:documentation>
-	<![CDATA[
-
-	  The ejb-classType contains the fully-qualified name of the
-	  enterprise bean's class. It is used by ejb-class elements.
-
-	  Example:
-
-	      <ejb-class>com.wombat.empl.EmployeeServiceBean</ejb-class>
-
-	  ]]>
-      </xsd:documentation>
-    </xsd:annotation>
-    <xsd:simpleContent>
-      <xsd:restriction base="j2ee:fully-qualified-classType"/>
-    </xsd:simpleContent>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="ejb-jarType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The ejb-jarType defines the root element of the EJB
-	deployment descriptor. It contains
-
-	    - an optional description of the ejb-jar file
-	    - an optional display name
-	    - an optional icon that contains a small and a large
-	      icon file name
-	    - mandatory structural information about all included
-	      enterprise beans
-	    - a descriptor for container managed relationships,
-	      if any
-	    - an optional application-assembly descriptor
-	    - an optional name of an ejb-client-jar file for the
-	      ejb-jar.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:group ref="j2ee:descriptionGroup"/>
-      <xsd:element name="enterprise-beans"
-		   type="j2ee:enterprise-beansType"/>
-      <xsd:element name="relationships"
-		   type="j2ee:relationshipsType"
-		   minOccurs="0">
-	<xsd:unique name="relationship-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The ejb-relation-name contains the name of a
-	      relation. The name must be unique within
-	      relationships.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:ejb-relation"/>
-	  <xsd:field    xpath="j2ee:ejb-relation-name"/>
-	</xsd:unique>
-      </xsd:element>
-      <xsd:element name="assembly-descriptor"
-		   type="j2ee:assembly-descriptorType"
-		   minOccurs="0">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    Providing an assembly-descriptor in the deployment
-	    descriptor is optional for the ejb-jar file
-	    producer.
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-      <xsd:element name="ejb-client-jar"
-		   type="j2ee:pathType"
-		   minOccurs="0">
-	<xsd:annotation>
-	  <xsd:documentation>
-	    <![CDATA[
-
-	      The optional ejb-client-jar element specifies a JAR
-	      file that contains the class files necessary for a
-	      client program to access the
-	      enterprise beans in the ejb-jar file.
-
-	      Example:
-
-		  <ejb-client-jar>employee_service_client.jar
-		  </ejb-client-jar>
-
-	      ]]>
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-    </xsd:sequence>
-    <xsd:attribute name="version"
-		   type="j2ee:dewey-versionType"
-		   fixed="2.1"
-		   use="required">
-      <xsd:annotation>
-	<xsd:documentation>
-
-	  The version specifies the version of the
-	  EJB specification that the instance document must
-	  comply with. This information enables deployment tools
-	  to validate a particular EJB Deployment
-	  Descriptor with respect to a specific version of the EJB
-	  schema.
-
-	</xsd:documentation>
-      </xsd:annotation>
-    </xsd:attribute>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="ejb-nameType">
-    <xsd:annotation>
-      <xsd:documentation>
-	<![CDATA[
-
-	  The ejb-nameType specifies an enterprise bean's name. It is
-	  used by ejb-name elements. This name is assigned by the
-	  ejb-jar file producer to name the enterprise bean in the
-	  ejb-jar file's deployment descriptor. The name must be
-	  unique among the names of the enterprise beans in the same
-	  ejb-jar file.
-
-	  There is no architected relationship between the used
-	  ejb-name in the deployment descriptor and the JNDI name that
-	  the Deployer will assign to the enterprise bean's home.
-
-	  The name for an entity bean must conform to the lexical
-	  rules for an NMTOKEN.
-
-	  Example:
-
-	  <ejb-name>EmployeeService</ejb-name>
-
-	  ]]>
-      </xsd:documentation>
-    </xsd:annotation>
-    <xsd:simpleContent>
-      <xsd:restriction base="j2ee:xsdNMTOKENType"/>
-    </xsd:simpleContent>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="ejb-relationType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The ejb-relationType describes a relationship between two
-	entity beans with container-managed persistence.  It is used
-	by ejb-relation elements. It contains a description; an
-	optional ejb-relation-name element; and exactly two
-	relationship role declarations, defined by the
-	ejb-relationship-role elements. The name of the
-	relationship, if specified, is unique within the ejb-jar
-	file.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="description"
-		   type="j2ee:descriptionType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="ejb-relation-name"
-		   type="j2ee:string"
-		   minOccurs="0">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The ejb-relation-name element provides a unique name
-	    within the ejb-jar file for a relationship.
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-      <xsd:element name="ejb-relationship-role"
-		   type="j2ee:ejb-relationship-roleType"/>
-      <xsd:element name="ejb-relationship-role"
-		   type="j2ee:ejb-relationship-roleType"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="ejb-relationship-roleType">
-    <xsd:annotation>
-      <xsd:documentation>
-	<![CDATA[
-
-	  The ejb-relationship-roleType describes a role within a
-	  relationship. There are two roles in each relationship.
-
-	  The ejb-relationship-roleType contains an optional
-	  description; an optional name for the relationship role; a
-	  specification of the multiplicity of the role; an optional
-	  specification of cascade-delete functionality for the role;
-	  the role source; and a declaration of the cmr-field, if any,
-	  by means of which the other side of the relationship is
-	  accessed from the perspective of the role source.
-
-	  The multiplicity and role-source element are mandatory.
-
-	  The relationship-role-source element designates an entity
-	  bean by means of an ejb-name element. For bidirectional
-	  relationships, both roles of a relationship must declare a
-	  relationship-role-source element that specifies a cmr-field
-	  in terms of which the relationship is accessed. The lack of
-	  a cmr-field element in an ejb-relationship-role specifies
-	  that the relationship is unidirectional in navigability and
-	  the entity bean that participates in the relationship is
-	  "not aware" of the relationship.
-
-	  Example:
-
-	  <ejb-relation>
-	      <ejb-relation-name>Product-LineItem</ejb-relation-name>
-	      <ejb-relationship-role>
-		  <ejb-relationship-role-name>product-has-lineitems
-		  </ejb-relationship-role-name>
-		  <multiplicity>One</multiplicity>
-		  <relationship-role-source>
-		  <ejb-name>ProductEJB</ejb-name>
-		  </relationship-role-source>
-	       </ejb-relationship-role>
-	  </ejb-relation>
-
-	  ]]>
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="description"
-		   type="j2ee:descriptionType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="ejb-relationship-role-name"
-		   type="j2ee:string"
-		   minOccurs="0">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The ejb-relationship-role-name element defines a
-	    name for a role that is unique within an
-	    ejb-relation. Different relationships can use the
-	    same name for a role.
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-      <xsd:element name="multiplicity"
-		   type="j2ee:multiplicityType"/>
-      <xsd:element name="cascade-delete"
-		   type="j2ee:emptyType"
-		   minOccurs="0">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The cascade-delete element specifies that, within a
-	    particular relationship, the lifetime of one or more
-	    entity beans is dependent upon the lifetime of
-	    another entity bean. The cascade-delete element can
-	    only be specified for an ejb-relationship-role
-	    element contained in an ejb-relation element in
-	    which the other ejb-relationship-role
-	    element specifies a multiplicity of One.
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-      <xsd:element name="relationship-role-source"
-		   type="j2ee:relationship-role-sourceType"/>
-      <xsd:element name="cmr-field"
-		   type="j2ee:cmr-fieldType"
-		   minOccurs="0"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="enterprise-beansType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The enterprise-beansType declares one or more enterprise
-	beans. Each bean can be a session, entity or message-driven
-	bean.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:choice maxOccurs="unbounded">
-      <xsd:element name="session"
-		   type="j2ee:session-beanType">
-	<xsd:unique name="session-ejb-local-ref-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The ejb-ref-name element contains the name of
-	      an EJB reference. The EJB reference is an entry in
-	      the component's environment and is relative to the
-	      java:comp/env context.  The name must be unique within
-	      the component.
-
-	      It is recommended that name be prefixed with "ejb/".
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:ejb-local-ref"/>
-	  <xsd:field    xpath="j2ee:ejb-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="session-ejb-ref-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The ejb-ref-name element contains the name of an EJB
-	      reference. The EJB reference is an entry in the
-	      component's environment and is relative to the
-	      java:comp/env context. The name must be unique
-	      within the component.
-
-	      It is recommended that name is prefixed with "ejb/".
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:ejb-ref"/>
-	  <xsd:field    xpath="j2ee:ejb-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="session-resource-env-ref-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The resource-env-ref-name element specifies the name
-	      of a resource environment reference; its value is
-	      the environment entry name used in the component
-	      code. The name is a JNDI name relative to the
-	      java:comp/env context and must be unique within an
-	      component.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:resource-env-ref"/>
-	  <xsd:field    xpath="j2ee:resource-env-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="session-message-destination-ref-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The message-destination-ref-name element specifies the name
-	      of a message destination reference; its value is
-	      the message destination reference name used in the component
-	      code. The name is a JNDI name relative to the
-	      java:comp/env context and must be unique within an
-	      component.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:message-destination-ref"/>
-	  <xsd:field    xpath="j2ee:message-destination-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="session-res-ref-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The res-ref-name element specifies the name of a
-	      resource manager connection factory reference.  The name
-	      is a JNDI name relative to the java:comp/env context.
-	      The name must be unique within an component.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:resource-ref"/>
-	  <xsd:field    xpath="j2ee:res-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="session-env-entry-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The env-entry-name element contains the name of a
-	      component's environment entry.  The name is a JNDI
-	      name relative to the java:comp/env context.  The
-	      name must be unique within an component.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:env-entry"/>
-	  <xsd:field    xpath="j2ee:env-entry-name"/>
-	</xsd:unique>
-      </xsd:element>
-
-      <xsd:element name="entity"
-		   type="j2ee:entity-beanType">
-	<xsd:unique name="entity-ejb-local-ref-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The ejb-ref-name element contains the name of
-	      an EJB reference. The EJB reference is an entry in
-	      the component's environment and is relative to the
-	      java:comp/env context.  The name must be unique within
-	      the component.
-
-	      It is recommended that name be prefixed with "ejb/".
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:ejb-local-ref"/>
-	  <xsd:field    xpath="j2ee:ejb-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="entity-ejb-ref-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The ejb-ref-name element contains the name of an EJB
-	      reference. The EJB reference is an entry in the
-	      component's environment and is relative to the
-	      java:comp/env context. The name must be unique
-	      within the component.
-
-	      It is recommended that name is prefixed with "ejb/".
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:ejb-ref"/>
-	  <xsd:field    xpath="j2ee:ejb-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="entity-resource-env-ref-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The resource-env-ref-name element specifies the name
-	      of a resource environment reference; its value is
-	      the environment entry name used in the component
-	      code. The name is a JNDI name relative to the
-	      java:comp/env context and must be unique within an
-	      component.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:resource-env-ref"/>
-	  <xsd:field    xpath="j2ee:resource-env-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="entity-message-destination-ref-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The message-destination-ref-name element specifies the name
-	      of a message destination reference; its value is
-	      the message destination reference name used in the component
-	      code. The name is a JNDI name relative to the
-	      java:comp/env context and must be unique within an
-	      component.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:message-destination-ref"/>
-	  <xsd:field    xpath="j2ee:message-destination-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="entity-res-ref-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The res-ref-name element specifies the name of a
-	      resource manager connection factory reference.  The name
-	      is a JNDI name relative to the java:comp/env context.
-	      The name must be unique within an component.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:resource-ref"/>
-	  <xsd:field    xpath="j2ee:res-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="entity-env-entry-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The env-entry-name element contains the name of a
-	      component's environment entry.  The name is a JNDI
-	      name relative to the java:comp/env context.  The
-	      name must be unique within an component.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:env-entry"/>
-	  <xsd:field    xpath="j2ee:env-entry-name"/>
-	</xsd:unique>
-      </xsd:element>
-
-      <xsd:element name="message-driven"
-		   type="j2ee:message-driven-beanType">
-	<xsd:unique name="messaged-ejb-local-ref-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The ejb-ref-name element contains the name of
-	      an EJB reference. The EJB reference is an entry in
-	      the component's environment and is relative to the
-	      java:comp/env context.  The name must be unique within
-	      the component.
-
-	      It is recommended that name be prefixed with "ejb/".
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:ejb-local-ref"/>
-	  <xsd:field    xpath="j2ee:ejb-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="messaged-ejb-ref-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The ejb-ref-name element contains the name of an EJB
-	      reference. The EJB reference is an entry in the
-	      component's environment and is relative to the
-	      java:comp/env context. The name must be unique
-	      within the component.
-
-	      It is recommended that name is prefixed with "ejb/".
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:ejb-ref"/>
-	  <xsd:field    xpath="j2ee:ejb-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="messaged-resource-env-ref-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The resource-env-ref-name element specifies the name
-	      of a resource environment reference; its value is
-	      the environment entry name used in the component
-	      code. The name is a JNDI name relative to the
-	      java:comp/env context and must be unique within an
-	      component.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:resource-env-ref"/>
-	  <xsd:field    xpath="j2ee:resource-env-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="messaged-message-destination-ref-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The message-destination-ref-name element specifies the name
-	      of a message destination reference; its value is
-	      the message destination reference name used in the component
-	      code. The name is a JNDI name relative to the
-	      java:comp/env context and must be unique within an
-	      component.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:message-destination-ref"/>
-	  <xsd:field    xpath="j2ee:message-destination-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="messaged-res-ref-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The res-ref-name element specifies the name of a
-	      resource manager connection factory reference.  The name
-	      is a JNDI name relative to the java:comp/env context.
-	      The name must be unique within an component.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:resource-ref"/>
-	  <xsd:field    xpath="j2ee:res-ref-name"/>
-	</xsd:unique>
-
-	<xsd:unique name="messaged-env-entry-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The env-entry-name element contains the name of a
-	      component's environment entry.  The name is a JNDI
-	      name relative to the java:comp/env context.  The
-	      name must be unique within an component.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector xpath="j2ee:env-entry"/>
-	  <xsd:field    xpath="j2ee:env-entry-name"/>
-	</xsd:unique>
-      </xsd:element>
-
-    </xsd:choice>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="entity-beanType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The entity-beanType declares an entity bean. The declaration
-	consists of:
-
-	    - an optional description
-	    - an optional display name
-	    - an optional icon element that contains a small and a large
-	      icon file name
-	    - a unique name assigned to the enterprise bean
-	      in the deployment descriptor
-	    - the names of the entity bean's remote home
-	      and remote interfaces, if any
-	    - the names of the entity bean's local home and local
-	      interfaces, if any
-	    - the entity bean's implementation class
-	    - the entity bean's persistence management type
-	    - the entity bean's primary key class name
-	    - an indication of the entity bean's reentrancy
-	    - an optional specification of the
-	      entity bean's cmp-version
-	    - an optional specification of the entity bean's
-	      abstract schema name
-	    - an optional list of container-managed fields
-	    - an optional specification of the primary key
-	      field
-	    - an optional declaration of the bean's environment
-	      entries
-	    - an optional declaration of the bean's EJB
-	      references
-	    - an optional declaration of the bean's local
-	      EJB references
-	    - an optional declaration of the bean's web
-	      service references
-	    - an optional declaration of the security role
-	      references
-	    - an optional declaration of the security identity
-	      to be used for the execution of the bean's methods
-	    - an optional declaration of the bean's
-	      resource manager connection factory references
-	    - an optional declaration of the bean's
-	      resource environment references
-	    - an optional declaration of the bean's message
-	      destination references
-	    - an optional set of query declarations
-	      for finder and select methods for an entity
-	      bean with cmp-version 2.x.
-
-	The optional abstract-schema-name element must be specified
-	for an entity bean with container-managed persistence and
-	cmp-version 2.x.
-
-	The optional primkey-field may be present in the descriptor
-	if the entity's persistence-type is Container.
-
-	The optional cmp-version element may be present in the
-	descriptor if the entity's persistence-type is Container. If
-	the persistence-type is Container and the cmp-version
-	element is not specified, its value defaults to 2.x.
-
-	The optional home and remote elements must be specified if
-	the entity bean cmp-version is 1.x.
-
-	The optional home and remote elements must be specified if
-	the entity bean has a remote home and remote interface.
-
-	The optional local-home and local elements must be specified
-	if the entity bean has a local home and local interface.
-
-	Either both the local-home and the local elements or both
-	the home and the remote elements must be specified.
-
-	The optional query elements must be present if the
-	persistence-type is Container and the cmp-version is 2.x and
-	query methods other than findByPrimaryKey have been defined
-	for the entity bean.
-
-	The other elements that are optional are "optional" in the
-	sense that they are omitted if the lists represented by them
-	are empty.
-
-	At least one cmp-field element must be present in the
-	descriptor if the entity's persistence-type is Container and
-	the cmp-version is 1.x, and none must not be present if the
-	entity's persistence-type is Bean.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:group ref="j2ee:descriptionGroup"/>
-      <xsd:element name="ejb-name"
-		   type="j2ee:ejb-nameType"/>
-      <xsd:element name="home"
-		   type="j2ee:homeType"
-		   minOccurs="0"/>
-      <xsd:element name="remote"
-		   type="j2ee:remoteType"
-		   minOccurs="0"/>
-      <xsd:element name="local-home"
-		   type="j2ee:local-homeType"
-		   minOccurs="0"/>
-      <xsd:element name="local"
-		   type="j2ee:localType"
-		   minOccurs="0"/>
-      <xsd:element name="ejb-class"
-		   type="j2ee:ejb-classType"/>
-      <xsd:element name="persistence-type"
-		   type="j2ee:persistence-typeType"/>
-      <xsd:element name="prim-key-class"
-		   type="j2ee:fully-qualified-classType">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The prim-key-class element contains the
-	    fully-qualified name of an
-	    entity bean's primary key class.
-
-	    If the definition of the primary key class is
-	    deferred to deployment time, the prim-key-class
-	    element should specify java.lang.Object.
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-      <xsd:element name="reentrant"
-		   type="j2ee:true-falseType">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The reentrant element specifies whether an entity
-	    bean is reentrant or not.
-
-	    The reentrant element must be one of the two
-	    following: true or false
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-      <xsd:element name="cmp-version"
-		   type="j2ee:cmp-versionType"
-		   minOccurs="0"/>
-      <xsd:element name="abstract-schema-name"
-		   type="j2ee:java-identifierType"
-		   minOccurs="0">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The abstract-schema-name element specifies the name
-	    of the abstract schema type of an entity bean with
-	    cmp-version 2.x. It is used in EJB QL queries.
-
-	    For example, the abstract-schema-name for an entity
-	    bean whose local interface is
-	    com.acme.commerce.Order might be Order.
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-      <xsd:element name="cmp-field"
-		   type="j2ee:cmp-fieldType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="primkey-field"
-		   type="j2ee:string"
-		   minOccurs="0">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The primkey-field element is used to specify the
-	    name of the primary key field for an entity with
-	    container-managed persistence.
-
-	    The primkey-field must be one of the fields declared
-	    in the cmp-field element, and the type of the field
-	    must be the same as the primary key type.
-
-	    The primkey-field element is not used if the primary
-	    key maps to multiple container-managed fields
-	    (i.e. the key is a compound key). In this case, the
-	    fields of the primary key class must be public, and
-	    their names must correspond to the field names of
-	    the entity bean class that comprise the key.
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-      <xsd:group ref="j2ee:jndiEnvironmentRefsGroup"/>
-      <xsd:element name="security-role-ref"
-		   type="j2ee:security-role-refType"
-		   minOccurs="0" maxOccurs="unbounded"/>
-      <xsd:element name="security-identity"
-		   type="j2ee:security-identityType"
-		   minOccurs="0"/>
-      <xsd:element name="query"
-		   type="j2ee:queryType"
-		   minOccurs="0" maxOccurs="unbounded"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="exclude-listType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The exclude-listType specifies one or more methods which
-	the Assembler marks to be uncallable.
-
-	If the method permission relation contains methods that are
-	in the exclude list, the Deployer should consider those
-	methods to be uncallable.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="description"
-		   type="j2ee:descriptionType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="method"
-		   type="j2ee:methodType"
-		   maxOccurs="unbounded"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="message-driven-beanType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The message-driven element declares a message-driven
-	bean. The declaration consists of:
-
-	    - an optional description
-	    - an optional display name
-	    - an optional icon element that contains a small and a large
-	      icon file name.
-	    - a name assigned to the enterprise bean in
-	      the deployment descriptor
-	    - the message-driven bean's implementation class
-	    - an optional declaration of the bean's messaging
-	      type
-	    - the message-driven bean's transaction management type
-	    - an optional declaration of the bean's
-	      message-destination-type
-	    - an optional declaration of the bean's
-	      message-destination-link
-	    - an optional declaration of the message-driven bean's
-	      activation configuration properties
-	    - an optional declaration of the bean's environment
-	      entries
-	    - an optional declaration of the bean's EJB references
-	    - an optional declaration of the bean's local EJB
-	      references
-	    - an optional declaration of the bean's web service
-	      references
-	    - an optional declaration of the security
-	      identity to be used for the execution of the bean's
-	      methods
-	    - an optional declaration of the bean's
-	      resource manager connection factory
-	      references
-	    - an optional declaration of the bean's resource
-	      environment references.
-	    - an optional declaration of the bean's message
-	      destination references
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:group ref="j2ee:descriptionGroup"/>
-      <xsd:element name="ejb-name"
-		   type="j2ee:ejb-nameType"/>
-      <xsd:element name="ejb-class"
-		   type="j2ee:ejb-classType"/>
-      <xsd:element name="messaging-type"
-		   type="j2ee:fully-qualified-classType"
-		   minOccurs="0">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The messaging-type element specifies the message
-	    listener interface of the message-driven bean. If
-	    the messaging-type element is not specified, it is
-	    assumed to be javax.jms.MessageListener.
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-      <xsd:element name="transaction-type"
-		   type="j2ee:transaction-typeType"/>
-      <xsd:element name="message-destination-type"
-		   type="j2ee:message-destination-typeType"
-		   minOccurs="0"/>
-      <xsd:element name="message-destination-link"
-		   type="j2ee:message-destination-linkType"
-		   minOccurs="0"/>
-      <xsd:element name="activation-config"
-		   type="j2ee:activation-configType"
-		   minOccurs="0"/>
-      <xsd:group ref="j2ee:jndiEnvironmentRefsGroup"/>
-      <xsd:element name="security-identity"
-		   type="j2ee:security-identityType"
-		   minOccurs="0"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="method-intfType">
-
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The method-intf element allows a method element to
-	differentiate between the methods with the same name and
-	signature that are multiply defined across the home and
-	component interfaces (e.g, in both an enterprise bean's
-	remote and local interfaces or in both an enterprise bean's
-	home and remote interfaces, etc.); the component and web
-	service endpoint interfaces, and so on.
-
-	The method-intf element must be one of the following:
-
-	    Home
-	    Remote
-	    LocalHome
-	    Local
-	    ServiceEndpoint
-
-      </xsd:documentation>
-    </xsd:annotation>
-    <xsd:simpleContent>
-      <xsd:restriction base="j2ee:string">
-	<xsd:enumeration value="Home"/>
-	<xsd:enumeration value="Remote"/>
-	<xsd:enumeration value="LocalHome"/>
-	<xsd:enumeration value="Local"/>
-	<xsd:enumeration value="ServiceEndpoint"/>
-      </xsd:restriction>
-    </xsd:simpleContent>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="method-nameType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The method-nameType contains a name of an enterprise
-	bean method or the asterisk (*) character. The asterisk is
-	used when the element denotes all the methods of an
-	enterprise bean's client view interfaces.
-
-      </xsd:documentation>
-    </xsd:annotation>
-    <xsd:simpleContent>
-      <xsd:restriction base="j2ee:string"/>
-    </xsd:simpleContent>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="method-paramsType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The method-paramsType defines a list of the
-	fully-qualified Java type names of the method parameters.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="method-param"
-		   type="j2ee:java-typeType"
-		   minOccurs="0"
-		   maxOccurs="unbounded">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The method-param element contains a primitive
-	    or a fully-qualified Java type name of a method
-	    parameter.
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="method-permissionType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The method-permissionType specifies that one or more
-	security roles are allowed to invoke one or more enterprise
-	bean methods. The method-permissionType consists of an
-	optional description, a list of security role names or an
-	indicator to state that the method is unchecked for
-	authorization, and a list of method elements.
-
-	The security roles used in the method-permissionType
-	must be defined in the security-role elements of the
-	deployment descriptor, and the methods must be methods
-	defined in the enterprise bean's home, component and/or web
-	service endpoint interfaces.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="description"
-		   type="j2ee:descriptionType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:choice>
-	<xsd:element name="role-name"
-		     type="j2ee:role-nameType"
-		     maxOccurs="unbounded"/>
-	<xsd:element name="unchecked"
-		     type="j2ee:emptyType">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The unchecked element specifies that a method is
-	      not checked for authorization by the container
-	      prior to invocation of the method.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	</xsd:element>
-      </xsd:choice>
-      <xsd:element name="method"
-		   type="j2ee:methodType"
-		   maxOccurs="unbounded"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="methodType">
-    <xsd:annotation>
-      <xsd:documentation>
-	<![CDATA[
-
-	  The methodType is used to denote a method of an enterprise
-	  bean's home, component, and/or web service endpoint
-	  interface, or, in the case of a message-driven bean, the
-	  bean's message listener method, or a set of such
-	  methods. The ejb-name element must be the name of one of the
-	  enterprise beans declared in the deployment descriptor; the
-	  optional method-intf element allows to distinguish between a
-	  method with the same signature that is multiply defined
-	  across the home, component, and/or web service endpoint
-	  interfaces; the method-name element specifies the method
-	  name; and the optional method-params elements identify a
-	  single method among multiple methods with an overloaded
-	  method name.
-
-	  There are three possible styles of using methodType element
-	  within a method element:
-
-	  1.
-	  <method>
-	      <ejb-name>EJBNAME</ejb-name>
-	      <method-name>*</method-name>
-	  </method>
-
-	     This style is used to refer to all the methods of the
-	     specified enterprise bean's home, component, and/or web
-	     service endpoint interfaces.
-
-	  2.
-	  <method>
-	      <ejb-name>EJBNAME</ejb-name>
-	      <method-name>METHOD</method-name>
-	  </method>
-
-	     This style is used to refer to the specified method of
-	     the specified enterprise bean. If there are multiple
-	     methods with the same overloaded name, the element of
-	     this style refers to all the methods with the overloaded
-	     name.
-
-	  3.
-	  <method>
-	      <ejb-name>EJBNAME</ejb-name>
-	      <method-name>METHOD</method-name>
-	      <method-params>
-		  <method-param>PARAM-1</method-param>
-		  <method-param>PARAM-2</method-param>
-		  ...
-		  <method-param>PARAM-n</method-param>
-	      </method-params>
-	  </method>
-
-	     This style is used to refer to a single method within a
-	     set of methods with an overloaded name. PARAM-1 through
-	     PARAM-n are the fully-qualified Java types of the
-	     method's input parameters (if the method has no input
-	     arguments, the method-params element contains no
-	     method-param elements). Arrays are specified by the
-	     array element's type, followed by one or more pair of
-	     square brackets (e.g. int[][]). If there are multiple
-	     methods with the same overloaded name, this style refers
-	     to all of the overloaded methods.
-
-	  Examples:
-
-	  Style 1: The following method element refers to all the
-	  methods of the EmployeeService bean's home, component,
-	  and/or web service endpoint interfaces:
-
-	  <method>
-	      <ejb-name>EmployeeService</ejb-name>
-	      <method-name>*</method-name>
-	  </method>
-
-	  Style 2: The following method element refers to all the
-	  create methods of the EmployeeService bean's home
-	  interface(s).
-
-	  <method>
-	      <ejb-name>EmployeeService</ejb-name>
-	      <method-name>create</method-name>
-	  </method>
-
-	  Style 3: The following method element refers to the
-	  create(String firstName, String LastName) method of the
-	  EmployeeService bean's home interface(s).
-
-	  <method>
-	      <ejb-name>EmployeeService</ejb-name>
-	      <method-name>create</method-name>
-	      <method-params>
-		  <method-param>java.lang.String</method-param>
-		  <method-param>java.lang.String</method-param>
-	      </method-params>
-	  </method>
-
-	  The following example illustrates a Style 3 element with
-	  more complex parameter types. The method
-	  foobar(char s, int i, int[] iar, mypackage.MyClass mycl,
-	  mypackage.MyClass[][] myclaar) would be specified as:
-
-	  <method>
-	      <ejb-name>EmployeeService</ejb-name>
-	      <method-name>foobar</method-name>
-	      <method-params>
-		  <method-param>char</method-param>
-		  <method-param>int</method-param>
-		  <method-param>int[]</method-param>
-		  <method-param>mypackage.MyClass</method-param>
-		  <method-param>mypackage.MyClass[][]</method-param>
-	      </method-params>
-	  </method>
-
-	  The optional method-intf element can be used when it becomes
-	  necessary to differentiate between a method that is multiply
-	  defined across the enterprise bean's home, component, and/or
-	  web service endpoint interfaces with the same name and
-	  signature.
-
-	  For example, the method element
-
-	  <method>
-	      <ejb-name>EmployeeService</ejb-name>
-	      <method-intf>Remote</method-intf>
-	      <method-name>create</method-name>
-	      <method-params>
-		  <method-param>java.lang.String</method-param>
-		  <method-param>java.lang.String</method-param>
-	      </method-params>
-	  </method>
-
-	  can be used to differentiate the create(String, String)
-	  method defined in the remote interface from the
-	  create(String, String) method defined in the remote home
-	  interface, which would be defined as
-
-	  <method>
-	      <ejb-name>EmployeeService</ejb-name>
-	      <method-intf>Home</method-intf>
-	      <method-name>create</method-name>
-	      <method-params>
-		  <method-param>java.lang.String</method-param>
-		  <method-param>java.lang.String</method-param>
-	      </method-params>
-	  </method>
-
-	  and the create method that is defined in the local home
-	  interface which would be defined as
-
-	  <method>
-	      <ejb-name>EmployeeService</ejb-name>
-	      <method-intf>LocalHome</method-intf>
-	      <method-name>create</method-name>
-	      <method-params>
-		  <method-param>java.lang.String</method-param>
-		  <method-param>java.lang.String</method-param>
-	      </method-params>
-	  </method>
-
-	  The method-intf element can be used with all th ree Styles
-	  of the method element usage. For example, the following
-	  method element example could be used to refer to all the
-	  methods of the EmployeeService bean's remote home interface.
-
-	  <method>
-	      <ejb-name>EmployeeService</ejb-name>
-	      <method-intf>Home</method-intf>
-	      <method-name>*</method-name>
-	  </method>
-
-	  ]]>
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="description"
-		   type="j2ee:descriptionType"
-		   minOccurs="0" maxOccurs="unbounded"/>
-      <xsd:element name="ejb-name"
-		   type="j2ee:ejb-nameType"/>
-      <xsd:element name="method-intf"
-		   type="j2ee:method-intfType"
-		   minOccurs="0">
-      </xsd:element>
-      <xsd:element name="method-name"
-		   type="j2ee:method-nameType"/>
-      <xsd:element name="method-params"
-		   type="j2ee:method-paramsType"
-		   minOccurs="0"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="multiplicityType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The multiplicityType describes the multiplicity of the
-	role that participates in a relation.
-
-	The value must be one of the two following:
-
-	    One
-	    Many
-
-      </xsd:documentation>
-    </xsd:annotation>
-    <xsd:simpleContent>
-      <xsd:restriction base="j2ee:string">
-	<xsd:enumeration value="One"/>
-	<xsd:enumeration value="Many"/>
-      </xsd:restriction>
-    </xsd:simpleContent>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="persistence-typeType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The persistence-typeType specifies an entity bean's persistence
-	management type.
-
-	The persistence-type element must be one of the two following:
-
-	    Bean
-	    Container
-
-      </xsd:documentation>
-    </xsd:annotation>
-    <xsd:simpleContent>
-      <xsd:restriction base="j2ee:string">
-	<xsd:enumeration value="Bean"/>
-	<xsd:enumeration value="Container"/>
-      </xsd:restriction>
-    </xsd:simpleContent>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="query-methodType">
-    <xsd:annotation>
-      <xsd:documentation>
-	<![CDATA[
-
-	  The query-method specifies the method for a finder or select
-	  query.
-
-	  The method-name element specifies the name of a finder or select
-	  method in the entity bean's implementation class.
-
-	  Each method-param must be defined for a query-method using the
-	  method-params element.
-
-	  It is used by the query-method element.
-
-	  Example:
-
-	  <query>
-	      <description>Method finds large orders</description>
-	      <query-method>
-		  <method-name>findLargeOrders</method-name>
-		  <method-params></method-params>
-	      </query-method>
-	      <ejb-ql>
-		SELECT OBJECT(o) FROM Order o
-		  WHERE o.amount &gt; 1000
-	      </ejb-ql>
-	  </query>
-
-	  ]]>
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="method-name"
-		   type="j2ee:method-nameType"/>
-      <xsd:element name="method-params"
-		   type="j2ee:method-paramsType"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="queryType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The queryType defines a finder or select
-	query. It contains
-	    - an optional description of the query
-	    - the specification of the finder or select
-	      method it is used by
-		- an optional specification of the result type
-		  mapping, if the query is for a select method
-		  and entity objects are returned.
-		- the EJB QL query string that defines the query.
-
-	Queries that are expressible in EJB QL must use the ejb-ql
-	element to specify the query. If a query is not expressible
-	in EJB QL, the description element should be used to
-	describe the semantics of the query and the ejb-ql element
-	should be empty.
-
-	The result-type-mapping is an optional element. It can only
-	be present if the query-method specifies a select method
-	that returns entity objects.  The default value for the
-	result-type-mapping element is "Local".
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="description"
-		   type="j2ee:descriptionType" minOccurs="0"/>
-      <xsd:element name="query-method"
-		   type="j2ee:query-methodType"/>
-      <xsd:element name="result-type-mapping"
-		   type="j2ee:result-type-mappingType"
-		   minOccurs="0"/>
-      <xsd:element name="ejb-ql"
-		   type="j2ee:xsdStringType"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="relationship-role-sourceType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The relationship-role-sourceType designates the source of a
-	role that participates in a relationship. A
-	relationship-role-sourceType is used by
-	relationship-role-source elements to uniquely identify an
-	entity bean.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="description"
-		   type="j2ee:descriptionType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="ejb-name"
-		   type="j2ee:ejb-nameType"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="relationshipsType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The relationshipsType describes the relationships in
-	which entity beans with container-managed persistence
-	participate. The relationshipsType contains an optional
-	description; and a list of ejb-relation elements, which
-	specify the container managed relationships.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="description"
-		   type="j2ee:descriptionType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="ejb-relation"
-		   type="j2ee:ejb-relationType"
-		   maxOccurs="unbounded">
-
-	<xsd:unique name="role-name-uniqueness">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The ejb-relationship-role-name contains the name of a
-	      relationship role. The name must be unique within
-	      a relationship, but can be reused in different
-	      relationships.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	  <xsd:selector
-	       xpath=".//j2ee:ejb-relationship-role-name"/>
-	  <xsd:field
-	       xpath="."/>
-	</xsd:unique>
-      </xsd:element>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="result-type-mappingType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The result-type-mappingType is used in the query element to
-	specify whether an abstract schema type returned by a query
-	for a select method is to be mapped to an EJBLocalObject or
-	EJBObject type.
-
-	The value must be one of the following:
-
-	    Local
-	    Remote
-
-      </xsd:documentation>
-    </xsd:annotation>
-    <xsd:simpleContent>
-      <xsd:restriction base="j2ee:string">
-	<xsd:enumeration value="Local"/>
-	<xsd:enumeration value="Remote"/>
-      </xsd:restriction>
-    </xsd:simpleContent>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="security-identityType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The security-identityType specifies whether the caller's
-	security identity is to be used for the execution of the
-	methods of the enterprise bean or whether a specific run-as
-	identity is to be used. It contains an optional description
-	and a specification of the security identity to be used.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:element name="description"
-		   type="j2ee:descriptionType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:choice>
-	<xsd:element name="use-caller-identity"
-		     type="j2ee:emptyType">
-	  <xsd:annotation>
-	    <xsd:documentation>
-
-	      The use-caller-identity element specifies that
-	      the caller's security identity be used as the
-	      security identity for the execution of the
-	      enterprise bean's methods.
-
-	    </xsd:documentation>
-	  </xsd:annotation>
-	</xsd:element>
-	<xsd:element name="run-as"
-		     type="j2ee:run-asType"/>
-      </xsd:choice>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="session-beanType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The session-beanType declares an session bean. The
-	declaration consists of:
-
-	    - an optional description
-	    - an optional display name
-	    - an optional icon element that contains a small and a large
-	      icon file name
-	    - a name assigned to the enterprise bean
-	      in the deployment description
-	    - the names of the session bean's remote home and
-	      remote interfaces, if any
-	    - the names of the session bean's local home and
-	      local interfaces, if any
-	    - the name of the session bean's web service endpoint
-	      interface, if any
-	    - the session bean's implementation class
-	    - the session bean's state management type
-	    - the session bean's transaction management type
-	    - an optional declaration of the bean's
-	      environment entries
-	    - an optional declaration of the bean's EJB references
-	    - an optional declaration of the bean's local
-	      EJB references
-	    - an optional declaration of the bean's web
-	      service references
-	    - an optional declaration of the security role
-	      references
-	    - an optional declaration of the security identity
-	      to be used for the execution of the bean's methods
-	    - an optional declaration of the bean's resource
-	      manager connection factory references
-	    - an optional declaration of the bean's resource
-	      environment references.
-	    - an optional declaration of the bean's message
-	      destination references
-
-	The elements that are optional are "optional" in the sense
-	that they are omitted when if lists represented by them are
-	empty.
-
-	Either both the local-home and the local elements or both
-	the home and the remote elements must be specified for the
-	session bean.
-
-	The service-endpoint element may only be specified if the
-	bean is a stateless session bean.
-
-      </xsd:documentation>
-    </xsd:annotation>
-
-    <xsd:sequence>
-      <xsd:group ref="j2ee:descriptionGroup"/>
-      <xsd:element name="ejb-name"
-		   type="j2ee:ejb-nameType"/>
-      <xsd:element name="home"
-		   type="j2ee:homeType"
-		   minOccurs="0"/>
-      <xsd:element name="remote"
-		   type="j2ee:remoteType"
-		   minOccurs="0"/>
-      <xsd:element name="local-home"
-		   type="j2ee:local-homeType"
-		   minOccurs="0"/>
-      <xsd:element name="local"
-		   type="j2ee:localType"
-		   minOccurs="0"/>
-      <xsd:element name="service-endpoint"
-		   type="j2ee:fully-qualified-classType"
-		   minOccurs="0">
-	<xsd:annotation>
-	  <xsd:documentation>
-
-	    The service-endpoint element contains the
-	    fully-qualified name of the enterprise bean's web
-	    service endpoint interface. The service-endpoint
-	    element may only be specified for a stateless
-	    session bean. The specified interface must be a
-	    valid JAX-RPC service endpoint interface.
-
-	  </xsd:documentation>
-	</xsd:annotation>
-      </xsd:element>
-      <xsd:element name="ejb-class"
-		   type="j2ee:ejb-classType"/>
-      <xsd:element name="session-type"
-		   type="j2ee:session-typeType"/>
-      <xsd:element name="transaction-type"
-		   type="j2ee:transaction-typeType"/>
-      <xsd:group ref="j2ee:jndiEnvironmentRefsGroup"/>
-      <xsd:element name="security-role-ref"
-		   type="j2ee:security-role-refType"
-		   minOccurs="0"
-		   maxOccurs="unbounded"/>
-      <xsd:element name="security-identity"
-		   type="j2ee:security-identityType"
-		   minOccurs="0"/>
-    </xsd:sequence>
-    <xsd:attribute name="id" type="xsd:ID"/>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="session-typeType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The session-typeType describes whether the session bean is a
-	stateful session or stateless session. It is used by
-	session-type elements.
-
-	The value must be one of the two following:
-
-	    Stateful
-	    Stateless
-
-      </xsd:documentation>
-    </xsd:annotation>
-    <xsd:simpleContent>
-      <xsd:restriction base="j2ee:string">
-	<xsd:enumeration value="Stateful"/>
-	<xsd:enumeration value="Stateless"/>
-      </xsd:restriction>
-    </xsd:simpleContent>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="trans-attributeType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The trans-attributeType specifies how the container must
-	manage the transaction boundaries when delegating a method
-	invocation to an enterprise bean's business method.
-
-	The value must be one of the following:
-
-	    NotSupported
-	    Supports
-	    Required
-	    RequiresNew
-	    Mandatory
-	    Never
-
-      </xsd:documentation>
-    </xsd:annotation>
-    <xsd:simpleContent>
-      <xsd:restriction base="j2ee:string">
-	<xsd:enumeration value="NotSupported"/>
-	<xsd:enumeration value="Supports"/>
-	<xsd:enumeration value="Required"/>
-	<xsd:enumeration value="RequiresNew"/>
-	<xsd:enumeration value="Mandatory"/>
-	<xsd:enumeration value="Never"/>
-      </xsd:restriction>
-    </xsd:simpleContent>
-  </xsd:complexType>
-
-<!-- **************************************************** -->
-
-  <xsd:complexType name="transaction-typeType">
-    <xsd:annotation>
-      <xsd:documentation>
-
-	The transaction-typeType specifies an enterprise bean's
-	transaction management type.
-
-	The transaction-type must be one of the two following:
-
-	    Bean
-	    Container
-
-      </xsd:documentation>
-    </xsd:annotation>
-    <xsd:simpleContent>
-      <xsd:restriction base="j2ee:string">
-	<xsd:enumeration value="Bean"/>
-	<xsd:enumeration value="Container"/>
-      </xsd:restriction>
-    </xsd:simpleContent>
-  </xsd:complexType>
-
-</xsd:schema>
-