You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by de...@apache.org on 2010/08/29 20:06:32 UTC

svn commit: r990612 [4/8] - in /geronimo/devtools/eclipse-plugin/trunk/plugins: org.apache.geronimo.jee.v22.jaxbmodel/ org.apache.geronimo.st.core/src/main/java/org/apache/geronimo/st/core/ org.apache.geronimo.st.core/src/main/java/org/apache/geronimo/...

Added: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.schemas/v30/geronimo-naming-1.2.xsd
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.schemas/v30/geronimo-naming-1.2.xsd?rev=990612&view=auto
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.schemas/v30/geronimo-naming-1.2.xsd (added)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.schemas/v30/geronimo-naming-1.2.xsd Sun Aug 29 18:06:29 2010
@@ -0,0 +1,1071 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+    
+        http://www.apache.org/licenses/LICENSE-2.0
+    
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+<xsd:schema targetNamespace="http://geronimo.apache.org/xml/ns/naming-1.2"
+    xmlns:gernaming="http://geronimo.apache.org/xml/ns/naming-1.2"
+    xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.2"
+    xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
+    attributeFormDefault="unqualified" version="1.0">
+
+    <xsd:annotation>
+        <xsd:documentation>
+            This is a partial XML Schema Definition for common naming elements
+            for resolving EJB, Web, services, or resource references. This
+            schema will never be used directly but its elements are used in
+            geronimo-application-client-2.0.xsd, geronimo-connector-1.2.xsd,
+            geronimo-web-2.0.1.xsd, geronimo-tomcat-2.0.1.xsd, and
+            geronimo-jetty-2.0.2.xsd. All the schema's or plans using elements of
+            this schema must specify the top level element with one of the
+            namespace specified as
+            "http://geronimo.apache.org/xml/ns/naming-1.2". The default
+            location for this document is
+            http://geronimo.apache.org/xml/ns/naming-1.2
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:import namespace="http://geronimo.apache.org/xml/ns/deployment-1.2"
+        schemaLocation="geronimo-module-1.2.xsd">
+        <xsd:annotation>
+            <xsd:documentation>
+                Import Geronimo Services deployment plans, the imported plan
+                includes complex types like moduleType, environmentType,
+                dependenciesType, etc. required by this plan schema.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:import>
+
+    <xsd:element name="ejb-ref" type="gernaming:ejb-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element ejb-ref is used to map EJB references to EJB's in
+                other applications using remote home and remote interface. The
+                application which contains the EJB being referenced should
+                either be in same EAR or should be included in dependency list
+                of this application. Also note as the EJB's referenced are in a
+                different JVM all the Client interfaces should also be included
+                in current application.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="ejb-local-ref" type="gernaming:ejb-local-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element ejb-local-ref is used to map EJB references to EJB's
+                in other applications using local home and local interface. The
+                application which contains the EJB being referenced should
+                either be in same EAR or should be included in dependency list
+                of this application. Also note as the EJB's referenced are in a
+                different JVM all the Client interfaces should also be included
+                in current application.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="service-ref" type="gernaming:service-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element service-ref is used to map service references to
+                service's in other applications. The application which contains
+                the EJB being referenced should either be in same EAR or should
+                be included in dependency list of this application.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="resource-ref" type="gernaming:resource-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element resource-ref is used to map resource references to
+                resources's like JDBC resources, JMS resources, etc. configured
+                outside the current application.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="resource-env-ref"
+        type="gernaming:resource-env-refType">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element resource-env-ref is used to map resource references
+                to administrative objects deployed as a part of connectors.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:element name="message-destination"
+        type="gernaming:message-destinationType">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element message-destination is used to configure a JMS queue
+                or topic which act like a destination for the messages
+                delivered.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:group name="jndiEnvironmentRefsGroup">
+        <xsd:annotation>
+            <xsd:documentation>
+                This group keeps the usage of the contained JNDI environment
+                reference elements consistent across J2EE deployment
+                descriptors.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element ref="gernaming:abstract-naming-entry" minOccurs="0"
+                maxOccurs="unbounded" />
+            <xsd:element name="ejb-ref" type="gernaming:ejb-refType"
+                minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element ejb-ref is used to map EJB references to
+                        EJB's in other applications using remote home and remote
+                        interface. The application which contains the EJB being
+                        referenced should either be in same EAR or should be
+                        included in dependency list of this application. Also
+                        note as the EJB's referenced are in a different JVM all
+                        the Client interfaces should also be included in current
+                        application.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="ejb-local-ref" type="gernaming:ejb-local-refType"
+                minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element ejb-local-ref is used to map EJB references
+                        to EJB's in other applications using local home and
+                        local interface. The application which contains the EJB
+                        being referenced should either be in same EAR or should
+                        be included in dependency list of this application. Also
+                        note as the EJB's referenced are in a different JVM all
+                        the Client interfaces should also be included in current
+                        application.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="service-ref" type="gernaming:service-refType"
+                minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element service-ref is used to map service
+                        references to service's in other applications. The
+                        application which contains the EJB being referenced
+                        should either be in same EAR or should be included in
+                        dependency list of this application.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="resource-ref" type="gernaming:resource-refType"
+                minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element resource-ref is used to map resource
+                        references to resources's like JDBC resources, JMS
+                        resources, etc. configured outside the current
+                        application.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="resource-env-ref"
+                type="gernaming:resource-env-refType" minOccurs="0"
+                maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element resource-env-ref is used to map resource
+                        references to administrative objects deployed as a part
+                        of connectors.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+    </xsd:group>
+
+    <xsd:element name="abstract-naming-entry" abstract="true"
+        type="gernaming:abstract-naming-entryType">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element abstract-naming-entry is an abstract element used as
+                a generic element for all the references.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:complexType name="abstract-naming-entryType" abstract="true">
+        <xsd:sequence></xsd:sequence>
+    </xsd:complexType>
+
+    <!--ejb-link acts like ejb-link in spec descriptors-->
+    <!--resource-link contains the name of the outbound-connectionfactory-instance -->
+    <!--message-destination-link acts like message-destination-link in spec descriptors-->
+    <!--url in resource-ref contains the url for URL typed resource refs-->
+    <!--Possibly the external-uri element should be revived to connect to other naming systems-->
+    <!--when server to server communication exists we will need an element in ejb-ref to specify the geronimo server
+        we wish to talk to.  It might be possible to use the objectName server element for this depending on what we decide it means-->
+    <!--otherwise you can supply the entire object name using the gbean-nameGroup-->
+
+    <xsd:complexType name="ejb-refType">
+        <xsd:sequence>
+            <xsd:element name="ref-name" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element ref-name is used to identify this remote ejb
+                        reference. This name should be unique in a module and
+                        will be used by application as a part of JNDI name for
+                        the referenced ejb. The JNDI name used will be
+                        "java:/comp/env/ref-name. It should map to the
+                        "ejb-ref-name" provided in deployment descriptor.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:choice>
+                <xsd:element name="pattern" type="gernaming:patternType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element pattern is used to provide additional
+                            selection criterion for remote ejbs if multiple ejbs
+                            with same ejb-link exists in EAR or dependency
+                            modules. The pattern mapped should result in single
+                            remote EJB.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:group ref="gernaming:corbaNameGroup">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            Reference to corbaNameGroup defined later in this
+                            schema. This group defines the EJB using CORBA as
+                            communication protocol.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:group>
+                <xsd:element name="ejb-link" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element ejb-link is used to identify the remote
+                            ejb specified in same EAR or dependency modules.
+                            This name should match the ejb-name defined in EJB
+                            deployment descriptor. If the name is not unique the
+                            pattern element will be used to uniquely identify
+                            this remote ejb.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="ejb-local-refType">
+        <xsd:sequence>
+            <xsd:element name="ref-name" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element ref-name is used to identify this local ejb
+                        reference. This name should be unique in a module and
+                        will be used by application to as a part of JNDI name
+                        for the referenced ejb. The JNDI name used will be
+                        "java:/comp/env/ref-name. It should map to the
+                        "ejb-ref-name" provided in deployment descriptor.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:choice>
+                <xsd:element name="pattern" type="gernaming:patternType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element pattern is used to provide additional
+                            selection criterion for local ejb's if multiple
+                            local ejb's with same ejb-link exists in EAR or
+                            dependency modules. The pattern mapped should result
+                            in single local EJB.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:element name="ejb-link" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element ejb-link is used to identify the local
+                            ejb specified in same EAR or dependency modules.
+                            This name should match the ejb-name defined in EJB
+                            deployment descriptor. If the name is not unique the
+                            pattern element will be used to uniquely identify
+                            this local ejb.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="resource-refType">
+        <xsd:sequence>
+            <xsd:element name="ref-name" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element ref-name is used to identify this resource
+                        reference. This name should be unique in a module and
+                        will be used by application to as a part of JNDI name
+                        for the referenced resource. The JNDI name used will be
+                        "java:/comp/env/ref-name. It should map to the
+                        "resource-ref-name" provided in deployment descriptor.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:choice>
+                <xsd:element name="pattern" type="gernaming:patternType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element pattern is used to provide additional
+                            selection criterion for resources if multiple
+                            resources with same resource-link or URI exists
+                            dependency modules. The pattern mapped should result
+                            in single resource.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:element name="resource-link" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element resource-link is used to identify the
+                            JDBC, JMS, or JavaMail resource specified in all the
+                            dependency modules. This name should match the
+                            connectiondefination-instance/name defined in
+                            resource adapter deployment descriptor. If the name
+                            is not unique the pattern element will be used to
+                            uniquely identify this resource.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:element name="url" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element url is used to identify the resources of
+                            type java.net.URL deployed in all the dependency
+                            modules. If the url doesn't map to unique resource
+                            the pattern element will be used to uniquely
+                            identify this resource.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:element name="gbean-ref" type="gernaming:gbean-refType"
+        substitutionGroup="gernaming:abstract-naming-entry">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element gbean-ref is used to map gbean references to gbeans
+                configured outside the current module.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:complexType name="gbean-refType">
+        <xsd:complexContent>
+            <xsd:extension base="gernaming:abstract-naming-entryType">
+                <xsd:sequence>
+                    <xsd:element name="ref-name" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                The element ref-name is used to identify this
+                                gbean reference. This name should be unique in a
+                                module and will be used by application to as a
+                                part of JNDI name for the referenced gbean. The
+                                JNDI name used will be "java:/comp/env/ref-name.
+                                It should map to the "ref-name" provided in
+                                deployment descriptor.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="ref-type" type="xsd:string" minOccurs="0"
+                        maxOccurs="unbounded">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                The element ref-type is used to specify the
+                                interface implemented by GBean being referenced.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:choice minOccurs="0" maxOccurs="unbounded">
+                        <xsd:element name="pattern"
+                            type="gernaming:patternType">
+                            <xsd:annotation>
+                                <xsd:documentation>
+                                    The element pattern is used to provide
+                                    additional selection criterion for gbeans if
+                                    multiple gbeans with same name exists in
+                                    dependency modules. The pattern mapped
+                                    should result in single gbean.
+                                </xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                    </xsd:choice>
+                </xsd:sequence>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:element name="persistence-unit-ref"
+        type="gernaming:persistence-unit-refType"
+        substitutionGroup="gernaming:abstract-naming-entry">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element persistence-unit-ref is used to map persistence unit
+                references to persistence units configured outside the current
+                module.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:complexType name="persistence-unit-refType">
+        <xsd:complexContent>
+            <xsd:extension base="gernaming:abstract-naming-entryType">
+                <xsd:sequence>
+                    <xsd:element name="persistence-unit-ref-name"
+                        type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                The element persistence-unit-ref-name is used to
+                                identify this persistence unit reference. This
+                                name should be unique in a module and will be
+                                used by application as a part of JNDI name for
+                                the referenced persistence unit. The JNDI name
+                                used will be "java:/comp/env/ref-name. It should
+                                map to the "ref-name" provided in deployment
+                                descriptor.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:choice>
+                        <xsd:element name="persistence-unit-name"
+                            type="xsd:string">
+                            <xsd:annotation>
+                                <xsd:documentation>
+                                    The element persistence-unit-name is used to
+                                    identify persistence unit specified in any
+                                    of the dependency modules. This name should
+                                    match the persistence-unit-name defined in
+                                    deployment descriptor. If the name is not
+                                    unique the pattern element will be used to
+                                    uniquely identify this persistence unit.
+                                </xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="pattern"
+                            type="gernaming:patternType">
+                            <xsd:annotation>
+                                <xsd:documentation>
+                                    The element pattern is used to provide
+                                    additional selection criterion for
+                                    persistence units if multiple persistence
+                                    units with same persistence-unit-name exists
+                                    in dependency modules. The pattern mapped
+                                    should result in single persistence unit.
+                                </xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                    </xsd:choice>
+                </xsd:sequence>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:element name="persistence-context-ref"
+        type="gernaming:persistence-context-refType"
+        substitutionGroup="gernaming:abstract-naming-entry">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element entity-manager-factory-ref is used to map
+                persistence context references to persistence contexts
+                configured outside the current module.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:complexType name="persistence-context-refType">
+        <xsd:complexContent>
+            <xsd:extension base="gernaming:abstract-naming-entryType">
+                <xsd:sequence>
+                    <xsd:element name="persistence-context-ref-name"
+                        type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                The element ref-name is used to identify this
+                                persistence context reference. This name should
+                                be unique in a module and will be used by
+                                application as a part of JNDI name for the
+                                referenced persistence context. The JNDI name
+                                used will be "java:/comp/env/ref-name. It should
+                                map to the "ref-name" provided in deployment
+                                descriptor.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:choice>
+                        <xsd:element name="persistence-unit-name"
+                            type="xsd:string">
+                            <xsd:annotation>
+                                <xsd:documentation>
+                                    The element persistence-unit-name is used to
+                                    identify persistence context specified in
+                                    any of the dependency modules. This name
+                                    should match the persistence-unit-name
+                                    defined in deployment descriptor. If the
+                                    name is not unique the pattern element will
+                                    be used to uniquely identify this
+                                    persistence unit.
+                                </xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="pattern"
+                            type="gernaming:patternType">
+                            <xsd:annotation>
+                                <xsd:documentation>
+                                    The element pattern is used to provide
+                                    additional selection criterion for
+                                    persistence context's if multiple
+                                    persistence context's with same
+                                    persistence-unit-name exists in dependency
+                                    modules. The pattern mapped should result in
+                                    single persistence context.
+                                </xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                    </xsd:choice>
+                    <xsd:element name="persistence-context-type"
+                        type="gernaming:persistence-context-typeType"
+                        minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                The element persistence-context-type is used to
+                                provide transaction features if persistence
+                                context reference. It can have value of
+                                transaction-scoped or extended.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="property" type="gernaming:propertyType"
+                        minOccurs="0" maxOccurs="unbounded">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                The element property is used to provide vendor
+                                specific properties for persistence context
+                                reference.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                </xsd:sequence>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:simpleType name="persistence-context-typeType">
+        <xsd:restriction base="xsd:string">
+            <xsd:enumeration value="Transactional" />
+            <xsd:enumeration value="Extended" />
+        </xsd:restriction>
+    </xsd:simpleType>
+
+    <xsd:complexType name="propertyType">
+        <xsd:sequence>
+            <xsd:element name="key" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element key provides the key identifying this
+                        property.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="value" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element value provides the value for this property.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <!-- used by openejb cmp datasource specification -->
+    <xsd:element name="cmp-connection-factory"
+        type="gernaming:resource-locatorType">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element cmp-connection-factory defines the connection pool
+                which will be used by CMP entity beans to connect to datasource.
+                This element will be used by openejb specifications.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <!-- used by openejb mdb resource adapter specification -->
+    <xsd:element name="resource-adapter"
+        type="gernaming:resource-locatorType">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element resource-adapter defines the JMS destination which
+                will be used by MDB to connect to destination. This element will
+                be used by openejb specifications.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:complexType name="resource-locatorType">
+        <xsd:sequence>
+            <xsd:choice>
+                <xsd:element name="pattern" type="gernaming:patternType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element pattern is used to provide additional
+                            selection criterion for resources if multiple
+                            resources with same resource-name exists in
+                            dependency modules. The pattern mapped should result
+                            in single resource.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:element name="resource-link" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element resource-link is used to identify the
+                            JDBC, JMS, or JavaMail resource specified in all the
+                            dependency modules. This name should match the
+                            connectiondefination-instance/name defined in
+                            resource adapter deployment descriptor. If the name
+                            is not unique the pattern element will be used to
+                            uniquely identify this resource.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:element name="url" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element url is used to identify the resources of
+                            type java.net.URL deployed in all the dependency
+                            modules. If the url doesn't map to unique resource
+                            the pattern element will be used to uniquely
+                            identify this resource.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="resource-env-refType">
+        <xsd:sequence>
+            <xsd:element name="ref-name" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element ref-name is used to identify this resource
+                        reference. This name should be unique in a module and
+                        will be used by application as a part of JNDI name for
+                        the referenced resource. The JNDI name used will be
+                        "java:/comp/env/ref-name. It should map to the
+                        "res-ref-name" provided in deployment descriptor.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:choice>
+                <xsd:element name="pattern" type="gernaming:patternType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element pattern is used to provide additional
+                            selection criterion for admin object's if multiple
+                            admin object's with same admin-object-link exists in
+                            dependency modules. The pattern mapped should result
+                            in single admin object.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:element name="message-destination-link"
+                    type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            This element is deprecated and should not be used.
+                            Use admin-object-link instead. That is effectively a
+                            renamed version of this.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:sequence>
+                    <xsd:element name="admin-object-module" type="xsd:string"
+                        minOccurs="0" />
+                    <xsd:element name="admin-object-link" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                The element admin-object-link is used to
+                                identify the admin object resource specified in
+                                any of the dependency modules. This name should
+                                match the message-definition-name defined in
+                                admin object section of deployment descriptor.
+                                If the name is not unique the pattern element
+                                will be used to uniquely identify this admin
+                                object resource.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                </xsd:sequence>
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="message-destinationType">
+        <xsd:sequence>
+            <xsd:element name="message-destination-name" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element message-destination-name is used to identify
+                        this message destination reference. This name should be
+                        unique in a module and will be used by application to as
+                        a part of JNDI name for the message destination. The
+                        JNDI name used will be "java:/comp/env/ref-name. It
+                        should map to the "message-destination-name" provided in
+                        deployment descriptor.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:choice>
+                <xsd:element name="pattern" type="gernaming:patternType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element pattern is used to provide additional
+                            selection criterion for JMS destination's if
+                            multiple destination's with same admin-object-link
+                            exists in dependency modules. The pattern mapped
+                            should result in single destination.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:sequence>
+                    <xsd:element name="admin-object-module" type="xsd:string"
+                        minOccurs="0" />
+                    <xsd:element name="admin-object-link" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                The element admin-object-link is used to
+                                identify the admin object resource specified in
+                                any of the dependency modules. This name should
+                                match the message-definition-name defined in
+                                admin object section of deployment descriptor.
+                                If the name is not unique the pattern element
+                                will be used to uniquely identify this admin
+                                object resource.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                </xsd:sequence>
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <!-- used by resource adapter -->
+    <xsd:element name="workmanager" type="gernaming:gbean-locatorType">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element workmanager defines the work manager implementation
+                used by resource adapter. This element will be used by resource
+                adapter plan.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <!-- used by web apps/builders -->
+    <xsd:element name="web-container" type="gernaming:gbean-locatorType">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element web-container defines the binding between web
+                application and web container instance. It specifies which
+                container application should be deployed to.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:complexType name="gbean-locatorType">
+        <xsd:sequence>
+            <xsd:choice>
+                <xsd:element name="pattern" type="gernaming:patternType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element pattern is used to provide additional
+                            selection criterion for gbean's if multiple gbean's
+                            with same name exists in dependency modules. The
+                            pattern mapped should result in single gbean.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:element name="gbean-link" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element gbean-link is used to identify the gbean
+                            deployed in any of the dependency modules. This name
+                            should match the gbean-name defined in deployment
+                            plane. If the name is not unique the pattern element
+                            will be used to uniquely identify this gbean.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="patternType">
+        <xsd:sequence>
+            <xsd:element name="groupId" type="xsd:string" minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The name for group containing module to match. By
+                        default is it considered wild card '*'.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="artifactId" type="xsd:string" minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The name for module in a specified group to be matched.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="version" type="xsd:string" minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The version number for the module formatted by dot
+                        separated numbers. If no version is provided it will be
+                        defaulted latest available version matching other
+                        criterions.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="module" type="xsd:string" minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The value specified here should match the file name of
+                        the module referenced.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="name" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The name element to identify the referenced GBean by
+                        name.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:group name="serverGroup">
+        <xsd:annotation>
+            <xsd:documentation>
+                This group contains the protocol, address, and port for a server
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="protocol" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The protocol element is used to specify the network
+                        protocol used for connection. This could be http or
+                        https.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="host" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The host element is used to specify the network host to
+                        connect.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="port" type="xsd:int">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The port element is used to specify the network port to
+                        connect.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+    </xsd:group>
+
+    <xsd:complexType name="portType">
+        <xsd:sequence>
+            <xsd:element name="port-name" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The port-name element provides the name to identify the
+                        port to connect.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:group ref="gernaming:serverGroup" minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        Reference to serverGroup defined later in this schema.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:group>
+            <xsd:element name="uri" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The uri element provides the path to particular resource
+                        once connection is established.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="credentials-name" type="xsd:string"
+                minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The credentials-name element provides the credentials
+                        name to identify the credentials used for secure
+                        connections.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="service-refType">
+        <xsd:sequence>
+            <xsd:element name="service-ref-name" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element service-ref-name is used to identify this
+                        service reference. This name should be unique in a
+                        module and will be used by application to as a part of
+                        JNDI name for the web service. The JNDI name used will
+                        be "java:/comp/env/ref-name. It should map to the
+                        "service-ref-name" provided in service-ref of deployment
+                        descriptor.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:choice>
+                <xsd:element name="service-completion"
+                    type="gernaming:service-completionType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element service-completion is used to provide
+                            missing information for web service. If this element
+                            doesn't exist all the information should be
+                            available in WSDL.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:element name="port" type="gernaming:portType"
+                    maxOccurs="unbounded">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element port defines the ports available though
+                            service reference. If this element doesn't exist the
+                            port information should be available in WSDL.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="service-completionType">
+        <xsd:sequence>
+            <xsd:element name="service-name" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element service-name provides the name of the
+                        service missing in service block of WSDL.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="port-completion"
+                type="gernaming:port-completionType" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element port-completion provides the port
+                        information missing in WSDL.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="port-completionType">
+        <xsd:sequence>
+            <xsd:element name="port" type="gernaming:portType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element port provides the port used for web services
+                        connection.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="binding-name" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The element binding-name is used to provide the name for
+                        binding for a port and URL.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:group name="corbaNameGroup">
+        <xsd:annotation>
+            <xsd:documentation>
+                This group contains the location of the CORBA name server, the
+                name, and the client security server used to make interop calls.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="ns-corbaloc" type="xsd:anyURI">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The corbaloc used to access the CORBA name server.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="name" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The name of the object in the name server.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:choice>
+                <xsd:element name="css" type="gernaming:patternType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The element css provides the gbean name to identify
+                            the client security service used.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:element name="css-link" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The css-link identify the client security service by
+                            its name.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:group>
+
+</xsd:schema>

Added: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.schemas/v30/geronimo-openejb-2.0.xsd
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.schemas/v30/geronimo-openejb-2.0.xsd?rev=990612&view=auto
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.schemas/v30/geronimo-openejb-2.0.xsd (added)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.schemas/v30/geronimo-openejb-2.0.xsd Sun Aug 29 18:06:29 2010
@@ -0,0 +1,126 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/**
+  * Licensed to the Apache Software Foundation (ASF) under one or more
+  * contributor license agreements.  See the NOTICE file distributed with
+  * this work for additional information regarding copyright ownership.
+  * The ASF licenses this file to You under the Apache License, Version 2.0
+  * (the "License"); you may not use this file except in compliance with
+  * the License.  You may obtain a copy of the License at
+  *
+  *     http://www.apache.org/licenses/LICENSE-2.0
+  *
+  * Unless required by applicable law or agreed to in writing, software
+  * distributed under the License is distributed on an "AS IS" BASIS,
+  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  * See the License for the specific language governing permissions and
+  * limitations under the License.
+  */
+-->
+
+<xs:schema
+    xmlns:openejb="http://geronimo.apache.org/xml/ns/j2ee/ejb/openejb-2.0"
+    targetNamespace="http://geronimo.apache.org/xml/ns/j2ee/ejb/openejb-2.0"
+    xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.2"
+    xmlns:app="http://geronimo.apache.org/xml/ns/j2ee/application-2.0"
+    xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.2"
+    xmlns:ee="http://java.sun.com/xml/ns/persistence"
+    xmlns:xs="http://www.w3.org/2001/XMLSchema"
+    elementFormDefault="qualified"
+    attributeFormDefault="unqualified"
+    version="1.0">
+
+    <xs:import namespace="http://geronimo.apache.org/xml/ns/naming-1.2" schemaLocation="geronimo-naming-1.2.xsd"/>
+    <xs:import namespace="http://geronimo.apache.org/xml/ns/j2ee/application-2.0" schemaLocation="geronimo-application-2.0.xsd"/>
+    <xs:import namespace="http://geronimo.apache.org/xml/ns/deployment-1.2" schemaLocation="geronimo-module-1.2.xsd"/>
+    <xs:import namespace="http://java.sun.com/xml/ns/persistence" schemaLocation="http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"/>
+
+    <xs:element name="ejb-jar" type="openejb:geronimo-ejb-jarType"/>
+
+    <xs:complexType name="emptyType"/>
+
+    <xs:complexType name="geronimo-ejb-jarType">
+        <xs:sequence>
+            <xs:element ref="sys:environment" minOccurs="0"/>
+
+            <xs:element ref="app:clustering" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        Reference to abstract clustering element defined in
+                        imported "geronimo-application-2.0.xsd"
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+
+            <xs:element name="openejb-jar" type="openejb:openejb-jarType" minOccurs="0"/>
+
+            <!-- Naming -->
+            <xs:group ref="naming:jndiEnvironmentRefsGroup" minOccurs="0" maxOccurs="unbounded"/>
+            <xs:element ref="naming:message-destination" minOccurs="0" maxOccurs="unbounded"/>
+
+            <xs:element name="tss-link" type="openejb:tss-linkType" minOccurs="0" maxOccurs="unbounded"/>
+
+            <xs:element name="web-service-binding" type="openejb:web-service-bindingType" minOccurs="0" maxOccurs="unbounded"/>
+
+            <!-- Security -->
+            <xs:element ref="app:security" minOccurs="0"/>
+
+            <!-- GBeans -->
+            <xs:choice minOccurs="0" maxOccurs="unbounded">
+                <xs:element ref="sys:service"/>
+                <xs:element ref="ee:persistence"/>
+            </xs:choice>
+        </xs:sequence>
+    </xs:complexType>
+
+    <!-- TODO there is no need for the extra wrapper other then xmlbean is overly enforcing the unique particle attribution rule -->
+    <xs:complexType name="openejb-jarType">
+        <xs:sequence>
+            <xs:any namespace="##other" processContents="lax"/>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="tss-linkType">
+        <xs:sequence>
+            <xs:element name="ejb-name" type="xs:string" minOccurs="0"/>
+            <xs:element name="tss-name" type="xs:string" minOccurs="0"/>
+            <xs:element name="jndi-name" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="web-service-bindingType">
+        <xs:sequence>
+            <xs:element name="ejb-name" type="xs:string"/>
+            <xs:element name="web-service-address" type="xs:string" minOccurs="0"/>
+            <xs:element name="web-service-virtual-host" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+            <xs:element name="web-service-security" type="openejb:web-service-securityType" minOccurs="0"/>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="web-service-securityType">
+        <xs:sequence>
+            <xs:element name="security-realm-name" type="xs:string"/>
+            <xs:element name="realm-name" type="xs:string" minOccurs="0"/>
+            <xs:element name="transport-guarantee" type="openejb:transport-guaranteeType"/>
+            <xs:element name="auth-method" type="openejb:auth-methodType"/>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:simpleType name="transport-guaranteeType">
+        <xs:restriction base="xs:string">
+            <xs:enumeration value="NONE"/>
+            <xs:enumeration value="INTEGRAL"/>
+            <xs:enumeration value="CONFIDENTIAL"/>
+        </xs:restriction>
+    </xs:simpleType>
+
+    <xs:simpleType name="auth-methodType">
+        <xs:restriction base="xs:string">
+            <xs:enumeration value="BASIC"/>
+            <xs:enumeration value="DIGEST"/>
+            <xs:enumeration value="CLIENT-CERT"/>
+            <xs:enumeration value="NONE"/>
+        </xs:restriction>
+    </xs:simpleType>
+
+</xs:schema>

Added: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.schemas/v30/geronimo-security-1.2.xsd
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.schemas/v30/geronimo-security-1.2.xsd?rev=990612&view=auto
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.schemas/v30/geronimo-security-1.2.xsd (added)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.schemas/v30/geronimo-security-1.2.xsd Sun Aug 29 18:06:29 2010
@@ -0,0 +1,451 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+    
+        http://www.apache.org/licenses/LICENSE-2.0
+    
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+<!-- $Rev: 673951 $ $Date: 2008-07-04 16:10:56 +0800 (Fri, 04 Jul 2008) $ -->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+    xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
+    xmlns:geronimo="http://geronimo.apache.org/xml/ns/security-1.2"
+    targetNamespace="http://geronimo.apache.org/xml/ns/security-1.2"
+    xmlns:app="http://geronimo.apache.org/xml/ns/j2ee/application-2.0"
+    elementFormDefault="qualified" attributeFormDefault="unqualified"
+    version="1.0">
+
+    <xsd:annotation>
+        <xsd:documentation>
+            This is a partial XML Schema Definition for common security
+            elements. This schema will never be used directly but its elements
+            are used in geronimo-application-client-2.0.xsd,
+            geronimo-connector-1.2.xsd, geronimo-web-2.0.1.xsd,
+            geronimo-tomcat-2.0.1.xsd, and geronimo-jetty-2.0.2.xsd. All the schemas
+            or plans using elements of this schema must specify the top level
+            element with one of the namespace specified as
+            "http://geronimo.apache.org/xml/ns/j2ee/security-1.2". The default
+            location for this document is
+            http://geronimo.apache.org/schemas-1.2/geronimo-security-1.2.xsd.
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace"
+        schemaLocation="http://www.w3.org/2001/xml.xsd" />
+    <xsd:import
+        namespace="http://geronimo.apache.org/xml/ns/j2ee/application-2.0"
+        schemaLocation="geronimo-application-2.0.xsd">
+        <xsd:annotation>
+            <xsd:documentation>
+                Import Geronimo enterprise application deployment plans. The
+                imported plan includes complex types abstract-securityType
+                required by this plan schema.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:import>
+
+    <xsd:element name="security" type="geronimo:securityType"
+        substitutionGroup="app:security">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element security is used to map security roles setting for
+                applications. If this element is present, all the web and EJB
+                modules must make the appropriate access checks as outlined by
+                the JACC specifications. Essentially, it configures the
+                security-realms to be used by applications.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="default-principal"
+        type="geronimo:default-principalType">
+        <xsd:annotation>
+            <xsd:documentation>
+                The element default-principal provides the principal to be used
+                during unauthorized access.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:complexType name="securityType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Security entries
+
+                If this element is present, all web and EJB modules MUST make
+                the appropriate access checks as outlined in the JACC spec.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:complexContent>
+            <xsd:extension base="app:abstract-securityType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        Extension of abstract-securityType element defined in
+                        geronimo-application-2.0.xsd.
+                    </xsd:documentation>
+                </xsd:annotation>
+
+                <xsd:sequence>
+                    <xsd:element name="description"
+                        type="geronimo:descriptionType" minOccurs="0"
+                        maxOccurs="unbounded">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                Language specific description of security
+                                element.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="default-principal"
+                        type="geronimo:default-principalType">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                The element default-principal provides the
+                                principal to be used during unauthorized access.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="role-mappings"
+                        type="geronimo:role-mappingsType" minOccurs="0">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                The element role-mappings provides the mapping
+                                information for roles defined in deployment
+                                descriptors and security realms available.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                </xsd:sequence>
+                <xsd:attribute name="doas-current-caller" type="xsd:boolean"
+                    default="false">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            Set doas-current-caller attribute to "true" if the
+                            work is to be performed as the calling Subject
+                            instead of as application server. The default value
+                            for doas-current-caller is false.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="use-context-handler" type="xsd:boolean"
+                    default="false">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            Set this attribute to "true" if the installed JACC
+                            policy contexts will use PolicyContextHandlers.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="default-role" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            Used by the the Deployer to assign method
+                            permissions for all of the unspecified methods,
+                            either by assigning them to security roles, or by
+                            marking them as unchecked. If the value of
+                            default-role is empty, then the unspecified methods
+                            are marked unchecked
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="descriptionType">
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute ref="xml:lang">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The reference to XML schema's lang attribute. This
+                            is used to define the language for this descriptor.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="default-principalType">
+        <xsd:sequence>
+            <xsd:element name="description" type="geronimo:descriptionType"
+                minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        Language specific description for default principle.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:choice>
+                <xsd:element name="principal" type="geronimo:principalType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The principal element defines the to be used for
+                            default principal, mapped using simple mapping
+                            principal.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:element name="login-domain-principal"
+                    type="geronimo:loginDomainPrincipalType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The login-domain-principal element defines the to be
+                            used for default principal, mapped using login
+                            domain specific mapping.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:element name="realm-principal"
+                    type="geronimo:realmPrincipalType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The realm-principal element defines the to be used
+                            for default principal, mapped using login domain and
+                            realm specific mapping.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+            </xsd:choice>
+            <xsd:element name="named-username-password-credential"
+                type="geronimo:named-username-password-credentialType"
+                minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The named-username-password-credential element defines
+                        named credential to be used on per-user authentication
+                        bases.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="named-username-password-credentialType">
+        <xsd:sequence>
+            <xsd:element name="name" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The name for this credential.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="username" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The username for this credential.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="password" type="xsd:string">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The password for this credential.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="role-mappingsType">
+        <xsd:sequence>
+            <xsd:element name="role" type="geronimo:roleType" minOccurs="1"
+                maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The set of principals used to map the roles defined in
+                        deployment descriptors.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="roleType">
+        <xsd:sequence>
+            <xsd:element name="description" type="geronimo:descriptionType"
+                minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The language specific description of the role.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="realm-principal"
+                type="geronimo:realmPrincipalType" minOccurs="0"
+                maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The realm-principal element defines the to be used for
+                        default principal, mapped using login domain and realm
+                        specific mapping.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="login-domain-principal"
+                type="geronimo:loginDomainPrincipalType" minOccurs="0"
+                maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The login-domain-principal element defines the to be
+                        used for default principal, mapped using login domain
+                        specific mapping.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="principal" type="geronimo:principalType"
+                minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The principal element defines the to be used for default
+                        principal, mapped using simple mapping principal.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+            <xsd:element name="distinguished-name"
+                type="geronimo:distinguishedNameType" minOccurs="0"
+                maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The distinguished-name element defines the client
+                        certification authentication.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="role-name" type="xsd:string" use="required">
+            <xsd:annotation>
+                <xsd:documentation>
+                    The role-name element defines the name for this role.
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+    </xsd:complexType>
+
+    <xsd:complexType name="realmPrincipalType">
+        <xsd:complexContent>
+            <xsd:extension base="geronimo:loginDomainPrincipalType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        Extends loginDomainPrincipalType defined later in this
+                        schema.
+                    </xsd:documentation>
+                </xsd:annotation>
+                <xsd:attribute name="realm-name" type="xsd:string"
+                    use="required">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The realm-name attribute maps to the Geronimo
+                            security realm.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="loginDomainPrincipalType">
+        <xsd:complexContent>
+            <xsd:extension base="geronimo:principalType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        Extends principalType defined later in this schema.
+                    </xsd:documentation>
+                </xsd:annotation>
+                <xsd:attribute name="domain-name" type="xsd:string"
+                    use="required">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The domain-name attribute maps to the
+                            login-domain-name set for the JAAS login module.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="principalType">
+        <xsd:sequence>
+            <xsd:element name="description" type="geronimo:descriptionType"
+                minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        The language specific description for this principal.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="class" type="xsd:string" use="required">
+            <xsd:annotation>
+                <xsd:documentation>
+                    The class attribute provides the fully qualified class name
+                    of the principal class. The default Geronimo principal
+                    classes are
+                    org.apache.geronimo.security.realm.providers.GeronimoUserPrincipal
+                    and
+                    org.apache.geronimo.security.realm.providers.GeronimoGroupPrincipal
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+        <xsd:attribute name="name" type="xsd:string" use="required">
+            <xsd:annotation>
+                <xsd:documentation>
+                    The name attribute provides the unique name for this
+                    principal.
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+        <xsd:attribute name="designated-run-as" type="xsd:boolean"
+            default="false">
+            <xsd:annotation>
+                <xsd:documentation>
+                    Set this attribute to "true" if this principal is to be used
+                    as the run-as principal for this role.
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+    </xsd:complexType>
+
+    <xsd:complexType name="distinguishedNameType">
+        <xsd:sequence>
+            <xsd:element name="description" type="geronimo:descriptionType"
+                minOccurs="0" maxOccurs="unbounded">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        Language specific description of distinguished name
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
+        </xsd:sequence>
+        <xsd:attribute name="name" type="xsd:string" use="required">
+            <xsd:annotation>
+                <xsd:documentation>
+                    The name of the distinguished name provided in client
+                    certificate.
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+        <xsd:attribute name="designated-run-as" type="xsd:boolean"
+            default="false">
+            <xsd:annotation>
+                <xsd:documentation>
+                    Set this attribute to "true" if this principal is to be used
+                    as the run-as principal for this role.
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+    </xsd:complexType>
+
+</xsd:schema>