You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by hc...@apache.org on 2007/09/25 23:05:48 UTC

svn commit: r579381 [1/4] - in /geronimo/site/trunk/docs/xml/ns: ./ j2ee/

Author: hcunico
Date: Tue Sep 25 14:05:46 2007
New Revision: 579381

URL: http://svn.apache.org/viewvc?rev=579381&view=rev
Log:
reorganizing xml schemas

Added:
    geronimo/site/trunk/docs/xml/ns/attributes-1.1.xsd
    geronimo/site/trunk/docs/xml/ns/attributes-1.2.xsd
    geronimo/site/trunk/docs/xml/ns/geronimo-login-config-1.0.xsd
    geronimo/site/trunk/docs/xml/ns/geronimo-login-config-1.1.xsd
    geronimo/site/trunk/docs/xml/ns/geronimo-login-config-2.0.xsd
    geronimo/site/trunk/docs/xml/ns/geronimo-module-1.1.xsd
    geronimo/site/trunk/docs/xml/ns/geronimo-module-1.2.xsd
    geronimo/site/trunk/docs/xml/ns/geronimo-naming-1.0.xsd
    geronimo/site/trunk/docs/xml/ns/geronimo-naming-1.1.xsd
    geronimo/site/trunk/docs/xml/ns/geronimo-naming-1.2.xsd
    geronimo/site/trunk/docs/xml/ns/geronimo-security-1.1.xsd
    geronimo/site/trunk/docs/xml/ns/geronimo-security-2.0.xsd
    geronimo/site/trunk/docs/xml/ns/plugins-1.1.xsd
    geronimo/site/trunk/docs/xml/ns/plugins-1.2.xsd
Removed:
    geronimo/site/trunk/docs/xml/ns/j2ee/attributes-1.1.xsd
    geronimo/site/trunk/docs/xml/ns/j2ee/attributes-1.2.xsd
    geronimo/site/trunk/docs/xml/ns/j2ee/geronimo-login-config-1.0.xsd
    geronimo/site/trunk/docs/xml/ns/j2ee/geronimo-login-config-1.1.xsd
    geronimo/site/trunk/docs/xml/ns/j2ee/geronimo-login-config-2.0.xsd
    geronimo/site/trunk/docs/xml/ns/j2ee/geronimo-module-1.1.xsd
    geronimo/site/trunk/docs/xml/ns/j2ee/geronimo-module-1.2.xsd
    geronimo/site/trunk/docs/xml/ns/j2ee/geronimo-naming-1.0.xsd
    geronimo/site/trunk/docs/xml/ns/j2ee/geronimo-naming-1.1.xsd
    geronimo/site/trunk/docs/xml/ns/j2ee/geronimo-naming-1.2.xsd
    geronimo/site/trunk/docs/xml/ns/j2ee/geronimo-security-1.1.xsd
    geronimo/site/trunk/docs/xml/ns/j2ee/geronimo-security-2.0.xsd
    geronimo/site/trunk/docs/xml/ns/j2ee/plugins-1.1.xsd
    geronimo/site/trunk/docs/xml/ns/j2ee/plugins-1.2.xsd

Added: geronimo/site/trunk/docs/xml/ns/attributes-1.1.xsd
URL: http://svn.apache.org/viewvc/geronimo/site/trunk/docs/xml/ns/attributes-1.1.xsd?rev=579381&view=auto
==============================================================================
--- geronimo/site/trunk/docs/xml/ns/attributes-1.1.xsd (added)
+++ geronimo/site/trunk/docs/xml/ns/attributes-1.1.xsd Tue Sep 25 14:05:46 2007
@@ -0,0 +1,251 @@
+<?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: 573603 $ $Date: 2007-09-07 11:03:13 -0400 (Fri, 07 Sep 2007) $ -->
+
+<xsd:schema targetNamespace="http://geronimo.apache.org/xml/ns/attributes-1.1"
+    xmlns:atts="http://geronimo.apache.org/xml/ns/attributes-1.1"
+    xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
+    attributeFormDefault="unqualified">
+
+    <xsd:annotation>
+        <xsd:documentation>
+            This is an XML Schema Definition for storing manageable attribute
+            values. 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/j2ee/attributes-1.1". The default
+            location for this document is
+            http://geronimo.apache.org/schemas-1.1/attributes-1.1.xsd. The
+            definition of the XML format for storing manageable attribute
+            values. Should look like this:
+            <![CDATA[
+            <attributes>
+                <module name="mygroup/mycomponent/1.1/jar">
+                    <gbean name="MyNetworkService">
+                        <attribute name="host">0.0.0.0</attribute>
+                        <attribute name="port">1234</attribute>
+                    </gbean>
+                </module>
+            </attributes>
+            ]]>
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <!-- Main element for the manageable attribute store configuration -->
+    <xsd:element name="attributes" type="atts:attributesType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Provides the definition of named attributes. Attributes are
+                mixed type and can include simple text and elements.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="gbean" type="atts:gbeanType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Element used by the plugin system to list individual GBeans.
+                Note that the name attribute for a gbean element may hold either
+                the full GBeanName, or only the value for the "name=" portion of
+                the GBeanName. If there are multiple GBeans in the module with
+                manageable attributes and the same "name=" portion of the
+                GBeanName, then all must be listed and all must be listed with a
+                full GBeanName.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:complexType name="attributesType">
+        <xsd:choice>
+            <xsd:element name="module" type="atts:moduleType" minOccurs="0"
+                maxOccurs="unbounded" />
+
+            <!-- The config.xml file in 1.0 use configuration instead of module -->
+            <xsd:element name="configuration" type="atts:moduleType"
+                minOccurs="0" maxOccurs="unbounded" />
+        </xsd:choice>
+    </xsd:complexType>
+
+    <xsd:complexType name="moduleType">
+        <xsd:sequence>
+            <xsd:element name="gbean" type="atts:gbeanType" minOccurs="0"
+                maxOccurs="unbounded" />
+        </xsd:sequence>
+        <xsd:attribute name="name" type="xsd:string" use="required" />
+        <xsd:attribute name="load" type="xsd:boolean" use="optional"
+            default="true" />
+        <xsd:attribute name="condition" type="xsd:string" use="optional" />
+    </xsd:complexType>
+
+    <xsd:complexType name="gbeanType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Element used by the plugin system to list individual GBeans.
+                Note that the name attribute for a gbean element may hold either
+                the full GBeanName, or only the value for the "name=" portion of
+                the GBeanName. If there are multiple GBeans in the module with
+                manageable attributes and the same "name=" portion of the
+                GBeanName, then all must be listed and all must be listed with a
+                full GBeanName.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:choice minOccurs="0" maxOccurs="unbounded">
+            <xsd:element name="attribute" type="atts:attributeType" />
+            <xsd:element name="reference" type="atts:referenceType" />
+        </xsd:choice>
+        <xsd:attribute name="name" type="xsd:string" use="required">
+            <xsd:annotation>
+                <xsd:documentation>
+                    The name attribute specifies the name portion of the
+                    GBeanName.
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+        <xsd:attribute name="gbeanInfo" type="xsd:string" use="optional">
+            <xsd:annotation>
+                <xsd:documentation>
+                    The gbeanInfo attribute provide the gbean infomation for
+                    specified GBean.
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+        <xsd:attribute name="load" type="xsd:boolean" use="optional"
+            default="true">
+            <xsd:annotation>
+                <xsd:documentation>
+                    The load attribute specifies if the gbean is to be loaded or
+                    not.
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+    </xsd:complexType>
+
+    <xsd:complexType name="attributeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Provides the definition of a single named attribute. Attributes
+                are mixed type and can include simple text and elements.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:complexContent mixed="true">
+            <xsd:restriction base="xsd:anyType">
+                <xsd:sequence>
+                    <xsd:any minOccurs="0" maxOccurs="unbounded"
+                        processContents="lax" />
+                </xsd:sequence>
+                <xsd:attribute name="name" use="required">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The name attribute provides the name of single
+                            attribute.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="null" use="optional">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The null attribute defines if this atribute is null
+                            or not.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="value" use="optional">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The value attribute is the value of specified
+                            attribute.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+            </xsd:restriction>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="referenceType">
+        <xsd:sequence>
+            <xsd:element name="pattern" minOccurs="0" maxOccurs="unbounded">
+                <xsd:complexType>
+                    <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 set to 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. All the artifactId's should be
+                                    unique within a group. If no articfactId is
+                                    provided it will be defaulted to file name
+                                    of the module file.
+                                </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 to latest
+                                    available version matching other criterions.
+                                </xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="type" type="xsd:string"
+                            minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>
+                                    This element defines the type of the module.
+                                    The type could be 'CAR', 'JAR', EAR', 'WAR'
+                                    etc. If no type is provided it will be
+                                    defaulted appropriately by the deployer
+                                    depending upon type of deployed module.
+                                </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:element>
+        </xsd:sequence>
+        <xsd:attribute name="name" type="xsd:string" />
+    </xsd:complexType>
+
+</xsd:schema>

Added: geronimo/site/trunk/docs/xml/ns/attributes-1.2.xsd
URL: http://svn.apache.org/viewvc/geronimo/site/trunk/docs/xml/ns/attributes-1.2.xsd?rev=579381&view=auto
==============================================================================
--- geronimo/site/trunk/docs/xml/ns/attributes-1.2.xsd (added)
+++ geronimo/site/trunk/docs/xml/ns/attributes-1.2.xsd Tue Sep 25 14:05:46 2007
@@ -0,0 +1,263 @@
+<?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: 511458 $ $Date: 2007-02-25 00:29:15 -0600 (Sun, 25 Feb 2007) $ -->
+
+<xsd:schema targetNamespace="http://geronimo.apache.org/xml/ns/attributes-1.2"
+    xmlns:atts="http://geronimo.apache.org/xml/ns/attributes-1.2"
+    xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
+    attributeFormDefault="unqualified">
+
+    <xsd:annotation>
+        <xsd:documentation>
+            This is an XML Schema Definition for storing manageable attribute
+            values. 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/j2ee/attributes-1.2". The default
+            location for this document is:
+            http://geronimo.apache.org/schemas-1.1/attributes-1.2.xsd.
+            The definition of the XML format for storing manageable attribute
+            values. Should look like this:
+            <![CDATA[
+            <attributes>
+                <comment>Comment for the whole attribute</comment>
+                <module name="mygroup/mycomponent/1.1/jar">
+                    <comment>Comment specific to the module</comment>
+                    <gbean name="MyNetworkService">
+                        <comment>Comment for the gbean</comment>
+                        <attribute name="host">0.0.0.0</attribute>
+                        <attribute name="port">1234</attribute>
+                    </gbean>
+                </module>
+            </attributes>
+            ]]>
+        </xsd:documentation>
+    </xsd:annotation>
+
+    <!-- Main element for the manageable attribute store configuration -->
+    <xsd:element name="attributes" type="atts:attributesType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Provides the definition of named attributes. Attributes are
+                mixed type and can include simple text and elements.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+    <xsd:element name="gbean" type="atts:gbeanType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Element used by the plugin system to list individual GBeans.
+                Note that the name attribute for a gbean element may hold either
+                the full GBeanName, or only the value for the "name=" portion of
+                the GBeanName. If there are multiple GBeans in the module with
+                manageable attributes and the same "name=" portion of the
+                GBeanName, then all must be listed and all must be listed with a
+                full GBeanName.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:complexType name="attributesType">
+        <xsd:sequence>
+            <xsd:element name="comment" type="xsd:string" minOccurs="0"
+                maxOccurs="1" />
+            <xsd:choice>
+                <xsd:element name="module" type="atts:moduleType" minOccurs="0"
+                    maxOccurs="unbounded" />
+
+                <!-- The config.xml file in 1.0 use configuration instead of module -->
+                <xsd:element name="configuration" type="atts:moduleType"
+                   minOccurs="0" maxOccurs="unbounded" />
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="moduleType">
+        <xsd:sequence>
+            <xsd:element name="comment" type="xsd:string" minOccurs="0"
+                maxOccurs="1" />
+            <xsd:element name="gbean" type="atts:gbeanType" minOccurs="0"
+                maxOccurs="unbounded" />
+        </xsd:sequence>
+        <xsd:attribute name="name" type="xsd:string" use="required" />
+        <xsd:attribute name="load" type="xsd:boolean" use="optional"
+            default="true" />
+        <xsd:attribute name="condition" type="xsd:string" use="optional" />
+    </xsd:complexType>
+
+    <xsd:complexType name="gbeanType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Element used by the plugin system to list individual GBeans.
+                Note that the name attribute for a gbean element may hold either
+                the full GBeanName, or only the value for the "name=" portion of
+                the GBeanName. If there are multiple GBeans in the module with
+                manageable attributes and the same "name=" portion of the
+                GBeanName, then all must be listed and all must be listed with a
+                full GBeanName.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:element name="comment" type="xsd:string" minOccurs="0"
+                maxOccurs="1" />
+            <xsd:choice minOccurs="0" maxOccurs="unbounded">
+                <xsd:element name="attribute" type="atts:attributeType" />
+                <xsd:element name="reference" type="atts:referenceType" />
+            </xsd:choice>
+        </xsd:sequence>
+        <xsd:attribute name="name" type="xsd:string" use="required">
+            <xsd:annotation>
+                <xsd:documentation>
+                    The name attribute specifies the name portion of the
+                    GBeanName.
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+        <xsd:attribute name="gbeanInfo" type="xsd:string" use="optional">
+            <xsd:annotation>
+                <xsd:documentation>
+                    The gbeanInfo attribute provide the gbean infomation for
+                    specified GBean.
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+        <xsd:attribute name="load" type="xsd:boolean" use="optional"
+            default="true">
+            <xsd:annotation>
+                <xsd:documentation>
+                    The load attribute specifies if the gbean is to be loaded or
+                    not.
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+    </xsd:complexType>
+
+    <xsd:complexType name="attributeType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Provides the definition of a single named attribute. Attributes
+                are mixed type and can include simple text and elements.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:complexContent mixed="true">
+            <xsd:restriction base="xsd:anyType">
+                <xsd:sequence>
+                    <xsd:any minOccurs="0" maxOccurs="unbounded"
+                        processContents="lax" />
+                </xsd:sequence>
+                <xsd:attribute name="name" use="required">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The name attribute provides the name of single
+                            attribute.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="null" use="optional">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The null attribute defines if this atribute is null
+                            or not.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="value" use="optional">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The value attribute is the value of specified
+                            attribute.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+            </xsd:restriction>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="referenceType">
+        <xsd:sequence>
+            <xsd:element name="pattern" minOccurs="0" maxOccurs="unbounded">
+                <xsd:complexType>
+                    <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 set to 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. All the artifactId's should be
+                                    unique within a group. If no articfactId is
+                                    provided it will be defaulted to file name
+                                    of the module file.
+                                </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 to latest
+                                    available version matching other criterions.
+                                </xsd:documentation>
+                            </xsd:annotation>
+                        </xsd:element>
+                        <xsd:element name="type" type="xsd:string"
+                            minOccurs="0">
+                            <xsd:annotation>
+                                <xsd:documentation>
+                                    This element defines the type of the module.
+                                    The type could be 'CAR', 'JAR', EAR', 'WAR'
+                                    etc. If no type is provided it will be
+                                    defaulted appropriately by the deployer
+                                    depending upon type of deployed module.
+                                </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:element>
+        </xsd:sequence>
+        <xsd:attribute name="name" type="xsd:string" />
+    </xsd:complexType>
+</xsd:schema>

Added: geronimo/site/trunk/docs/xml/ns/geronimo-login-config-1.0.xsd
URL: http://svn.apache.org/viewvc/geronimo/site/trunk/docs/xml/ns/geronimo-login-config-1.0.xsd?rev=579381&view=auto
==============================================================================
--- geronimo/site/trunk/docs/xml/ns/geronimo-login-config-1.0.xsd (added)
+++ geronimo/site/trunk/docs/xml/ns/geronimo-login-config-1.0.xsd Tue Sep 25 14:05:46 2007
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Copyright 2005 The Apache Software Foundation
+
+    Licensed 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: 379628 $ $Date: 2006-02-21 18:44:02 -0500 (Tue, 21 Feb 2006) $ -->
+
+<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/loginconfig-1.0"
+    targetNamespace="http://geronimo.apache.org/xml/ns/loginconfig-1.0"
+    elementFormDefault="qualified"
+    attributeFormDefault="unqualified"
+    version="1.0">
+
+    <xsd:element name="login-config" type="geronimo:login-configType"/>
+
+    <xsd:complexType name="login-configType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Defines the list of login modules for a login configuration represented by a GenericSecurityRealm
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:choice minOccurs="0" maxOccurs="unbounded">
+                <xsd:element name="login-module-ref" type="geronimo:login-module-refType" minOccurs="0" maxOccurs="unbounded"/>
+                <xsd:element name="login-module" type="geronimo:login-moduleType" minOccurs="0" maxOccurs="unbounded"/>
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="abstract-login-moduleType" abstract="true">
+        <xsd:attribute name="control-flag" type="geronimo:control-flagType" use="required"/>
+        <xsd:attribute name="wrap-principals" type="xsd:boolean"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="login-module-refType">
+        <xsd:complexContent>
+            <xsd:extension base="geronimo:abstract-login-moduleType">
+                <xsd:sequence>
+                    <xsd:element name="domain" type="xsd:string" minOccurs="0"/>
+                    <xsd:element name="server" type="xsd:string" minOccurs="0"/>
+                    <xsd:element name="application" type="xsd:string" minOccurs="0"/>
+                    <!--<xsd:element name="moduleType" type="xsd:string" minOccurs="0"/>-->
+                    <xsd:element name="module" type="xsd:string" minOccurs="0"/>
+                    <xsd:element name="type" type="xsd:string" minOccurs="0"/>
+                    <xsd:element name="name" type="xsd:string"/>
+                </xsd:sequence>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:simpleType name="control-flagType">
+        <xsd:restriction base="xsd:string">
+            <xsd:enumeration value="REQUIRED"/>
+            <xsd:enumeration value="REQUISITE"/>
+            <xsd:enumeration value="SUFFICIENT"/>
+            <xsd:enumeration value="OPTIONAL"/>
+        </xsd:restriction>
+    </xsd:simpleType>
+
+    <xsd:complexType name="login-moduleType">
+        <xsd:complexContent>
+            <xsd:extension base="geronimo:abstract-login-moduleType">
+                <xsd:sequence>
+                    <xsd:element name="login-domain-name" type="xsd:string"/>
+                    <xsd:element name="login-module-class" type="xsd:string"/>
+                    <xsd:element name="option" type="geronimo:optionType" minOccurs="0" maxOccurs="unbounded"/>
+                </xsd:sequence>
+                <xsd:attribute name="server-side" type="xsd:boolean" use="required"/>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="optionType">
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute name="name" type="xsd:string" use="required"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+
+</xsd:schema>

Added: geronimo/site/trunk/docs/xml/ns/geronimo-login-config-1.1.xsd
URL: http://svn.apache.org/viewvc/geronimo/site/trunk/docs/xml/ns/geronimo-login-config-1.1.xsd?rev=579381&view=auto
==============================================================================
--- geronimo/site/trunk/docs/xml/ns/geronimo-login-config-1.1.xsd (added)
+++ geronimo/site/trunk/docs/xml/ns/geronimo-login-config-1.1.xsd Tue Sep 25 14:05:46 2007
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Copyright 2005 The Apache Software Foundation
+
+    Licensed 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: 499890 $ $Date: 2007-01-25 13:43:20 -0500 (Thu, 25 Jan 2007) $ -->
+
+<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/loginconfig-1.1"
+    targetNamespace="http://geronimo.apache.org/xml/ns/loginconfig-1.1"
+    xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.1"
+    elementFormDefault="qualified"
+    attributeFormDefault="unqualified"
+    version="1.0">
+
+    <xsd:import namespace="http://geronimo.apache.org/xml/ns/deployment-1.1" schemaLocation="geronimo-module-1.1.xsd"/>
+
+    <xsd:element name="login-config" type="geronimo:login-configType"/>
+
+    <xsd:complexType name="login-configType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Defines the list of login modules for a login configuration represented by a GenericSecurityRealm
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:choice minOccurs="0" maxOccurs="unbounded">
+                <xsd:element name="login-module-ref" type="geronimo:login-module-refType" minOccurs="0" maxOccurs="unbounded"/>
+                <xsd:element name="login-module" type="geronimo:login-moduleType" minOccurs="0" maxOccurs="unbounded"/>
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="abstract-login-moduleType" abstract="true">
+        <xsd:attribute name="control-flag" type="geronimo:control-flagType" use="required"/>
+        <xsd:attribute name="wrap-principals" type="xsd:boolean"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="login-module-refType">
+        <xsd:complexContent>
+            <xsd:extension base="geronimo:abstract-login-moduleType">
+                <xsd:sequence>
+                    <xsd:element name="pattern" type="sys:patternType"/>
+                </xsd:sequence>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:simpleType name="control-flagType">
+        <xsd:restriction base="xsd:string">
+            <xsd:enumeration value="REQUIRED"/>
+            <xsd:enumeration value="REQUISITE"/>
+            <xsd:enumeration value="SUFFICIENT"/>
+            <xsd:enumeration value="OPTIONAL"/>
+        </xsd:restriction>
+    </xsd:simpleType>
+
+    <xsd:complexType name="login-moduleType">
+        <xsd:complexContent>
+            <xsd:extension base="geronimo:abstract-login-moduleType">
+                <xsd:sequence>
+                    <xsd:element name="login-domain-name" type="xsd:string"/>
+                    <xsd:element name="login-module-class" type="xsd:string"/>
+                    <xsd:element name="option" type="geronimo:optionType" minOccurs="0" maxOccurs="unbounded"/>
+                </xsd:sequence>
+                <xsd:attribute name="server-side" type="xsd:boolean" use="required"/>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="optionType">
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute name="name" type="xsd:string" use="required"/>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+
+</xsd:schema>

Added: geronimo/site/trunk/docs/xml/ns/geronimo-login-config-2.0.xsd
URL: http://svn.apache.org/viewvc/geronimo/site/trunk/docs/xml/ns/geronimo-login-config-2.0.xsd?rev=579381&view=auto
==============================================================================
--- geronimo/site/trunk/docs/xml/ns/geronimo-login-config-2.0.xsd (added)
+++ geronimo/site/trunk/docs/xml/ns/geronimo-login-config-2.0.xsd Tue Sep 25 14:05:46 2007
@@ -0,0 +1,263 @@
+<?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: 573465 $ $Date: 2007-09-07 01:41:34 -0400 (Fri, 07 Sep 2007) $ -->
+
+<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/loginconfig-2.0"
+    targetNamespace="http://geronimo.apache.org/xml/ns/loginconfig-2.0"
+    xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.2"
+    elementFormDefault="qualified" attributeFormDefault="unqualified"
+    version="2.0">
+
+    <xsd:annotation>
+        <xsd:documentation>
+            This is an XML Schema Definition for login module configuration to
+            use for particular security module. Login module configuration is
+            specified by the level element as login-config with namespace
+            specified as xmlns =
+            "http://geronimo.apache.org/xml/ns/loginconfig-2.0". The default
+            location for this document is somewhere vaguely related to
+            http://geronimo.apache.org/schemas-1.2/geronimo-login-config-2.0.xsd
+            The definition of the XML format for storing login-config should
+            look like this:
+            <![CDATA[
+            <login-config xmlns="http://geronimo.apache.org/xml/ns/loginconfig-2.0">
+                <login-module control-flag="REQUIRED">
+                    <login-domain-name>
+                        some-name
+                    </login-domain-name>
+                    <login-module-class>
+                        org.apache.geronimo.LoginModuleClass
+                    </login-module-class>
+                    <option name="usersURI">
+                        usersinfo
+                    </option>
+                </login-module>
+            </login-config>
+            ]]>
+        </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="login-config" type="geronimo:login-configType">
+        <xsd:annotation>
+            <xsd:documentation>
+                The root element for Geronimo login module configuration. This
+                configuration can either refer to existing login module or
+                define a new login configuration. Note that the sub-elements of
+                this element should be as in the given order in sequence.
+            </xsd:documentation>
+        </xsd:annotation>
+    </xsd:element>
+
+    <xsd:complexType name="login-configType">
+        <xsd:annotation>
+            <xsd:documentation>
+                Defines the list of login modules for a login configuration
+                represented by a GenericSecurityRealm
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:sequence>
+            <xsd:choice minOccurs="0" maxOccurs="unbounded">
+                <xsd:element name="login-module-ref"
+                    type="geronimo:login-module-refType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The login-module-ref element defines a reference to
+                            existing login module configured in some other
+                            GBean.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+                <xsd:element name="login-module"
+                    type="geronimo:login-moduleType">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The login-module element defines a new login module
+                            configuration. It should provide the complete
+                            information to GBean module being referred.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:element>
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <xsd:complexType name="abstract-login-moduleType" abstract="true">
+        <xsd:attribute name="control-flag" type="geronimo:control-flagType"
+            use="required">
+            <xsd:annotation>
+                <xsd:documentation>
+                    The control-flag attribute specifies the JAAS control flag
+                    used for this a login module configuration. It can be
+                    REQUIRED, REQUISITE, SUFFICIENT, or OPTIONAL as defined by
+                    JAAS API's.
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+        <xsd:attribute name="wrap-principals" type="xsd:boolean">
+            <xsd:annotation>
+                <xsd:documentation>
+                    This boolean attribute specifies if the principals are
+                    wrapped in this login module.
+                </xsd:documentation>
+            </xsd:annotation>
+        </xsd:attribute>
+    </xsd:complexType>
+
+    <xsd:complexType name="login-module-refType">
+        <xsd:complexContent>
+            <xsd:extension base="geronimo:abstract-login-moduleType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        Include attributes defined in abstract-login-moduleType
+                        above.
+                    </xsd:documentation>
+                </xsd:annotation>
+                <xsd:sequence>
+                    <xsd:element name="pattern" type="sys:patternType">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                The pattern element defines a components of the
+                                abstract name of GBean referred. It includes
+                                information like groupId, artifactId, version,
+                                module, type, and name of the GBean module.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                </xsd:sequence>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:simpleType name="control-flagType">
+        <xsd:restriction base="xsd:string">
+            <xsd:enumeration value="REQUIRED">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        REQUIRED: Defines the requirement of this login module
+                        configuration for authentication. In any case, control
+                        will proceed to next login module.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:enumeration>
+            <xsd:enumeration value="REQUISITE">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        REQUISITE: Defines the requirement of this login module
+                        configuration for authentication. On failure, control
+                        will return to application else proceed to next login
+                        module.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:enumeration>
+            <xsd:enumeration value="SUFFICIENT">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        SUFFICIENT: Defines the non-requirement of this login
+                        module configuration for authentication. On success,
+                        control will return to application else proceed to next
+                        login module.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:enumeration>
+            <xsd:enumeration value="OPTIONAL">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        OPTIONAL: Defines the requirement of this login module
+                        configuration for authentication. In any case, control
+                        will return to application.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:enumeration>
+        </xsd:restriction>
+    </xsd:simpleType>
+
+    <xsd:complexType name="login-moduleType">
+        <xsd:complexContent>
+            <xsd:extension base="geronimo:abstract-login-moduleType">
+                <xsd:annotation>
+                    <xsd:documentation>
+                        Include attributes defined in abstract-login-moduleType
+                        above.
+                    </xsd:documentation>
+                </xsd:annotation>
+                <xsd:sequence>
+                    <xsd:element name="login-domain-name" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                This element defines a unique domain name to
+                                each configuration of login module. This allows
+                                configuration of same login module multiple
+                                times with different domain name.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="login-module-class" type="xsd:string">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                This provides the name of class which provides
+                                implementation of this LoginModule. This name
+                                should be fully qualified java class name. Also
+                                this class should have implemented
+                                javax.security.auth.spi.LoginModule interface.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="option" type="geronimo:optionType"
+                        minOccurs="0" maxOccurs="unbounded">
+                        <xsd:annotation>
+                            <xsd:documentation>
+                                The name value pair for options (properties)
+                                required by this login module.
+                            </xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:element>
+                    <xsd:element name="xml-option" type="sys:xml-attributeType" minOccurs="0" maxOccurs="unbounded"/>
+                </xsd:sequence>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
+
+    <xsd:complexType name="optionType">
+        <xsd:simpleContent>
+            <xsd:extension base="xsd:string">
+                <xsd:attribute name="name" type="xsd:string" use="required">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            The name attribute specifies the name of option. The
+                            value is specified by element value.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+            </xsd:extension>
+        </xsd:simpleContent>
+    </xsd:complexType>
+
+</xsd:schema>

Added: geronimo/site/trunk/docs/xml/ns/geronimo-module-1.1.xsd
URL: http://svn.apache.org/viewvc/geronimo/site/trunk/docs/xml/ns/geronimo-module-1.1.xsd?rev=579381&view=auto
==============================================================================
--- geronimo/site/trunk/docs/xml/ns/geronimo-module-1.1.xsd (added)
+++ geronimo/site/trunk/docs/xml/ns/geronimo-module-1.1.xsd Tue Sep 25 14:05:46 2007
@@ -0,0 +1,340 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Copyright 2004 The Apache Software Foundation
+
+    Licensed 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
+    targetNamespace="http://geronimo.apache.org/xml/ns/deployment-1.1"
+    xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.1"
+    xmlns:xs="http://www.w3.org/2001/XMLSchema"
+    elementFormDefault="qualified"
+    attributeFormDefault="unqualified"
+    >
+    <xs:annotation>
+        <xs:documentation>
+            Schema for Geronimo Services deployment plans.
+            Instance documents should begin with the element:
+
+            &gt;gbeans xmlns="http://geronimo.apache.org/xml/ns/deployment-1.1"&lt;
+        </xs:documentation>
+    </xs:annotation>
+
+    <xs:element name="module" type="sys:moduleType"/>
+
+    <xs:complexType name="moduleType">
+        <xs:sequence>
+            <xs:element ref="sys:environment"/>
+            <xs:element ref="sys:gbean" minOccurs="0" maxOccurs="unbounded"/>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:element name="environment" type="sys:environmentType">
+<!--    TODO figure out why this doesn't work
+        <xs:key name="name-key-key">
+            <xs:annotation>
+                <xs:documentation>
+                    name-key-key assures that key-values for the names of services in this module will
+                    have unique key names.
+                </xs:documentation>
+            </xs:annotation>
+            <xs:selector xpath="sys:name-key"/>
+            <xs:field xpath="sys:name-key/key"/>
+        </xs:key>
+-->
+    </xs:element>
+    <xs:element name="client-environment" type="sys:environmentType">
+<!--
+        <xs:annotation>
+            <xs:documentation>
+                TODO document me - am I only used by the app client builder?
+            </xs:documentation>
+        </xs:annotation>
+-->        
+    </xs:element>
+    
+    <xs:element name="server-environment" type="sys:environmentType">
+<!--
+        <xs:annotation>
+            <xs:documentation>
+                TODO document me - am I only used by the app client builder?
+            </xs:documentation>
+        </xs:annotation>
+-->
+    </xs:element>
+
+    <xs:complexType name="environmentType">
+        <xs:sequence>
+            <xs:element name="moduleId" type="sys:artifactType" minOccurs="0" >
+                <xs:annotation>
+                    <xs:documentation>
+                        "moduleId" holds elements for the groupId, artifactId, and version of the module
+                        version can be ommitted in which case a timestamp is used.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="dependencies" type="sys:dependenciesType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        "dependences" holds all classloader and dependency information for the module
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="hidden-classes" type="sys:classFilterType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        A list of classes which will never be loaded from parent ClassLoaders of this
+                        module.  For example, if Log4J was listed here, the module would never see
+                        Geronimo's copy of Log4J.  If the module provided it's own Log4J JAR it would
+                        use that, otherwise it would not be able to load Log4J at all.
+
+                        The classes are specified in zero or more child "filter" elements
+                        where each filter element specifies a fully-qualified class name or
+                        prefix.  Essentially, any class that starts with one of the prefixes listed
+                        here will be treated as hidden.  For example, if you specify two filter elements
+                        containing "java.util" and "java.lang" then you would really screw up your application.  :)
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="non-overridable-classes" type="sys:classFilterType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        A list of classes which will only be loaded from parent ClassLoaders of this
+                        module (never from the module's own ClassLoader).  For example, this is used
+                        to prevent a web application from redefining "javax.servlet", so those
+                        classes will *always* be loaded from the server instead of from the web
+                        web application's own ClassPath.
+
+                        The classes are specified in zero or more child "filter" elements
+                        where each filter element specifies a fully-qualified class name or
+                        prefix.  Essentially, any class that starts with one of the prefixes listed
+                        here will be treated as hidden.  For example, specifying two filter elements
+                        containing "javax.servlet" and "javax.ejb" would protect some of the core 
+                        J2EE classes from being overridden.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="inverse-classloading" type="sys:emptyType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        If the "inverse-classloading" element is specified, the standard 
+                        class loading delegation model is to be reversed for this module.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="suppress-default-environment" type="sys:emptyType" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        If the "suppress-default-environment" element is specified then any
+                        default environment build by a builder when deploying the plan will
+                        be suppressed.
+                        
+                        An example of where this is useful is when deploying a connector on an app
+                        client in a separate (standalone) module (not as part of a client plan).
+                        
+                        The connector builder defaultEnvironment includes some server modules
+                        that won't work on an app client, so you need to suppress the default 
+                        environment and supply a complete environment including all parents for a 
+                        non-app-client module you want to run on an app client
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="dependenciesType">
+        <xs:sequence>
+            <xs:element name="dependency" type="sys:dependencyType" minOccurs="0" maxOccurs="unbounded">
+                <xs:annotation>
+                    <xs:documentation>
+                        "dependency" holds an artifact locating an artifact in a repository.
+                        Depending on the type of artifact and value of the import element, the artifact may be
+                        included in the current classpath, be loaded as a parent, may require the services
+                        in the artifact to be started, or may not be added to the classpath.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="emptyType"/>
+
+     <xs:element name="gbean" type="sys:gbeanType">
+        <xs:annotation>
+            <xs:documentation>
+                Adds a new custom component to the server.  The component will be deployed
+                when this application module is deployed, but it is not in any way protected,
+                so once it is up and running, other modules can refer to it normally.
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:complexType name="classFilterType">
+        <xs:sequence>
+            <xs:element name="filter" type="xs:string" minOccurs="0" maxOccurs="unbounded">
+                <xs:annotation>
+                    <xs:documentation>
+                        A fully-qualified class name or prefix to be filtered.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="artifactType">
+        <xs:annotation>
+            <xs:documentation><![CDATA[
+                Refers to either another module running in the server, or
+                an entry in the server's Repository.  In either case this effectively uses a
+                URI.
+
+                When this is pointing to a repository entry, the URI must have a form
+                acceptable to the repository, which is currently a URI consisting of
+                Maven-style identifiers separated by slashes (groupId/artifactId/version/type,
+                for example, the URI "postgresql/postgresql-8.0-jdbc/313/jar" for a file like
+                "repository/postgresql/postgresql-8.0-jdbc-313.jar").
+
+                When this is pointing to a module, the URI should match the
+                module's moduleId.  This also looks
+                like a Maven-style URI discussed above.
+
+                The artifactType element can take either a straight URI (as in the examples
+                above), or maven-style identifier fragments (groupId, type, artifactId, and
+                version), which it will compose into a URI by adding up the fragments with
+                slashes in between.
+
+                There is a correspondence between the xml format and a URI.  For example, the URI
+
+                postgresql/postgresql-8.0-jdbc/313/jar
+
+                corresponds to the xml:
+
+                <groupId>postgresql</groupId>
+                <artifactId>postgresql-8.0-jdbc</artifactId>
+                <version>313</version>
+                <type>jar</type>
+
+          ]]></xs:documentation>
+        </xs:annotation>
+            <xs:sequence>
+                <!-- TODO not sure if groupId can in fact be optional -->
+                <xs:element name="groupId" type="xs:string" minOccurs="0"/>
+                <xs:element name="artifactId" type="xs:string"/>
+                <xs:element name="version" type="xs:string" minOccurs="0"/>
+                <xs:element name="type" type="xs:string" minOccurs="0"/>
+
+            </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="dependencyType">
+        <xs:complexContent>
+            <xs:extension base="sys:artifactType">
+                <xs:sequence>
+                    <xs:element name="import" type="sys:importType" minOccurs="0"/>
+                </xs:sequence>
+
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:simpleType name="importType">
+        <xs:annotation>
+            <xs:documentation><![CDATA[
+            The import element is restrictive.  The default (when omitted) is to include the specified dependency in
+            the classloader (as a parent or URL) and (if the dependency is a module) make sure it is started
+            before starting the current module.  Specifying "classes" means that the classes must be included
+            in the current module's classloader but the dependency does not need to be started. (I'm not sure this
+            is actually possible, but it is what is meant).  Specifying "services" means that the dependency (a module)
+            must be started before the current module, but it is not included as a parent classloader.
+
+            You probably never need to use the import element.
+
+          ]]></xs:documentation>
+        </xs:annotation>
+        <xs:restriction base="xs:string">
+            <xs:enumeration value="classes"/>
+            <xs:enumeration value="services"/>
+        </xs:restriction>
+    </xs:simpleType>
+
+    <xs:complexType name="gbeanType">
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+            <xs:element name="attribute" type="sys:attributeType"/>
+            <xs:element name="xml-attribute" type="sys:xml-attributeType"/>
+            <xs:element name="reference" type="sys:referenceType"/>
+            <xs:element name="references" type="sys:referencesType"/>
+            <xs:element name="xml-reference" type="sys:xml-attributeType"/>
+            <xs:element name="dependency" type="sys:patternType"/>
+        </xs:choice>
+        <xs:attribute name="name" type="xs:string" use="required"/>
+        <xs:attribute name="class" type="xs:string" use="required"/>
+    </xs:complexType>
+
+    <xs:complexType name="attributeType">
+        <xs:simpleContent>
+            <xs:extension base="xs:string">
+                <xs:attribute name="name" type="xs:string"/>
+                <xs:attribute name="type" type="xs:string"/>
+            </xs:extension>
+        </xs:simpleContent>
+    </xs:complexType>
+
+    <xs:complexType name="xml-attributeType">
+        <xs:sequence>
+            <xs:any namespace="##any" processContents="lax"/>
+        </xs:sequence>
+        <xs:attribute name="name" type="xs:string"/>
+    </xs:complexType>
+
+    <xs:complexType name="referencesType">
+        <xs:sequence>
+            <xs:element name="pattern" type="sys:patternType" minOccurs="1" maxOccurs="unbounded"/>
+        </xs:sequence>
+        <xs:attribute name="name" type="xs:string"/>
+    </xs:complexType>
+
+    <xs:complexType name="patternType">
+        <xs:annotation>
+            <xs:documentation>This group contains the components of an abstract name</xs:documentation>
+        </xs:annotation>
+         <xs:sequence>
+            <xs:sequence>
+                <xs:element name="groupId" type="xs:string" minOccurs="0"/>
+                <xs:element name="artifactId" type="xs:string" minOccurs="0"/>
+                <xs:element name="version" type="xs:string" minOccurs="0"/>
+                <xs:element name="module" type="xs:string" minOccurs="0"/>
+                <xs:element name="type" type="xs:string" minOccurs="0"/>
+                <xs:element name="name" type="xs:string" minOccurs="0"/>
+            </xs:sequence>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="referenceType">
+        <xs:complexContent>
+            <xs:extension base="sys:patternType">
+                <xs:attribute name="name" type="xs:string"/>
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:element name="service" type="sys:serviceType"/>
+
+    <xs:complexType name="serviceType">
+        <xs:sequence>
+            <xs:element name="dependency" type="sys:artifactType" minOccurs="0" maxOccurs="unbounded"/>
+        </xs:sequence>
+    </xs:complexType>
+
+</xs:schema>