Add support for xsd:minLength and xsd:maxLength. BLD200310150100
authorcliffwd@netbeans.org
Tue, 14 Oct 2003 20:30:08 +0000
changeset 13672225bd8a76b8
parent 1366 158029cd9996
child 1368 737176ce6cbc
Add support for xsd:minLength and xsd:maxLength.
Fix bug dealing with adding restrictions to types.
Add test for the above, but since it requires QName jar, comment it out.
schema2beans/test/build-unit.xml
schema2beans/test/cfg-unit.xml
schema2beans/test/unit/src/TestMain.java
schema2beans/test/unit/src/data/TestFinalWebApp.java
schema2beans/test/unit/src/data/TestFinalWebApp.xml
schema2beans/test/unit/src/data/TestFinalWebApp.xsd
schema2beans/test/unit/src/data/final_j2ee_1_4.xsd
schema2beans/test/unit/src/data/final_jsp_2_0.xsd
schema2beans/test/unit/src/data/goldenfiles/TestMain/testApplication1_4.pass
schema2beans/test/unit/src/data/goldenfiles/TestMain/testFinalWebApp.pass
schema2beans/test/unit/src/data/goldenfiles/TestMain/testWebApp.pass
schema2beans/test/unit/src/data/goldenfiles/TestMain/testWebAppDelegator.pass
schema2beans/test/unit/src/data/goldenfiles/TestMain/testWebAppDelegatorBaseBean.pass
schema2beans/test/unit/src/data/j2ee_web_services_client_1_1.xsd
     1.1 --- a/schema2beans/test/build-unit.xml	Tue Oct 14 17:01:36 2003 +0000
     1.2 +++ b/schema2beans/test/build-unit.xml	Tue Oct 14 20:30:08 2003 +0000
     1.3 @@ -185,6 +185,7 @@
     1.4         	    <!-- If you need e.g. openide.jar, write this:
     1.5  	           <pathelement location="../netbeans/lib/openide.jar"/>
     1.6   	      -->
     1.7 +	      <!-- <pathelement location="/home/cliffwd/cvs/current/f4j_all/jwsdp/release/modules/autoload/ext/jax-qname.jar"/> -->
     1.8  	      <pathelement location="../netbeans/modules/autoload/schema2beans.jar"/>
     1.9  	      <pathelement location="../netbeans/modules/autoload/schema2beansdev.jar"/>
    1.10      	</path>
     2.1 --- a/schema2beans/test/cfg-unit.xml	Tue Oct 14 17:01:36 2003 +0000
     2.2 +++ b/schema2beans/test/cfg-unit.xml	Tue Oct 14 20:30:08 2003 +0000
     2.3 @@ -44,6 +44,14 @@
     2.4  	</testset>
     2.5    </testbag>
     2.6      
     2.7 +  <testbag testattribs="testFinalWebApp" executor="code" name="testMergeExtendBaseBean (no ide)">
     2.8 +	<testset dir="unit/src">
     2.9 +	  <patternset>
    2.10 +		<include name="TestMain.class/testFinalWebApp"/>
    2.11 +	  </patternset>
    2.12 +	</testset>
    2.13 +  </testbag>
    2.14 +    
    2.15      <!-- testbag with failing test (just one method)  -->
    2.16      <testbag testattribs="failing" executor="code" name="failing tests (no ide)" resultsprocessor="unit">
    2.17          <testset dir="unit/src">
     3.1 --- a/schema2beans/test/unit/src/TestMain.java	Tue Oct 14 17:01:36 2003 +0000
     3.2 +++ b/schema2beans/test/unit/src/TestMain.java	Tue Oct 14 20:30:08 2003 +0000
     3.3 @@ -160,6 +160,19 @@
     3.4          generalTest("TestWebAppDelegatorBaseBean", true, config);
     3.5      }
     3.6  
     3.7 +    /* commented out until QName can be part of NetBeans
     3.8 +    public void testFinalWebApp() throws IOException, Schema2BeansException, InterruptedException {
     3.9 +        GenBeans.Config config = new GenBeans.Config();
    3.10 +        config.setOutputType(GenBeans.Config.OUTPUT_JAVABEANS);
    3.11 +        config.setAttributesAsProperties(true);
    3.12 +        config.setGenerateCommonInterface("CommonBean");
    3.13 +        config.setGenerateValidate(true);
    3.14 +        config.setProcessComments(true);
    3.15 +        config.setProcessDocType(true);
    3.16 +        generalTest("TestFinalWebApp", true, config);
    3.17 +    }
    3.18 +    */
    3.19 +
    3.20      public void testPositions() throws IOException, Schema2BeansException, InterruptedException {
    3.21          GenBeans.Config config = new GenBeans.Config();
    3.22          config.buyPremium();
    3.23 @@ -428,6 +441,7 @@
    3.24          System.out.println("dataDirName="+dataDirName);
    3.25  
    3.26          theClassPath += classPathEntryFromURL(org.netbeans.modules.schema2beans.BaseBean.class);
    3.27 +        //theClassPath += File.pathSeparator + classPathEntryFromURL(javax.xml.namespace.QName.class);
    3.28          //theClassPath += File.pathSeparator + classPathEntryFromURL(org.w3c.dom.Node.class);
    3.29          //theClassPath += File.pathSeparator + classPathEntryFromURL(javax.xml.parsers.DocumentBuilderFactory.newInstance().getClass());
    3.30          //theClassPath += File.pathSeparator + classPathEntryFromURL(org.w3c.dom.ranges.DocumentRange.class);
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/schema2beans/test/unit/src/data/TestFinalWebApp.java	Tue Oct 14 20:30:08 2003 +0000
     4.3 @@ -0,0 +1,69 @@
     4.4 +/*
     4.5 + *	TestFinalWebApp - test the basic features.
     4.6 + *
     4.7 + *	The following test assumes that we know the content of the
     4.8 + *	graph as we get elements, add and change them. Therefore, the TestFinalWebApp.xml
     4.9 + *	file and this java test should be kept in sync.
    4.10 + *
    4.11 + * 	Test the following:
    4.12 + *
    4.13 + *	single String: get/set/remove/set/get
    4.14 + *	boolean (from true): get/set true/get/set false/get/set true/get
    4.15 + *	boolean (from false): get/set false/get/set true/get/set false/get
    4.16 + *	String[]: get/set (null & !null)/add/remove
    4.17 + *	Bean: remove/set(null)/create bean and graph of beans/set/add
    4.18 + *
    4.19 + */
    4.20 +
    4.21 +import java.io.*;
    4.22 +import java.util.*;
    4.23 +import org.w3c.dom.*;
    4.24 +
    4.25 +import webapp.*;
    4.26 +
    4.27 +public class TestFinalWebApp extends BaseTest {
    4.28 +    public static void main(String[] argv) {
    4.29 +        TestFinalWebApp o = new TestFinalWebApp();
    4.30 +        if (argv.length > 0)
    4.31 +            o.setDocumentDir(argv[0]);
    4.32 +        try {
    4.33 +            o.run();
    4.34 +        } catch (Exception e) {
    4.35 +            e.printStackTrace();
    4.36 +            System.exit(1);
    4.37 +        }
    4.38 +        System.exit(0);
    4.39 +    }
    4.40 +    
    4.41 +    public void run() throws Exception {
    4.42 +        WebApp webApp;
    4.43 +
    4.44 +        this.readDocument();
    4.45 +
    4.46 +        out("creating the bean graph");
    4.47 +        webApp = WebApp.read(doc);
    4.48 +	
    4.49 +        //	Check that we can read the graph an it is complete
    4.50 +        out("bean graph created");
    4.51 +        webApp.write(out);
    4.52 +
    4.53 +        out("Adding filters");
    4.54 +        FilterType filter = new FilterType();
    4.55 +        filter.addDisplayName("filter BLUE");
    4.56 +        filter.addDisplayNameXmlLang("en");
    4.57 +        webApp.addFilter(filter);
    4.58 +        filter = new FilterType();
    4.59 +        filter.addDisplayName("filter GREEN");
    4.60 +        webApp.write(out);
    4.61 +        out("Validating");
    4.62 +        try {
    4.63 +            webApp.validate();
    4.64 +            out("No validation problem");
    4.65 +        } catch (webapp.WebApp.ValidateException e) {
    4.66 +            out("Got exception: "+e.getMessage());
    4.67 +        }
    4.68 +
    4.69 +        WebApp copy1 = new WebApp(webApp);
    4.70 +        copy1.write(out);
    4.71 +    }
    4.72 +}
     5.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.2 +++ b/schema2beans/test/unit/src/data/TestFinalWebApp.xml	Tue Oct 14 20:30:08 2003 +0000
     5.3 @@ -0,0 +1,9 @@
     5.4 +<?xml version='1.0'?>
     5.5 +
     5.6 +<web-app>
     5.7 +  <description>This is my Web App</description>
     5.8 +  <display-name>MyWebApp</display-name>
     5.9 +  <filter>
    5.10 +	<filter-name>Bob</filter-name>
    5.11 +  </filter>
    5.12 +</web-app>
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/schema2beans/test/unit/src/data/TestFinalWebApp.xsd	Tue Oct 14 20:30:08 2003 +0000
     6.3 @@ -0,0 +1,1266 @@
     6.4 +<?xml version="1.0" encoding="UTF-8"?>
     6.5 +<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
     6.6 +	    targetNamespace="http://java.sun.com/xml/ns/j2ee"
     6.7 +	    xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
     6.8 +	    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     6.9 +	    elementFormDefault="qualified"
    6.10 +	    attributeFormDefault="unqualified"
    6.11 +	    version="2.4">
    6.12 +  <xsd:annotation>
    6.13 +    <xsd:documentation>
    6.14 +      @(#)web-app_2_4.xsds	1.57 03/04/07
    6.15 +    </xsd:documentation>
    6.16 +  </xsd:annotation>
    6.17 +
    6.18 +  <xsd:annotation>
    6.19 +    <xsd:documentation>
    6.20 +
    6.21 +      Copyright 2002 Sun Microsystems, Inc., 901 San Antonio
    6.22 +      Road, Palo Alto, California 94303, U.S.A. All rights
    6.23 +      reserved.
    6.24 +
    6.25 +      Sun Microsystems, Inc. has intellectual property rights
    6.26 +      relating to technology described in this document. In
    6.27 +      particular, and without limitation, these intellectual
    6.28 +      property rights may include one or more of the U.S. patents
    6.29 +      listed at http://www.sun.com/patents and one or more
    6.30 +      additional patents or pending patent applications in the
    6.31 +      U.S. and other countries.
    6.32 +
    6.33 +      This document and the technology which it describes are
    6.34 +      distributed under licenses restricting their use, copying,
    6.35 +      distribution, and decompilation. No part of this document
    6.36 +      may be reproduced in any form by any means without prior
    6.37 +      written authorization of Sun and its licensors, if any.
    6.38 +
    6.39 +      Third-party software, including font technology, is
    6.40 +      copyrighted and licensed from Sun suppliers.
    6.41 +
    6.42 +      Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
    6.43 +      JavaServer Pages, Enterprise JavaBeans and the Java Coffee
    6.44 +      Cup logo are trademarks or registered trademarks of Sun
    6.45 +      Microsystems, Inc. in the U.S. and other countries.
    6.46 +
    6.47 +      Federal Acquisitions: Commercial Software - Government Users
    6.48 +      Subject to Standard License Terms and Conditions.
    6.49 +
    6.50 +    </xsd:documentation>
    6.51 +  </xsd:annotation>
    6.52 +
    6.53 +  <xsd:annotation>
    6.54 +    <xsd:documentation>
    6.55 +      <![CDATA[
    6.56 +
    6.57 +	This is the XML Schema for the Servlet 2.4 deployment descriptor.
    6.58 +	The deployment descriptor must be named "WEB-INF/web.xml" in the
    6.59 +	web application's war file.  All Servlet deployment descriptors
    6.60 +	must indicate the web application schema by using the J2EE
    6.61 +	namespace:
    6.62 +
    6.63 +	http://java.sun.com/xml/ns/j2ee
    6.64 +
    6.65 +	and by indicating the version of the schema by
    6.66 +	using the version element as shown below:
    6.67 +
    6.68 +	    <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    6.69 +	      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    6.70 +	      xsi:schemaLocation="..."
    6.71 +	      version="2.4">
    6.72 +	      ...
    6.73 +	    </web-app>
    6.74 +
    6.75 +	The instance documents may indicate the published version of
    6.76 +	the schema using the xsi:schemaLocation attribute for J2EE
    6.77 +	namespace with the following location:
    6.78 +
    6.79 +	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd
    6.80 +
    6.81 +	]]>
    6.82 +    </xsd:documentation>
    6.83 +  </xsd:annotation>
    6.84 +
    6.85 +  <xsd:annotation>
    6.86 +    <xsd:documentation>
    6.87 +
    6.88 +      The following conventions apply to all J2EE
    6.89 +      deployment descriptor elements unless indicated otherwise.
    6.90 +
    6.91 +      - In elements that specify a pathname to a file within the
    6.92 +	same JAR file, relative filenames (i.e., those not
    6.93 +	starting with "/") are considered relative to the root of
    6.94 +	the JAR file's namespace.  Absolute filenames (i.e., those
    6.95 +	starting with "/") also specify names in the root of the
    6.96 +	JAR file's namespace.  In general, relative names are
    6.97 +	preferred.  The exception is .war files where absolute
    6.98 +	names are preferred for consistency with the Servlet API.
    6.99 +
   6.100 +    </xsd:documentation>
   6.101 +  </xsd:annotation>
   6.102 +
   6.103 +  <xsd:include schemaLocation="final_j2ee_1_4.xsd"/>
   6.104 +  <xsd:include schemaLocation="final_jsp_2_0.xsd"/>
   6.105 +
   6.106 +
   6.107 +<!-- **************************************************** -->
   6.108 +
   6.109 +
   6.110 +  <xsd:element name="web-app" type="j2ee:web-appType">
   6.111 +    <xsd:annotation>
   6.112 +      <xsd:documentation>
   6.113 +
   6.114 +	The web-app element is the root of the deployment
   6.115 +	descriptor for a web application.  Note that the sub-elements
   6.116 +	of this element can be in the arbitrary order. Because of
   6.117 +	that, the multiplicity of the elements of distributable,
   6.118 +	session-config, welcome-file-list, jsp-config, login-config,
   6.119 +	and locale-encoding-mapping-list was changed from "?" to "*"
   6.120 +	in this schema.  However, the deployment descriptor instance
   6.121 +	file must not contain multiple elements of session-config,
   6.122 +	jsp-config, and login-config. When there are multiple elements of
   6.123 +	welcome-file-list or locale-encoding-mapping-list, the container
   6.124 +	must concatinate the element contents.  The multiple occurance
   6.125 +	of the element distributable is redundant and the container
   6.126 +	treats that case exactly in the same way when there is only
   6.127 +	one distributable.
   6.128 +
   6.129 +      </xsd:documentation>
   6.130 +    </xsd:annotation>
   6.131 +
   6.132 +    <xsd:unique name="servlet-name-uniqueness">
   6.133 +      <xsd:annotation>
   6.134 +	<xsd:documentation>
   6.135 +
   6.136 +	  The servlet element contains the name of a servlet.
   6.137 +	  The name must be unique within the web application.
   6.138 +
   6.139 +	</xsd:documentation>
   6.140 +      </xsd:annotation>
   6.141 +      <xsd:selector xpath="j2ee:servlet"/>
   6.142 +      <xsd:field    xpath="j2ee:servlet-name"/>
   6.143 +    </xsd:unique>
   6.144 +
   6.145 +    <xsd:unique name="filter-name-uniqueness">
   6.146 +      <xsd:annotation>
   6.147 +	<xsd:documentation>
   6.148 +
   6.149 +	  The filter element contains the name of a filter.
   6.150 +	  The name must be unique within the web application.
   6.151 +
   6.152 +	</xsd:documentation>
   6.153 +      </xsd:annotation>
   6.154 +      <xsd:selector xpath="j2ee:filter"/>
   6.155 +      <xsd:field    xpath="j2ee:filter-name"/>
   6.156 +    </xsd:unique>
   6.157 +
   6.158 +    <xsd:unique name="ejb-local-ref-name-uniqueness">
   6.159 +      <xsd:annotation>
   6.160 +	<xsd:documentation>
   6.161 +
   6.162 +	  The ejb-local-ref-name element contains the name of an EJB
   6.163 +	  reference. The EJB reference is an entry in the web
   6.164 +	  application's environment and is relative to the
   6.165 +	  java:comp/env context.  The name must be unique within
   6.166 +	  the web application.
   6.167 +
   6.168 +	  It is recommended that name is prefixed with "ejb/".
   6.169 +
   6.170 +	</xsd:documentation>
   6.171 +      </xsd:annotation>
   6.172 +      <xsd:selector xpath="j2ee:ejb-local-ref"/>
   6.173 +      <xsd:field    xpath="j2ee:ejb-ref-name"/>
   6.174 +    </xsd:unique>
   6.175 +
   6.176 +    <xsd:unique name="ejb-ref-name-uniqueness">
   6.177 +      <xsd:annotation>
   6.178 +	<xsd:documentation>
   6.179 +
   6.180 +	  The ejb-ref-name element contains the name of an EJB
   6.181 +	  reference. The EJB reference is an entry in the web
   6.182 +	  application's environment and is relative to the
   6.183 +	  java:comp/env context.  The name must be unique within
   6.184 +	  the web application.
   6.185 +
   6.186 +	  It is recommended that name is prefixed with "ejb/".
   6.187 +
   6.188 +	</xsd:documentation>
   6.189 +      </xsd:annotation>
   6.190 +      <xsd:selector xpath="j2ee:ejb-ref"/>
   6.191 +      <xsd:field    xpath="j2ee:ejb-ref-name"/>
   6.192 +    </xsd:unique>
   6.193 +
   6.194 +    <xsd:unique name="resource-env-ref-uniqueness">
   6.195 +      <xsd:annotation>
   6.196 +	<xsd:documentation>
   6.197 +
   6.198 +	  The resource-env-ref-name element specifies the name of
   6.199 +	  a resource environment reference; its value is the
   6.200 +	  environment entry name used in the web application code.
   6.201 +	  The name is a JNDI name relative to the java:comp/env
   6.202 +	  context and must be unique within a web application.
   6.203 +
   6.204 +	</xsd:documentation>
   6.205 +      </xsd:annotation>
   6.206 +      <xsd:selector xpath="j2ee:resource-env-ref"/>
   6.207 +      <xsd:field    xpath="j2ee:resource-env-ref-name"/>
   6.208 +    </xsd:unique>
   6.209 +
   6.210 +    <xsd:unique name="message-destination-ref-uniqueness">
   6.211 +      <xsd:annotation>
   6.212 +	<xsd:documentation>
   6.213 +
   6.214 +	  The message-destination-ref-name element specifies the name of
   6.215 +	  a message destination reference; its value is the
   6.216 +	  environment entry name used in the web application code.
   6.217 +	  The name is a JNDI name relative to the java:comp/env
   6.218 +	  context and must be unique within a web application.
   6.219 +
   6.220 +	</xsd:documentation>
   6.221 +      </xsd:annotation>
   6.222 +      <xsd:selector xpath="j2ee:message-destination-ref"/>
   6.223 +      <xsd:field    xpath="j2ee:message-destination-ref-name"/>
   6.224 +    </xsd:unique>
   6.225 +
   6.226 +    <xsd:unique name="res-ref-name-uniqueness">
   6.227 +      <xsd:annotation>
   6.228 +	<xsd:documentation>
   6.229 +
   6.230 +	  The res-ref-name element specifies the name of a
   6.231 +	  resource manager connection factory reference.  The name
   6.232 +	  is a JNDI name relative to the java:comp/env context.
   6.233 +	  The name must be unique within a web application.
   6.234 +
   6.235 +	</xsd:documentation>
   6.236 +      </xsd:annotation>
   6.237 +      <xsd:selector xpath="j2ee:resource-ref"/>
   6.238 +      <xsd:field    xpath="j2ee:res-ref-name"/>
   6.239 +    </xsd:unique>
   6.240 +
   6.241 +    <xsd:unique name="env-entry-name-uniqueness">
   6.242 +      <xsd:annotation>
   6.243 +	<xsd:documentation>
   6.244 +
   6.245 +	  The env-entry-name element contains the name of a web
   6.246 +	  application's environment entry.  The name is a JNDI
   6.247 +	  name relative to the java:comp/env context.  The name
   6.248 +	  must be unique within a web application.
   6.249 +
   6.250 +	</xsd:documentation>
   6.251 +      </xsd:annotation>
   6.252 +
   6.253 +      <xsd:selector xpath="j2ee:env-entry"/>
   6.254 +      <xsd:field    xpath="j2ee:env-entry-name"/>
   6.255 +    </xsd:unique>
   6.256 +
   6.257 +    <xsd:key name="role-name-key">
   6.258 +      <xsd:annotation>
   6.259 +	<xsd:documentation>
   6.260 +
   6.261 +	  A role-name-key is specified to allow the references
   6.262 +	  from the security-role-refs.
   6.263 +
   6.264 +	</xsd:documentation>
   6.265 +      </xsd:annotation>
   6.266 +      <xsd:selector xpath="j2ee:security-role"/>
   6.267 +      <xsd:field    xpath="j2ee:role-name"/>
   6.268 +    </xsd:key>
   6.269 +
   6.270 +    <xsd:keyref name="role-name-references"
   6.271 +		refer="j2ee:role-name-key">
   6.272 +      <xsd:annotation>
   6.273 +	<xsd:documentation>
   6.274 +
   6.275 +	  The keyref indicates the references from
   6.276 +	  security-role-ref to a specified role-name.
   6.277 +
   6.278 +	</xsd:documentation>
   6.279 +      </xsd:annotation>
   6.280 +      <xsd:selector xpath="j2ee:servlet/j2ee:security-role-ref"/>
   6.281 +      <xsd:field    xpath="j2ee:role-link"/>
   6.282 +    </xsd:keyref>
   6.283 +  </xsd:element>
   6.284 +
   6.285 +
   6.286 +<!-- **************************************************** -->
   6.287 +
   6.288 +  <xsd:complexType name="auth-constraintType">
   6.289 +    <xsd:annotation>
   6.290 +      <xsd:documentation>
   6.291 +
   6.292 +	The auth-constraintType indicates the user roles that
   6.293 +	should be permitted access to this resource
   6.294 +	collection. The role-name used here must either correspond
   6.295 +	to the role-name of one of the security-role elements
   6.296 +	defined for this web application, or be the specially
   6.297 +	reserved role-name "*" that is a compact syntax for
   6.298 +	indicating all roles in the web application. If both "*"
   6.299 +	and rolenames appear, the container interprets this as all
   6.300 +	roles.  If no roles are defined, no user is allowed access
   6.301 +	to the portion of the web application described by the
   6.302 +	containing security-constraint.  The container matches
   6.303 +	role names case sensitively when determining access.
   6.304 +
   6.305 +      </xsd:documentation>
   6.306 +    </xsd:annotation>
   6.307 +
   6.308 +    <xsd:sequence>
   6.309 +      <xsd:element name="description"
   6.310 +		   type="j2ee:descriptionType"
   6.311 +		   minOccurs="0" maxOccurs="unbounded"/>
   6.312 +      <xsd:element name="role-name"
   6.313 +		   type="j2ee:role-nameType"
   6.314 +		   minOccurs="0" maxOccurs="unbounded"/>
   6.315 +    </xsd:sequence>
   6.316 +    <xsd:attribute name="id" type="xsd:ID"/>
   6.317 +  </xsd:complexType>
   6.318 +
   6.319 +<!-- **************************************************** -->
   6.320 +
   6.321 +  <xsd:complexType name="auth-methodType">
   6.322 +    <xsd:annotation>
   6.323 +      <xsd:documentation>
   6.324 +
   6.325 +	The auth-methodType is used to configure the authentication
   6.326 +	mechanism for the web application. As a prerequisite to
   6.327 +	gaining access to any web resources which are protected by
   6.328 +	an authorization constraint, a user must have authenticated
   6.329 +	using the configured mechanism. Legal values are "BASIC",
   6.330 +	"DIGEST", "FORM", "CLIENT-CERT", or a vendor-specific
   6.331 +	authentication scheme.
   6.332 +
   6.333 +	Used in: login-config
   6.334 +
   6.335 +      </xsd:documentation>
   6.336 +    </xsd:annotation>
   6.337 +
   6.338 +    <xsd:simpleContent>
   6.339 +      <xsd:restriction base="j2ee:string"/>
   6.340 +    </xsd:simpleContent>
   6.341 +  </xsd:complexType>
   6.342 +
   6.343 +<!-- **************************************************** -->
   6.344 +
   6.345 +  <xsd:complexType name="dispatcherType">
   6.346 +    <xsd:annotation>
   6.347 +      <xsd:documentation>
   6.348 +
   6.349 +	The dispatcher has four legal values: FORWARD, REQUEST, INCLUDE,
   6.350 +	and ERROR. A value of FORWARD means the Filter will be applied
   6.351 +	under RequestDispatcher.forward() calls.  A value of REQUEST
   6.352 +	means the Filter will be applied under ordinary client calls to
   6.353 +	the path or servlet. A value of INCLUDE means the Filter will be
   6.354 +	applied under RequestDispatcher.include() calls.  A value of
   6.355 +	ERROR means the Filter will be applied under the error page
   6.356 +	mechanism.  The absence of any dispatcher elements in a
   6.357 +	filter-mapping indicates a default of applying filters only under
   6.358 +	ordinary client calls to the path or servlet.
   6.359 +
   6.360 +      </xsd:documentation>
   6.361 +    </xsd:annotation>
   6.362 +
   6.363 +    <xsd:simpleContent>
   6.364 +      <xsd:restriction base="j2ee:string">
   6.365 +	<xsd:enumeration value="FORWARD"/>
   6.366 +	<xsd:enumeration value="INCLUDE"/>
   6.367 +	<xsd:enumeration value="REQUEST"/>
   6.368 +	<xsd:enumeration value="ERROR"/>
   6.369 +      </xsd:restriction>
   6.370 +    </xsd:simpleContent>
   6.371 +  </xsd:complexType>
   6.372 +
   6.373 +<!-- **************************************************** -->
   6.374 +
   6.375 +  <xsd:simpleType name="encodingType">
   6.376 +    <xsd:annotation>
   6.377 +      <xsd:documentation>
   6.378 +
   6.379 +	The encodingType defines IANA character sets.
   6.380 +
   6.381 +      </xsd:documentation>
   6.382 +    </xsd:annotation>
   6.383 +
   6.384 +    <xsd:restriction base="xsd:string">
   6.385 +      <xsd:pattern value="[^\s]+"/>
   6.386 +    </xsd:restriction>
   6.387 +  </xsd:simpleType>
   6.388 +
   6.389 +<!-- **************************************************** -->
   6.390 +
   6.391 +  <xsd:complexType name="error-codeType">
   6.392 +    <xsd:annotation>
   6.393 +      <xsd:documentation>
   6.394 +
   6.395 +	The error-code contains an HTTP error code, ex: 404
   6.396 +
   6.397 +	Used in: error-page
   6.398 +
   6.399 +      </xsd:documentation>
   6.400 +    </xsd:annotation>
   6.401 +
   6.402 +    <xsd:simpleContent>
   6.403 +      <xsd:restriction base="j2ee:xsdPositiveIntegerType">
   6.404 +	<xsd:pattern value="\d{3}"/>
   6.405 +	<xsd:attribute name="id" type="xsd:ID"/>
   6.406 +      </xsd:restriction>
   6.407 +    </xsd:simpleContent>
   6.408 +  </xsd:complexType>
   6.409 +
   6.410 +<!-- **************************************************** -->
   6.411 +
   6.412 +  <xsd:complexType name="error-pageType">
   6.413 +    <xsd:annotation>
   6.414 +      <xsd:documentation>
   6.415 +
   6.416 +	The error-pageType contains a mapping between an error code
   6.417 +	or exception type to the path of a resource in the web
   6.418 +	application.
   6.419 +
   6.420 +	Used in: web-app
   6.421 +
   6.422 +      </xsd:documentation>
   6.423 +    </xsd:annotation>
   6.424 +
   6.425 +    <xsd:sequence>
   6.426 +      <xsd:choice>
   6.427 +	<xsd:element name="error-code"
   6.428 +		     type="j2ee:error-codeType"/>
   6.429 +
   6.430 +	<xsd:element name="exception-type"
   6.431 +		     type="j2ee:fully-qualified-classType">
   6.432 +	  <xsd:annotation>
   6.433 +	    <xsd:documentation>
   6.434 +
   6.435 +	      The exception-type contains a fully qualified class
   6.436 +	      name of a Java exception type.
   6.437 +
   6.438 +	    </xsd:documentation>
   6.439 +	  </xsd:annotation>
   6.440 +	</xsd:element>
   6.441 +      </xsd:choice>
   6.442 +
   6.443 +      <xsd:element name="location"
   6.444 +		   type="j2ee:war-pathType">
   6.445 +	<xsd:annotation>
   6.446 +	  <xsd:documentation>
   6.447 +
   6.448 +	    The location element contains the location of the
   6.449 +	    resource in the web application relative to the root of
   6.450 +	    the web application. The value of the location must have
   6.451 +	    a leading `/'.
   6.452 +
   6.453 +	  </xsd:documentation>
   6.454 +	</xsd:annotation>
   6.455 +      </xsd:element>
   6.456 +    </xsd:sequence>
   6.457 +    <xsd:attribute name="id" type="xsd:ID"/>
   6.458 +  </xsd:complexType>
   6.459 +
   6.460 +<!-- **************************************************** -->
   6.461 +
   6.462 +  <xsd:complexType name="filter-mappingType">
   6.463 +    <xsd:annotation>
   6.464 +      <xsd:documentation>
   6.465 +
   6.466 +	Declaration of the filter mappings in this web
   6.467 +	application is done by using filter-mappingType.
   6.468 +	The container uses the filter-mapping
   6.469 +	declarations to decide which filters to apply to a request,
   6.470 +	and in what order. The container matches the request URI to
   6.471 +	a Servlet in the normal way. To determine which filters to
   6.472 +	apply it matches filter-mapping declarations either on
   6.473 +	servlet-name, or on url-pattern for each filter-mapping
   6.474 +	element, depending on which style is used. The order in
   6.475 +	which filters are invoked is the order in which
   6.476 +	filter-mapping declarations that match a request URI for a
   6.477 +	servlet appear in the list of filter-mapping elements.The
   6.478 +	filter-name value must be the value of the filter-name
   6.479 +	sub-elements of one of the filter declarations in the
   6.480 +	deployment descriptor.
   6.481 +
   6.482 +      </xsd:documentation>
   6.483 +    </xsd:annotation>
   6.484 +
   6.485 +    <xsd:sequence>
   6.486 +      <xsd:element name="filter-name"
   6.487 +		   type="j2ee:filter-nameType"/>
   6.488 +      <xsd:choice>
   6.489 +	<xsd:element name="url-pattern"
   6.490 +		     type="j2ee:url-patternType"/>
   6.491 +	<xsd:element name="servlet-name"
   6.492 +		     type="j2ee:servlet-nameType"/>
   6.493 +      </xsd:choice>
   6.494 +      <xsd:element name="dispatcher"
   6.495 +		   type="j2ee:dispatcherType"
   6.496 +		   minOccurs="0" maxOccurs="4"/>
   6.497 +    </xsd:sequence>
   6.498 +    <xsd:attribute name="id" type="xsd:ID"/>
   6.499 +  </xsd:complexType>
   6.500 +
   6.501 +<!-- **************************************************** -->
   6.502 +
   6.503 +  <xsd:complexType name="filter-nameType">
   6.504 +    <xsd:annotation>
   6.505 +      <xsd:documentation>
   6.506 +
   6.507 +	The logical name of the filter is declare
   6.508 +	by using filter-nameType. This name is used to map the
   6.509 +	filter.  Each filter name is unique within the web
   6.510 +	application.
   6.511 +
   6.512 +	Used in: filter, filter-mapping
   6.513 +
   6.514 +      </xsd:documentation>
   6.515 +    </xsd:annotation>
   6.516 +
   6.517 +    <xsd:simpleContent>
   6.518 +      <xsd:extension base="j2ee:nonEmptyStringType"/>
   6.519 +    </xsd:simpleContent>
   6.520 +  </xsd:complexType>
   6.521 +
   6.522 +<!-- **************************************************** -->
   6.523 +
   6.524 +  <xsd:complexType name="filterType">
   6.525 +    <xsd:annotation>
   6.526 +      <xsd:documentation>
   6.527 +
   6.528 +	The filterType is used to declare a filter in the web
   6.529 +	application. The filter is mapped to either a servlet or a
   6.530 +	URL pattern in the filter-mapping element, using the
   6.531 +	filter-name value to reference. Filters can access the
   6.532 +	initialization parameters declared in the deployment
   6.533 +	descriptor at runtime via the FilterConfig interface.
   6.534 +
   6.535 +	Used in: web-app
   6.536 +
   6.537 +      </xsd:documentation>
   6.538 +    </xsd:annotation>
   6.539 +
   6.540 +    <xsd:sequence>
   6.541 +      <xsd:group ref="j2ee:descriptionGroup"/>
   6.542 +      <xsd:element name="filter-name"
   6.543 +		   type="j2ee:filter-nameType"/>
   6.544 +      <xsd:element name="filter-class"
   6.545 +		   type="j2ee:fully-qualified-classType">
   6.546 +	<xsd:annotation>
   6.547 +	  <xsd:documentation>
   6.548 +
   6.549 +	    The fully qualified classname of the filter.
   6.550 +
   6.551 +	  </xsd:documentation>
   6.552 +	</xsd:annotation>
   6.553 +      </xsd:element>
   6.554 +
   6.555 +      <xsd:element name="init-param"
   6.556 +		   type="j2ee:param-valueType"
   6.557 +		   minOccurs="0" maxOccurs="unbounded">
   6.558 +	<xsd:annotation>
   6.559 +	  <xsd:documentation>
   6.560 +
   6.561 +	    The init-param element contains a name/value pair as
   6.562 +	    an initialization param of a servlet filter
   6.563 +
   6.564 +	  </xsd:documentation>
   6.565 +	</xsd:annotation>
   6.566 +      </xsd:element>
   6.567 +    </xsd:sequence>
   6.568 +    <xsd:attribute name="id" type="xsd:ID"/>
   6.569 +  </xsd:complexType>
   6.570 +
   6.571 +<!-- **************************************************** -->
   6.572 +
   6.573 +  <xsd:complexType name="form-login-configType">
   6.574 +    <xsd:annotation>
   6.575 +      <xsd:documentation>
   6.576 +
   6.577 +	The form-login-configType specifies the login and error
   6.578 +	pages that should be used in form based login. If form based
   6.579 +	authentication is not used, these elements are ignored.
   6.580 +
   6.581 +	Used in: login-config
   6.582 +
   6.583 +      </xsd:documentation>
   6.584 +    </xsd:annotation>
   6.585 +
   6.586 +    <xsd:sequence>
   6.587 +
   6.588 +      <xsd:element name="form-login-page"
   6.589 +		   type="j2ee:war-pathType">
   6.590 +	<xsd:annotation>
   6.591 +	  <xsd:documentation>
   6.592 +
   6.593 +	    The form-login-page element defines the location in the web
   6.594 +	    app where the page that can be used for login can be
   6.595 +	    found.  The path begins with a leading / and is interpreted
   6.596 +	    relative to the root of the WAR.
   6.597 +
   6.598 +	  </xsd:documentation>
   6.599 +	</xsd:annotation>
   6.600 +      </xsd:element>
   6.601 +
   6.602 +      <xsd:element name="form-error-page"
   6.603 +		   type="j2ee:war-pathType">
   6.604 +	<xsd:annotation>
   6.605 +	  <xsd:documentation>
   6.606 +
   6.607 +	    The form-error-page element defines the location in
   6.608 +	    the web app where the error page that is displayed
   6.609 +	    when login is not successful can be found.
   6.610 +	    The path begins with a leading / and is interpreted
   6.611 +	    relative to the root of the WAR.
   6.612 +
   6.613 +	  </xsd:documentation>
   6.614 +	</xsd:annotation>
   6.615 +      </xsd:element>
   6.616 +
   6.617 +    </xsd:sequence>
   6.618 +    <xsd:attribute name="id" type="xsd:ID"/>
   6.619 +  </xsd:complexType>
   6.620 +
   6.621 +<!-- **************************************************** -->
   6.622 +
   6.623 +  <xsd:complexType name="http-methodType">
   6.624 +    <xsd:annotation>
   6.625 +
   6.626 +      <xsd:documentation>
   6.627 +
   6.628 +	The http-method contains an HTTP method recognized by the
   6.629 +	web-app, for example GET, POST, ...
   6.630 +
   6.631 +      </xsd:documentation>
   6.632 +    </xsd:annotation>
   6.633 +
   6.634 +    <xsd:simpleContent>
   6.635 +      <xsd:restriction base="j2ee:string">
   6.636 +	<xsd:enumeration value="GET"/>
   6.637 +	<xsd:enumeration value="POST"/>
   6.638 +	<xsd:enumeration value="PUT"/>
   6.639 +	<xsd:enumeration value="DELETE"/>
   6.640 +	<xsd:enumeration value="HEAD"/>
   6.641 +	<xsd:enumeration value="OPTIONS"/>
   6.642 +	<xsd:enumeration value="TRACE"/>
   6.643 +      </xsd:restriction>
   6.644 +    </xsd:simpleContent>
   6.645 +  </xsd:complexType>
   6.646 +
   6.647 +<!-- **************************************************** -->
   6.648 +
   6.649 +  <xsd:complexType name="listenerType">
   6.650 +    <xsd:annotation>
   6.651 +      <xsd:documentation>
   6.652 +
   6.653 +	The listenerType indicates the deployment properties for a web
   6.654 +	application listener bean.
   6.655 +
   6.656 +	Used in: web-app:listenerType
   6.657 +
   6.658 +      </xsd:documentation>
   6.659 +    </xsd:annotation>
   6.660 +
   6.661 +    <xsd:sequence>
   6.662 +      <xsd:group ref="j2ee:descriptionGroup"/>
   6.663 +      <xsd:element name="listener-class"
   6.664 +		   type="j2ee:fully-qualified-classType">
   6.665 +	<xsd:annotation>
   6.666 +	  <xsd:documentation>
   6.667 +
   6.668 +	    The listener-class element declares a class in the
   6.669 +	    application must be registered as a web
   6.670 +	    application listener bean. The value is the fully
   6.671 +	    qualified classname of the listener class.
   6.672 +
   6.673 +	  </xsd:documentation>
   6.674 +	</xsd:annotation>
   6.675 +      </xsd:element>
   6.676 +    </xsd:sequence>
   6.677 +    <xsd:attribute name="id" type="xsd:ID"/>
   6.678 +  </xsd:complexType>
   6.679 +
   6.680 +<!-- **************************************************** -->
   6.681 +
   6.682 +  <xsd:complexType name="locale-encoding-mapping-listType">
   6.683 +    <xsd:annotation>
   6.684 +      <xsd:documentation>
   6.685 +
   6.686 +	The locale-encoding-mapping-list contains one or more
   6.687 +	locale-encoding-mapping(s).
   6.688 +
   6.689 +      </xsd:documentation>
   6.690 +    </xsd:annotation>
   6.691 +
   6.692 +    <xsd:sequence>
   6.693 +      <xsd:element name="locale-encoding-mapping"
   6.694 +		   type="j2ee:locale-encoding-mappingType"
   6.695 +		   maxOccurs="unbounded"/>
   6.696 +    </xsd:sequence>
   6.697 +    <xsd:attribute name="id" type="xsd:ID"/>
   6.698 +  </xsd:complexType>
   6.699 +
   6.700 +<!-- **************************************************** -->
   6.701 +
   6.702 +  <xsd:complexType name="locale-encoding-mappingType">
   6.703 +    <xsd:annotation>
   6.704 +      <xsd:documentation>
   6.705 +
   6.706 +	The locale-encoding-mapping contains locale name and
   6.707 +	encoding name. The locale name must be either "Language-code",
   6.708 +	such as "ja", defined by ISO-639 or "Language-code_Country-code",
   6.709 +	such as "ja_JP".  "Country code" is defined by ISO-3166.
   6.710 +
   6.711 +      </xsd:documentation>
   6.712 +    </xsd:annotation>
   6.713 +
   6.714 +    <xsd:sequence>
   6.715 +      <xsd:element name="locale"
   6.716 +		   type="j2ee:localeType"/>
   6.717 +      <xsd:element name="encoding"
   6.718 +		   type="j2ee:encodingType"/>
   6.719 +    </xsd:sequence>
   6.720 +    <xsd:attribute name="id" type="xsd:ID"/>
   6.721 +  </xsd:complexType>
   6.722 +
   6.723 +<!-- **************************************************** -->
   6.724 +
   6.725 +  <xsd:simpleType name="localeType">
   6.726 +    <xsd:annotation>
   6.727 +      <xsd:documentation>
   6.728 +
   6.729 +	The localeType defines valid locale defined by ISO-639-1
   6.730 +	and ISO-3166.
   6.731 +
   6.732 +      </xsd:documentation>
   6.733 +    </xsd:annotation>
   6.734 +
   6.735 +    <xsd:restriction base="xsd:string">
   6.736 +      <xsd:pattern value="[a-z]{2}(_|-)?([\p{L}\-\p{Nd}]{2})?"/>
   6.737 +    </xsd:restriction>
   6.738 +  </xsd:simpleType>
   6.739 +
   6.740 +<!-- **************************************************** -->
   6.741 +
   6.742 +  <xsd:complexType name="login-configType">
   6.743 +    <xsd:annotation>
   6.744 +      <xsd:documentation>
   6.745 +
   6.746 +	The login-configType is used to configure the authentication
   6.747 +	method that should be used, the realm name that should be
   6.748 +	used for this application, and the attributes that are
   6.749 +	needed by the form login mechanism.
   6.750 +
   6.751 +	Used in: web-app
   6.752 +
   6.753 +      </xsd:documentation>
   6.754 +    </xsd:annotation>
   6.755 +
   6.756 +    <xsd:sequence>
   6.757 +      <xsd:element name="auth-method"
   6.758 +		   type="j2ee:auth-methodType"
   6.759 +		   minOccurs="0"/>
   6.760 +      <xsd:element name="realm-name"
   6.761 +		   type="j2ee:string" minOccurs="0">
   6.762 +	<xsd:annotation>
   6.763 +	  <xsd:documentation>
   6.764 +
   6.765 +	    The realm name element specifies the realm name to
   6.766 +	    use in HTTP Basic authorization.
   6.767 +
   6.768 +	  </xsd:documentation>
   6.769 +	</xsd:annotation>
   6.770 +      </xsd:element>
   6.771 +      <xsd:element name="form-login-config"
   6.772 +		   type="j2ee:form-login-configType"
   6.773 +		   minOccurs="0"/>
   6.774 +    </xsd:sequence>
   6.775 +    <xsd:attribute name="id" type="xsd:ID"/>
   6.776 +  </xsd:complexType>
   6.777 +
   6.778 +<!-- **************************************************** -->
   6.779 +
   6.780 +  <xsd:complexType name="mime-mappingType">
   6.781 +    <xsd:annotation>
   6.782 +      <xsd:documentation>
   6.783 +
   6.784 +	The mime-mappingType defines a mapping between an extension
   6.785 +	and a mime type.
   6.786 +
   6.787 +	Used in: web-app
   6.788 +
   6.789 +      </xsd:documentation>
   6.790 +    </xsd:annotation>
   6.791 +
   6.792 +    <xsd:sequence>
   6.793 +      <xsd:annotation>
   6.794 +	<xsd:documentation>
   6.795 +
   6.796 +	  The extension element contains a string describing an
   6.797 +	  extension. example: "txt"
   6.798 +
   6.799 +	</xsd:documentation>
   6.800 +      </xsd:annotation>
   6.801 +
   6.802 +      <xsd:element name="extension"
   6.803 +		   type="j2ee:string"/>
   6.804 +      <xsd:element name="mime-type"
   6.805 +		   type="j2ee:mime-typeType"/>
   6.806 +    </xsd:sequence>
   6.807 +    <xsd:attribute name="id" type="xsd:ID"/>
   6.808 +  </xsd:complexType>
   6.809 +
   6.810 +<!-- **************************************************** -->
   6.811 +
   6.812 +  <xsd:complexType name="mime-typeType">
   6.813 +    <xsd:annotation>
   6.814 +      <xsd:documentation>
   6.815 +
   6.816 +	The mime-typeType is used to indicate a defined mime type.
   6.817 +
   6.818 +	Example:
   6.819 +	"text/plain"
   6.820 +
   6.821 +	Used in: mime-mapping
   6.822 +
   6.823 +      </xsd:documentation>
   6.824 +    </xsd:annotation>
   6.825 +
   6.826 +    <xsd:simpleContent>
   6.827 +      <xsd:restriction base="j2ee:string">
   6.828 +	<xsd:pattern value="[\p{L}\-\p{Nd}]+/[\p{L}\-\p{Nd}\.]+"/>
   6.829 +      </xsd:restriction>
   6.830 +    </xsd:simpleContent>
   6.831 +  </xsd:complexType>
   6.832 +
   6.833 +<!-- **************************************************** -->
   6.834 +
   6.835 +  <xsd:complexType name="nonEmptyStringType">
   6.836 +    <xsd:annotation>
   6.837 +      <xsd:documentation>
   6.838 +	This type defines a string which contains at least one
   6.839 +	character.
   6.840 +      </xsd:documentation>
   6.841 +    </xsd:annotation>
   6.842 +    <xsd:simpleContent>
   6.843 +      <xsd:restriction base="j2ee:string">
   6.844 +	<xsd:minLength value="1"/>
   6.845 +      </xsd:restriction>
   6.846 +    </xsd:simpleContent>
   6.847 +  </xsd:complexType>
   6.848 +
   6.849 +<!-- **************************************************** -->
   6.850 +
   6.851 +  <xsd:complexType name="security-constraintType">
   6.852 +    <xsd:annotation>
   6.853 +      <xsd:documentation>
   6.854 +
   6.855 +	The security-constraintType is used to associate
   6.856 +	security constraints with one or more web resource
   6.857 +	collections
   6.858 +
   6.859 +	Used in: web-app
   6.860 +
   6.861 +      </xsd:documentation>
   6.862 +    </xsd:annotation>
   6.863 +
   6.864 +    <xsd:sequence>
   6.865 +      <xsd:element name="display-name"
   6.866 +		   type="j2ee:display-nameType"
   6.867 +		   minOccurs="0"
   6.868 +		   maxOccurs="unbounded"/>
   6.869 +      <xsd:element name="web-resource-collection"
   6.870 +		   type="j2ee:web-resource-collectionType"
   6.871 +		   maxOccurs="unbounded"/>
   6.872 +      <xsd:element name="auth-constraint"
   6.873 +		   type="j2ee:auth-constraintType"
   6.874 +		   minOccurs="0"/>
   6.875 +      <xsd:element name="user-data-constraint"
   6.876 +		   type="j2ee:user-data-constraintType"
   6.877 +		   minOccurs="0"/>
   6.878 +    </xsd:sequence>
   6.879 +    <xsd:attribute name="id" type="xsd:ID"/>
   6.880 +  </xsd:complexType>
   6.881 +
   6.882 +<!-- **************************************************** -->
   6.883 +
   6.884 +  <xsd:complexType name="servlet-mappingType">
   6.885 +    <xsd:annotation>
   6.886 +      <xsd:documentation>
   6.887 +
   6.888 +	The servlet-mappingType defines a mapping between a
   6.889 +	servlet and a url pattern.
   6.890 +
   6.891 +	Used in: web-app
   6.892 +
   6.893 +      </xsd:documentation>
   6.894 +    </xsd:annotation>
   6.895 +
   6.896 +    <xsd:sequence>
   6.897 +      <xsd:element name="servlet-name"
   6.898 +		   type="j2ee:servlet-nameType"/>
   6.899 +      <xsd:element name="url-pattern"
   6.900 +		   type="j2ee:url-patternType"/>
   6.901 +    </xsd:sequence>
   6.902 +    <xsd:attribute name="id" type="xsd:ID"/>
   6.903 +  </xsd:complexType>
   6.904 +
   6.905 +<!-- **************************************************** -->
   6.906 +
   6.907 +  <xsd:complexType name="servlet-nameType">
   6.908 +    <xsd:annotation>
   6.909 +      <xsd:documentation>
   6.910 +
   6.911 +	The servlet-name element contains the canonical name of the
   6.912 +	servlet. Each servlet name is unique within the web
   6.913 +	application.
   6.914 +
   6.915 +      </xsd:documentation>
   6.916 +    </xsd:annotation>
   6.917 +
   6.918 +    <xsd:simpleContent>
   6.919 +      <xsd:extension base="j2ee:nonEmptyStringType"/>
   6.920 +    </xsd:simpleContent>
   6.921 +  </xsd:complexType>
   6.922 +
   6.923 +<!-- **************************************************** -->
   6.924 +
   6.925 +  <xsd:complexType name="servletType">
   6.926 +    <xsd:annotation>
   6.927 +      <xsd:documentation>
   6.928 +
   6.929 +	The servletType is used to declare a servlet.
   6.930 +	It contains the declarative data of a
   6.931 +	servlet. If a jsp-file is specified and the load-on-startup
   6.932 +	element is present, then the JSP should be precompiled and
   6.933 +	loaded.
   6.934 +
   6.935 +	Used in: web-app
   6.936 +
   6.937 +      </xsd:documentation>
   6.938 +    </xsd:annotation>
   6.939 +
   6.940 +    <xsd:sequence>
   6.941 +      <xsd:group ref="j2ee:descriptionGroup"/>
   6.942 +      <xsd:element name="servlet-name"
   6.943 +		   type="j2ee:servlet-nameType"/>
   6.944 +      <xsd:choice>
   6.945 +	<xsd:element name="servlet-class"
   6.946 +		     type="j2ee:fully-qualified-classType">
   6.947 +	  <xsd:annotation>
   6.948 +	    <xsd:documentation>
   6.949 +
   6.950 +	      The servlet-class element contains the fully
   6.951 +	      qualified class name of the servlet.
   6.952 +
   6.953 +	    </xsd:documentation>
   6.954 +	  </xsd:annotation>
   6.955 +	</xsd:element>
   6.956 +
   6.957 +	<xsd:element name="jsp-file"
   6.958 +		     type="j2ee:jsp-fileType"/>
   6.959 +
   6.960 +      </xsd:choice>
   6.961 +
   6.962 +      <xsd:element name="init-param"
   6.963 +		   type="j2ee:param-valueType"
   6.964 +		   minOccurs="0" maxOccurs="unbounded"/>
   6.965 +      <xsd:element name="load-on-startup"
   6.966 +		   type="j2ee:xsdIntegerType"
   6.967 +		   minOccurs="0">
   6.968 +	<xsd:annotation>
   6.969 +	  <xsd:documentation>
   6.970 +
   6.971 +	    The load-on-startup element indicates that this
   6.972 +	    servlet should be loaded (instantiated and have
   6.973 +	    its init() called) on the startup of the web
   6.974 +	    application. The optional contents of these
   6.975 +	    element must be an integer indicating the order in
   6.976 +	    which the servlet should be loaded. If the value
   6.977 +	    is a negative integer, or the element is not
   6.978 +	    present, the container is free to load the servlet
   6.979 +	    whenever it chooses. If the value is a positive
   6.980 +	    integer or 0, the container must load and
   6.981 +	    initialize the servlet as the application is
   6.982 +	    deployed. The container must guarantee that
   6.983 +	    servlets marked with lower integers are loaded
   6.984 +	    before servlets marked with higher integers. The
   6.985 +	    container may choose the order of loading of
   6.986 +	    servlets with the same load-on-start-up value.
   6.987 +
   6.988 +	  </xsd:documentation>
   6.989 +	</xsd:annotation>
   6.990 +      </xsd:element>
   6.991 +      <xsd:element name="run-as"
   6.992 +		   type="j2ee:run-asType"
   6.993 +		   minOccurs="0"/>
   6.994 +      <xsd:element name="security-role-ref"
   6.995 +		   type="j2ee:security-role-refType"
   6.996 +		   minOccurs="0" maxOccurs="unbounded"/>
   6.997 +    </xsd:sequence>
   6.998 +    <xsd:attribute name="id" type="xsd:ID"/>
   6.999 +  </xsd:complexType>
  6.1000 +
  6.1001 +<!-- **************************************************** -->
  6.1002 +
  6.1003 +  <xsd:complexType name="session-configType">
  6.1004 +    <xsd:annotation>
  6.1005 +      <xsd:documentation>
  6.1006 +
  6.1007 +	The session-configType defines the session parameters
  6.1008 +	for this web application.
  6.1009 +
  6.1010 +	Used in: web-app
  6.1011 +
  6.1012 +      </xsd:documentation>
  6.1013 +    </xsd:annotation>
  6.1014 +
  6.1015 +    <xsd:sequence>
  6.1016 +      <xsd:element name="session-timeout"
  6.1017 +		   type="j2ee:xsdIntegerType"
  6.1018 +		   minOccurs="0">
  6.1019 +	<xsd:annotation>
  6.1020 +	  <xsd:documentation>
  6.1021 +
  6.1022 +	    The session-timeout element defines the default
  6.1023 +	    session timeout interval for all sessions created
  6.1024 +	    in this web application. The specified timeout
  6.1025 +	    must be expressed in a whole number of minutes.
  6.1026 +	    If the timeout is 0 or less, the container ensures
  6.1027 +	    the default behaviour of sessions is never to time
  6.1028 +	    out. If this element is not specified, the container
  6.1029 +	    must set its default timeout period.
  6.1030 +
  6.1031 +	  </xsd:documentation>
  6.1032 +	</xsd:annotation>
  6.1033 +      </xsd:element>
  6.1034 +    </xsd:sequence>
  6.1035 +    <xsd:attribute name="id" type="xsd:ID"/>
  6.1036 +  </xsd:complexType>
  6.1037 +
  6.1038 +<!-- **************************************************** -->
  6.1039 +
  6.1040 +  <xsd:complexType name="transport-guaranteeType">
  6.1041 +    <xsd:annotation>
  6.1042 +      <xsd:documentation>
  6.1043 +
  6.1044 +	The transport-guaranteeType specifies that the communication
  6.1045 +	between client and server should be NONE, INTEGRAL, or
  6.1046 +	CONFIDENTIAL. NONE means that the application does not
  6.1047 +	require any transport guarantees. A value of INTEGRAL means
  6.1048 +	that the application requires that the data sent between the
  6.1049 +	client and server be sent in such a way that it can't be
  6.1050 +	changed in transit. CONFIDENTIAL means that the application
  6.1051 +	requires that the data be transmitted in a fashion that
  6.1052 +	prevents other entities from observing the contents of the
  6.1053 +	transmission. In most cases, the presence of the INTEGRAL or
  6.1054 +	CONFIDENTIAL flag will indicate that the use of SSL is
  6.1055 +	required.
  6.1056 +
  6.1057 +	Used in: user-data-constraint
  6.1058 +
  6.1059 +      </xsd:documentation>
  6.1060 +    </xsd:annotation>
  6.1061 +
  6.1062 +    <xsd:simpleContent>
  6.1063 +      <xsd:restriction base="j2ee:string">
  6.1064 +	<xsd:enumeration value="NONE"/>
  6.1065 +	<xsd:enumeration value="INTEGRAL"/>
  6.1066 +	<xsd:enumeration value="CONFIDENTIAL"/>
  6.1067 +      </xsd:restriction>
  6.1068 +    </xsd:simpleContent>
  6.1069 +  </xsd:complexType>
  6.1070 +
  6.1071 +<!-- **************************************************** -->
  6.1072 +
  6.1073 +  <xsd:complexType name="user-data-constraintType">
  6.1074 +    <xsd:annotation>
  6.1075 +      <xsd:documentation>
  6.1076 +
  6.1077 +	The user-data-constraintType is used to indicate how
  6.1078 +	data communicated between the client and container should be
  6.1079 +	protected.
  6.1080 +
  6.1081 +	Used in: security-constraint
  6.1082 +
  6.1083 +      </xsd:documentation>
  6.1084 +    </xsd:annotation>
  6.1085 +
  6.1086 +    <xsd:sequence>
  6.1087 +      <xsd:element name="description"
  6.1088 +		   type="j2ee:descriptionType"
  6.1089 +		   minOccurs="0"
  6.1090 +		   maxOccurs="unbounded"/>
  6.1091 +      <xsd:element name="transport-guarantee"
  6.1092 +		   type="j2ee:transport-guaranteeType"/>
  6.1093 +    </xsd:sequence>
  6.1094 +    <xsd:attribute name="id" type="xsd:ID"/>
  6.1095 +  </xsd:complexType>
  6.1096 +
  6.1097 +<!-- **************************************************** -->
  6.1098 +
  6.1099 +  <xsd:complexType name="war-pathType">
  6.1100 +    <xsd:annotation>
  6.1101 +      <xsd:documentation>
  6.1102 +
  6.1103 +	The elements that use this type designate a path starting
  6.1104 +	with a "/" and interpreted relative to the root of a WAR
  6.1105 +	file.
  6.1106 +
  6.1107 +      </xsd:documentation>
  6.1108 +    </xsd:annotation>
  6.1109 +    <xsd:simpleContent>
  6.1110 +      <xsd:restriction base="j2ee:string">
  6.1111 +	<xsd:pattern value="/.*"/>
  6.1112 +      </xsd:restriction>
  6.1113 +    </xsd:simpleContent>
  6.1114 +  </xsd:complexType>
  6.1115 +
  6.1116 +<!-- **************************************************** -->
  6.1117 +
  6.1118 +  <xsd:simpleType name="web-app-versionType">
  6.1119 +    <xsd:annotation>
  6.1120 +      <xsd:documentation>
  6.1121 +
  6.1122 +	This type contains the recognized versions of
  6.1123 +	web-application supported. It is used to designate the
  6.1124 +	version of the web application.
  6.1125 +
  6.1126 +      </xsd:documentation>
  6.1127 +    </xsd:annotation>
  6.1128 +    <xsd:restriction base="xsd:token">
  6.1129 +      <xsd:enumeration value="2.4"/>
  6.1130 +    </xsd:restriction>
  6.1131 +  </xsd:simpleType>
  6.1132 +
  6.1133 +<!-- **************************************************** -->
  6.1134 +
  6.1135 +  <xsd:complexType name="web-appType">
  6.1136 +
  6.1137 +    <xsd:choice minOccurs="0" maxOccurs="unbounded">
  6.1138 +      <xsd:group ref="j2ee:descriptionGroup"/>
  6.1139 +      <xsd:element name="distributable"
  6.1140 +		   type="j2ee:emptyType"/>
  6.1141 +      <xsd:element name="context-param"
  6.1142 +		   type="j2ee:param-valueType">
  6.1143 +
  6.1144 +	<xsd:annotation>
  6.1145 +	  <xsd:documentation>
  6.1146 +
  6.1147 +	    The context-param element contains the declaration
  6.1148 +	    of a web application's servlet context
  6.1149 +	    initialization parameters.
  6.1150 +
  6.1151 +	  </xsd:documentation>
  6.1152 +	</xsd:annotation>
  6.1153 +      </xsd:element>
  6.1154 +
  6.1155 +      <xsd:element name="filter"
  6.1156 +		   type="j2ee:filterType"/>
  6.1157 +      <xsd:element name="filter-mapping"
  6.1158 +		   type="j2ee:filter-mappingType"/>
  6.1159 +      <xsd:element name="listener"
  6.1160 +		   type="j2ee:listenerType"/>
  6.1161 +      <xsd:element name="servlet"
  6.1162 +		   type="j2ee:servletType"/>
  6.1163 +      <xsd:element name="servlet-mapping"
  6.1164 +		   type="j2ee:servlet-mappingType"/>
  6.1165 +      <xsd:element name="session-config"
  6.1166 +		   type="j2ee:session-configType"/>
  6.1167 +      <xsd:element name="mime-mapping"
  6.1168 +		   type="j2ee:mime-mappingType"/>
  6.1169 +      <xsd:element name="welcome-file-list"
  6.1170 +		   type="j2ee:welcome-file-listType"/>
  6.1171 +      <xsd:element name="error-page"
  6.1172 +		   type="j2ee:error-pageType"/>
  6.1173 +      <xsd:element name="jsp-config"
  6.1174 +		   type="j2ee:jsp-configType"/>
  6.1175 +      <xsd:element name="security-constraint"
  6.1176 +		   type="j2ee:security-constraintType"/>
  6.1177 +      <xsd:element name="login-config"
  6.1178 +		   type="j2ee:login-configType"/>
  6.1179 +      <xsd:element name="security-role"
  6.1180 +		   type="j2ee:security-roleType"/>
  6.1181 +      <xsd:group ref="j2ee:jndiEnvironmentRefsGroup"/>
  6.1182 +      <xsd:element name="message-destination"
  6.1183 +		   type="j2ee:message-destinationType"/>
  6.1184 +      <xsd:element name="locale-encoding-mapping-list"
  6.1185 +		   type="j2ee:locale-encoding-mapping-listType"/>
  6.1186 +    </xsd:choice>
  6.1187 +
  6.1188 +    <xsd:attribute name="version"
  6.1189 +		   type="j2ee:web-app-versionType"
  6.1190 +		   use="required"/>
  6.1191 +    <xsd:attribute name="id" type="xsd:ID"/>
  6.1192 +  </xsd:complexType>
  6.1193 +
  6.1194 +<!-- **************************************************** -->
  6.1195 +
  6.1196 +  <xsd:complexType name="web-resource-collectionType">
  6.1197 +    <xsd:annotation>
  6.1198 +      <xsd:documentation>
  6.1199 +
  6.1200 +	The web-resource-collectionType is used to identify a subset
  6.1201 +	of the resources and HTTP methods on those resources within
  6.1202 +	a web application to which a security constraint applies. If
  6.1203 +	no HTTP methods are specified, then the security constraint
  6.1204 +	applies to all HTTP methods.
  6.1205 +
  6.1206 +	Used in: security-constraint
  6.1207 +
  6.1208 +      </xsd:documentation>
  6.1209 +    </xsd:annotation>
  6.1210 +
  6.1211 +    <xsd:sequence>
  6.1212 +      <xsd:element name="web-resource-name"
  6.1213 +		   type="j2ee:string">
  6.1214 +	<xsd:annotation>
  6.1215 +	  <xsd:documentation>
  6.1216 +
  6.1217 +	    The web-resource-name contains the name of this web
  6.1218 +	    resource collection.
  6.1219 +
  6.1220 +	  </xsd:documentation>
  6.1221 +	</xsd:annotation>
  6.1222 +      </xsd:element>
  6.1223 +      <xsd:element name="description"
  6.1224 +		   type="j2ee:descriptionType"
  6.1225 +		   minOccurs="0"
  6.1226 +		   maxOccurs="unbounded"/>
  6.1227 +      <xsd:element name="url-pattern"
  6.1228 +		   type="j2ee:url-patternType"
  6.1229 +		   maxOccurs="unbounded"/>
  6.1230 +      <xsd:element name="http-method"
  6.1231 +		   type="j2ee:http-methodType"
  6.1232 +		   minOccurs="0" maxOccurs="unbounded"/>
  6.1233 +    </xsd:sequence>
  6.1234 +    <xsd:attribute name="id" type="xsd:ID"/>
  6.1235 +  </xsd:complexType>
  6.1236 +
  6.1237 +<!-- **************************************************** -->
  6.1238 +
  6.1239 +  <xsd:complexType name="welcome-file-listType">
  6.1240 +    <xsd:annotation>
  6.1241 +      <xsd:documentation>
  6.1242 +
  6.1243 +	The welcome-file-list contains an ordered list of welcome
  6.1244 +	files elements.
  6.1245 +
  6.1246 +	Used in: web-app
  6.1247 +
  6.1248 +      </xsd:documentation>
  6.1249 +    </xsd:annotation>
  6.1250 +
  6.1251 +    <xsd:sequence>
  6.1252 +      <xsd:element name="welcome-file"
  6.1253 +		   type="j2ee:string"
  6.1254 +		   maxOccurs="unbounded">
  6.1255 +	<xsd:annotation>
  6.1256 +	  <xsd:documentation>
  6.1257 +
  6.1258 +	    The welcome-file element contains file name to use
  6.1259 +	    as a default welcome file, such as index.html
  6.1260 +
  6.1261 +	  </xsd:documentation>
  6.1262 +	</xsd:annotation>
  6.1263 +      </xsd:element>
  6.1264 +    </xsd:sequence>
  6.1265 +    <xsd:attribute name="id" type="xsd:ID"/>
  6.1266 +  </xsd:complexType>
  6.1267 +
  6.1268 +</xsd:schema>
  6.1269 +
     7.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.2 +++ b/schema2beans/test/unit/src/data/final_j2ee_1_4.xsd	Tue Oct 14 20:30:08 2003 +0000
     7.3 @@ -0,0 +1,1552 @@
     7.4 +<?xml version="1.0" encoding="UTF-8"?>
     7.5 +<xsd:schema
     7.6 +     targetNamespace="http://java.sun.com/xml/ns/j2ee"
     7.7 +     xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
     7.8 +     xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     7.9 +     elementFormDefault="qualified"
    7.10 +     attributeFormDefault="unqualified"
    7.11 +     version="1.4">
    7.12 +  <xsd:annotation>
    7.13 +    <xsd:documentation>
    7.14 +      @(#)j2ee_1_4.xsds	1.40 03/04/10
    7.15 +    </xsd:documentation>
    7.16 +  </xsd:annotation>
    7.17 +
    7.18 +  <xsd:annotation>
    7.19 +    <xsd:documentation>
    7.20 +
    7.21 +      Copyright 2002 Sun Microsystems, Inc., 901 San Antonio
    7.22 +      Road, Palo Alto, California 94303, U.S.A. All rights
    7.23 +      reserved.
    7.24 +
    7.25 +      Sun Microsystems, Inc. has intellectual property rights
    7.26 +      relating to technology described in this document. In
    7.27 +      particular, and without limitation, these intellectual
    7.28 +      property rights may include one or more of the U.S. patents
    7.29 +      listed at http://www.sun.com/patents and one or more
    7.30 +      additional patents or pending patent applications in the
    7.31 +      U.S. and other countries.
    7.32 +
    7.33 +      This document and the technology which it describes are
    7.34 +      distributed under licenses restricting their use, copying,
    7.35 +      distribution, and decompilation. No part of this document
    7.36 +      may be reproduced in any form by any means without prior
    7.37 +      written authorization of Sun and its licensors, if any.
    7.38 +
    7.39 +      Third-party software, including font technology, is
    7.40 +      copyrighted and licensed from Sun suppliers.
    7.41 +
    7.42 +      Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
    7.43 +      JavaServer Pages, Enterprise JavaBeans and the Java Coffee
    7.44 +      Cup logo are trademarks or registered trademarks of Sun
    7.45 +      Microsystems, Inc. in the U.S. and other countries.
    7.46 +
    7.47 +      Federal Acquisitions: Commercial Software - Government Users
    7.48 +      Subject to Standard License Terms and Conditions.
    7.49 +
    7.50 +    </xsd:documentation>
    7.51 +  </xsd:annotation>
    7.52 +<xsd:annotation>
    7.53 +<xsd:documentation>
    7.54 +
    7.55 +The following definitions that appear in the common
    7.56 +shareable schema(s) of J2EE deployment descriptors should be
    7.57 +interpreted with respect to the context they are included:
    7.58 +
    7.59 +Deployment Component may indicate one of the following:
    7.60 +    j2ee application;
    7.61 +    application client;
    7.62 +    web application;
    7.63 +    enterprise bean;
    7.64 +    resource adapter;
    7.65 +
    7.66 +Deployment File may indicate one of the following:
    7.67 +    ear file;
    7.68 +    war file;
    7.69 +    jar file;
    7.70 +    rar file;
    7.71 +
    7.72 +</xsd:documentation>
    7.73 +</xsd:annotation>
    7.74 +
    7.75 +  <xsd:import namespace="http://www.w3.org/XML/1998/namespace"
    7.76 +	      schemaLocation="xml.xsd"/>
    7.77 +
    7.78 +  <xsd:include schemaLocation=
    7.79 +	"j2ee_web_services_client_1_1.xsd"/>
    7.80 +
    7.81 +
    7.82 +<!-- **************************************************** -->
    7.83 +
    7.84 +  <xsd:group name="descriptionGroup">
    7.85 +    <xsd:annotation>
    7.86 +      <xsd:documentation>
    7.87 +
    7.88 +	This group keeps the usage of the contained description related
    7.89 +	elements consistent across J2EE deployment descriptors.
    7.90 +
    7.91 +	All elements may occur multiple times with different languages,
    7.92 +	to support localization of the content.
    7.93 +
    7.94 +      </xsd:documentation>
    7.95 +    </xsd:annotation>
    7.96 +    <xsd:sequence>
    7.97 +      <xsd:element name="description"
    7.98 +		   type="j2ee:descriptionType"
    7.99 +		   minOccurs="0"
   7.100 +		   maxOccurs="unbounded"/>
   7.101 +      <xsd:element name="display-name"
   7.102 +		   type="j2ee:display-nameType"
   7.103 +		   minOccurs="0"
   7.104 +		   maxOccurs="unbounded"/>
   7.105 +      <xsd:element name="icon"
   7.106 +		   type="j2ee:iconType"
   7.107 +		   minOccurs="0"
   7.108 +		   maxOccurs="unbounded"/>
   7.109 +    </xsd:sequence>
   7.110 +  </xsd:group>
   7.111 +
   7.112 +<!-- **************************************************** -->
   7.113 +
   7.114 +  <xsd:complexType name="descriptionType">
   7.115 +    <xsd:annotation>
   7.116 +      <xsd:documentation>
   7.117 +
   7.118 +	The description type is used by a description element to
   7.119 +	provide text describing the parent element.  The elements
   7.120 +	that use this type should include any information that the
   7.121 +	Deployment Component's Deployment File file producer wants
   7.122 +	to provide to the consumer of the Deployment Component's
   7.123 +	Deployment File (i.e., to the Deployer). Typically, the
   7.124 +	tools used by such a Deployment File consumer will display
   7.125 +	the description when processing the parent element that
   7.126 +	contains the description.
   7.127 +
   7.128 +	The lang attribute defines the language that the
   7.129 +	description is provided in. The default value is "en" (English).
   7.130 +
   7.131 +      </xsd:documentation>
   7.132 +    </xsd:annotation>
   7.133 +    <xsd:simpleContent>
   7.134 +      <xsd:extension base="j2ee:xsdStringType">
   7.135 +	<xsd:attribute ref="xml:lang"/>
   7.136 +      </xsd:extension>
   7.137 +    </xsd:simpleContent>
   7.138 +  </xsd:complexType>
   7.139 +
   7.140 +<!-- **************************************************** -->
   7.141 +
   7.142 +  <xsd:simpleType name="dewey-versionType">
   7.143 +    <xsd:annotation>
   7.144 +      <xsd:documentation>
   7.145 +
   7.146 +	This type defines a dewey decimal which is used
   7.147 +	to describe versions of documents.
   7.148 +
   7.149 +      </xsd:documentation>
   7.150 +    </xsd:annotation>
   7.151 +
   7.152 +    <xsd:restriction base="xsd:decimal">
   7.153 +      <xsd:whiteSpace value="collapse"/>
   7.154 +    </xsd:restriction>
   7.155 +
   7.156 +  </xsd:simpleType>
   7.157 +
   7.158 +<!-- **************************************************** -->
   7.159 +
   7.160 +  <xsd:complexType name="display-nameType">
   7.161 +    <xsd:annotation>
   7.162 +      <xsd:documentation>
   7.163 +	<![CDATA[
   7.164 +
   7.165 +	  The display-name type contains a short name that is intended
   7.166 +	  to be displayed by tools. It is used by display-name
   7.167 +	  elements.  The display name need not be unique.
   7.168 +
   7.169 +	  Example:
   7.170 +
   7.171 +	  ...
   7.172 +	     <display-name xml:lang="en">Employee Self Service</display-name>
   7.173 +
   7.174 +	  The value of the xml:lang attribute is "en" (English) by default.
   7.175 +
   7.176 +	  ]]>
   7.177 +      </xsd:documentation>
   7.178 +    </xsd:annotation>
   7.179 +    <xsd:simpleContent>
   7.180 +      <xsd:extension base="j2ee:string">
   7.181 +	<xsd:attribute ref="xml:lang"/>
   7.182 +      </xsd:extension>
   7.183 +    </xsd:simpleContent>
   7.184 +  </xsd:complexType>
   7.185 +
   7.186 +<!-- **************************************************** -->
   7.187 +
   7.188 +  <xsd:complexType name="ejb-linkType">
   7.189 +    <xsd:annotation>
   7.190 +      <xsd:documentation>
   7.191 +	<![CDATA[
   7.192 +
   7.193 +	  The ejb-linkType is used by ejb-link
   7.194 +	  elements in the ejb-ref or ejb-local-ref elements to specify
   7.195 +	  that an EJB reference is linked to enterprise bean.
   7.196 +
   7.197 +	  The value of the ejb-link element must be the ejb-name of an
   7.198 +	  enterprise bean in the same ejb-jar file or in another ejb-jar
   7.199 +	  file in the same J2EE application unit.
   7.200 +
   7.201 +	  Alternatively, the name in the ejb-link element may be
   7.202 +	  composed of a path name specifying the ejb-jar containing the
   7.203 +	  referenced enterprise bean with the ejb-name of the target
   7.204 +	  bean appended and separated from the path name by "#".  The
   7.205 +	  path name is relative to the Deployment File containing
   7.206 +	  Deployment Component that is referencing the enterprise
   7.207 +	  bean.  This allows multiple enterprise beans with the same
   7.208 +	  ejb-name to be uniquely identified.
   7.209 +
   7.210 +	  Examples:
   7.211 +
   7.212 +	      <ejb-link>EmployeeRecord</ejb-link>
   7.213 +
   7.214 +	      <ejb-link>../products/product.jar#ProductEJB</ejb-link>
   7.215 +
   7.216 +	  ]]>
   7.217 +      </xsd:documentation>
   7.218 +    </xsd:annotation>
   7.219 +    <xsd:simpleContent>
   7.220 +      <xsd:restriction base="j2ee:string"/>
   7.221 +    </xsd:simpleContent>
   7.222 +  </xsd:complexType>
   7.223 +
   7.224 +<!-- **************************************************** -->
   7.225 +
   7.226 +  <xsd:complexType name="ejb-local-refType">
   7.227 +    <xsd:annotation>
   7.228 +      <xsd:documentation>
   7.229 +
   7.230 +	The ejb-local-refType is used by ejb-local-ref elements for
   7.231 +	the declaration of a reference to an enterprise bean's local
   7.232 +	home. The declaration consists of:
   7.233 +
   7.234 +	    - an optional description
   7.235 +	    - the EJB reference name used in the code of the Deployment
   7.236 +	      Component that's referencing the enterprise bean
   7.237 +	    - the expected type of the referenced enterprise bean
   7.238 +	    - the expected local home and local interfaces of the
   7.239 +	      referenced enterprise bean
   7.240 +	    - optional ejb-link information, used to specify the
   7.241 +	      referenced enterprise bean
   7.242 +
   7.243 +      </xsd:documentation>
   7.244 +    </xsd:annotation>
   7.245 +
   7.246 +    <xsd:sequence>
   7.247 +      <xsd:element name="description"
   7.248 +		   type="j2ee:descriptionType"
   7.249 +		   minOccurs="0"
   7.250 +		   maxOccurs="unbounded"/>
   7.251 +      <xsd:element name="ejb-ref-name"
   7.252 +		   type="j2ee:ejb-ref-nameType"/>
   7.253 +      <xsd:element name="ejb-ref-type"
   7.254 +		   type="j2ee:ejb-ref-typeType"/>
   7.255 +      <xsd:element name="local-home"
   7.256 +		   type="j2ee:local-homeType"/>
   7.257 +      <xsd:element name="local"
   7.258 +		   type="j2ee:localType"/>
   7.259 +      <xsd:element name="ejb-link"
   7.260 +		   type="j2ee:ejb-linkType"
   7.261 +		   minOccurs="0"/>
   7.262 +    </xsd:sequence>
   7.263 +    <xsd:attribute name="id" type="xsd:ID"/>
   7.264 +  </xsd:complexType>
   7.265 +
   7.266 +<!-- **************************************************** -->
   7.267 +
   7.268 +  <xsd:complexType name="ejb-ref-nameType">
   7.269 +    <xsd:annotation>
   7.270 +      <xsd:documentation>
   7.271 +	<![CDATA[
   7.272 +
   7.273 +	  The ejb-ref-name element contains the name of an EJB
   7.274 +	  reference. The EJB reference is an entry in the
   7.275 +	  Deployment Component's environment and is relative to the
   7.276 +	  java:comp/env context.  The name must be unique within the
   7.277 +	  Deployment Component.
   7.278 +
   7.279 +	  It is recommended that name is prefixed with "ejb/".
   7.280 +
   7.281 +	  Example:
   7.282 +
   7.283 +	  <ejb-ref-name>ejb/Payroll</ejb-ref-name>
   7.284 +
   7.285 +	  ]]>
   7.286 +      </xsd:documentation>
   7.287 +    </xsd:annotation>
   7.288 +    <xsd:simpleContent>
   7.289 +      <xsd:restriction base="j2ee:jndi-nameType"/>
   7.290 +    </xsd:simpleContent>
   7.291 +  </xsd:complexType>
   7.292 +
   7.293 +<!-- **************************************************** -->
   7.294 +
   7.295 +  <xsd:complexType name="ejb-ref-typeType">
   7.296 +    <xsd:annotation>
   7.297 +      <xsd:documentation>
   7.298 +
   7.299 +	The ejb-ref-typeType contains the expected type of the
   7.300 +	referenced enterprise bean.
   7.301 +
   7.302 +	The ejb-ref-type designates a value
   7.303 +	that must be one of the following:
   7.304 +
   7.305 +	    Entity
   7.306 +	    Session
   7.307 +
   7.308 +      </xsd:documentation>
   7.309 +    </xsd:annotation>
   7.310 +    <xsd:simpleContent>
   7.311 +      <xsd:restriction base="j2ee:string">
   7.312 +	<xsd:enumeration value="Entity"/>
   7.313 +	<xsd:enumeration value="Session"/>
   7.314 +      </xsd:restriction>
   7.315 +    </xsd:simpleContent>
   7.316 +  </xsd:complexType>
   7.317 +
   7.318 +<!-- **************************************************** -->
   7.319 +
   7.320 +  <xsd:complexType name="ejb-refType">
   7.321 +    <xsd:annotation>
   7.322 +      <xsd:documentation>
   7.323 +
   7.324 +	The ejb-refType is used by ejb-ref elements for the
   7.325 +	declaration of a reference to an enterprise bean's home. The
   7.326 +	declaration consists of:
   7.327 +
   7.328 +	    - an optional description
   7.329 +	    - the EJB reference name used in the code of
   7.330 +	      the Deployment Component that's referencing the enterprise
   7.331 +	      bean
   7.332 +	    - the expected type of the referenced enterprise bean
   7.333 +	    - the expected home and remote interfaces of the referenced
   7.334 +	      enterprise bean
   7.335 +	    - optional ejb-link information, used to specify the
   7.336 +	      referenced enterprise bean
   7.337 +
   7.338 +      </xsd:documentation>
   7.339 +    </xsd:annotation>
   7.340 +
   7.341 +    <xsd:sequence>
   7.342 +      <xsd:element name="description"
   7.343 +		   type="j2ee:descriptionType"
   7.344 +		   minOccurs="0"
   7.345 +		   maxOccurs="unbounded"/>
   7.346 +      <xsd:element name="ejb-ref-name"
   7.347 +		   type="j2ee:ejb-ref-nameType"/>
   7.348 +      <xsd:element name="ejb-ref-type"
   7.349 +		   type="j2ee:ejb-ref-typeType"/>
   7.350 +
   7.351 +      <xsd:element name="home"
   7.352 +		   type="j2ee:homeType"/>
   7.353 +      <xsd:element name="remote"
   7.354 +		   type="j2ee:remoteType"/>
   7.355 +      <xsd:element name="ejb-link"
   7.356 +		   type="j2ee:ejb-linkType"
   7.357 +		   minOccurs="0"/>
   7.358 +    </xsd:sequence>
   7.359 +    <xsd:attribute name="id" type="xsd:ID"/>
   7.360 +  </xsd:complexType>
   7.361 +
   7.362 +<!-- **************************************************** -->
   7.363 +
   7.364 +  <xsd:complexType name="emptyType">
   7.365 +    <xsd:annotation>
   7.366 +      <xsd:documentation>
   7.367 +
   7.368 +	This type is used to designate an empty
   7.369 +	element when used.
   7.370 +
   7.371 +      </xsd:documentation>
   7.372 +    </xsd:annotation>
   7.373 +    <xsd:attribute name="id" type="xsd:ID"/>
   7.374 +  </xsd:complexType>
   7.375 +
   7.376 +<!-- **************************************************** -->
   7.377 +
   7.378 +  <xsd:complexType name="env-entry-type-valuesType">
   7.379 +    <xsd:annotation>
   7.380 +      <xsd:documentation>
   7.381 +	<![CDATA[
   7.382 +
   7.383 +	  This type contains the fully-qualified Java type of the
   7.384 +	  environment entry value that is expected by the
   7.385 +	  application's code.
   7.386 +
   7.387 +	  The following are the legal values of env-entry-type-valuesType:
   7.388 +
   7.389 +	      java.lang.Boolean
   7.390 +	      java.lang.Byte
   7.391 +	      java.lang.Character
   7.392 +	      java.lang.String
   7.393 +	      java.lang.Short
   7.394 +	      java.lang.Integer
   7.395 +	      java.lang.Long
   7.396 +	      java.lang.Float
   7.397 +	      java.lang.Double
   7.398 +
   7.399 +	  Example:
   7.400 +
   7.401 +	  <env-entry-type>java.lang.Boolean</env-entry-type>
   7.402 +
   7.403 +	  ]]>
   7.404 +      </xsd:documentation>
   7.405 +    </xsd:annotation>
   7.406 +    <xsd:simpleContent>
   7.407 +      <xsd:restriction base="j2ee:string">
   7.408 +	<xsd:enumeration value="java.lang.Boolean"/>
   7.409 +	<xsd:enumeration value="java.lang.Byte"/>
   7.410 +	<xsd:enumeration value="java.lang.Character"/>
   7.411 +	<xsd:enumeration value="java.lang.String"/>
   7.412 +	<xsd:enumeration value="java.lang.Short"/>
   7.413 +	<xsd:enumeration value="java.lang.Integer"/>
   7.414 +	<xsd:enumeration value="java.lang.Long"/>
   7.415 +	<xsd:enumeration value="java.lang.Float"/>
   7.416 +	<xsd:enumeration value="java.lang.Double"/>
   7.417 +      </xsd:restriction>
   7.418 +    </xsd:simpleContent>
   7.419 +  </xsd:complexType>
   7.420 +
   7.421 +<!-- **************************************************** -->
   7.422 +
   7.423 +  <xsd:complexType name="env-entryType">
   7.424 +    <xsd:annotation>
   7.425 +      <xsd:documentation>
   7.426 +
   7.427 +	The env-entryType is used to declare an application's
   7.428 +	environment entry. The declaration consists of an optional
   7.429 +	description, the name of the environment entry, and an
   7.430 +	optional value.  If a value is not specified, one must be
   7.431 +	supplied during deployment.
   7.432 +
   7.433 +	It is used by env-entry elements.
   7.434 +
   7.435 +      </xsd:documentation>
   7.436 +    </xsd:annotation>
   7.437 +
   7.438 +    <xsd:sequence>
   7.439 +      <xsd:element name="description"
   7.440 +		   type="j2ee:descriptionType"
   7.441 +		   minOccurs="0"
   7.442 +		   maxOccurs="unbounded"/>
   7.443 +      <xsd:element name="env-entry-name"
   7.444 +		   type="j2ee:jndi-nameType">
   7.445 +	<xsd:annotation>
   7.446 +	  <xsd:documentation>
   7.447 +	    <![CDATA[
   7.448 +
   7.449 +	      The env-entry-name element contains the name of a
   7.450 +	      Deployment Component's environment entry.  The name
   7.451 +	      is a JNDI name relative to the java:comp/env
   7.452 +	      context.  The name must be unique within a
   7.453 +	      Deployment Component. The uniqueness
   7.454 +	      constraints must be defined within the declared
   7.455 +	      context.
   7.456 +
   7.457 +	      Example:
   7.458 +
   7.459 +	      <env-entry-name>minAmount</env-entry-name>
   7.460 +
   7.461 +	      ]]>
   7.462 +	  </xsd:documentation>
   7.463 +	</xsd:annotation>
   7.464 +      </xsd:element>
   7.465 +
   7.466 +      <xsd:element name="env-entry-type"
   7.467 +		   type="j2ee:env-entry-type-valuesType"/>
   7.468 +
   7.469 +      <xsd:element name="env-entry-value"
   7.470 +		   type="j2ee:xsdStringType"
   7.471 +		   minOccurs="0">
   7.472 +	<xsd:annotation>
   7.473 +	  <xsd:documentation>
   7.474 +	    <![CDATA[
   7.475 +
   7.476 +	      The env-entry-value designates the value of a
   7.477 +	      Deployment Component's environment entry. The value
   7.478 +	      must be a String that is valid for the
   7.479 +	      constructor of the specified type that takes a
   7.480 +	      single String parameter, or for java.lang.Character,
   7.481 +	      a single character.
   7.482 +
   7.483 +	      Example:
   7.484 +
   7.485 +	      <env-entry-value>100.00</env-entry-value>
   7.486 +
   7.487 +	      ]]>
   7.488 +	  </xsd:documentation>
   7.489 +	</xsd:annotation>
   7.490 +      </xsd:element>
   7.491 +
   7.492 +    </xsd:sequence>
   7.493 +    <xsd:attribute name="id" type="xsd:ID"/>
   7.494 +  </xsd:complexType>
   7.495 +
   7.496 +<!-- **************************************************** -->
   7.497 +
   7.498 +  <xsd:complexType name="fully-qualified-classType">
   7.499 +    <xsd:annotation>
   7.500 +      <xsd:documentation>
   7.501 +
   7.502 +	The elements that use this type designate the name of a
   7.503 +	Java class or interface.
   7.504 +
   7.505 +      </xsd:documentation>
   7.506 +    </xsd:annotation>
   7.507 +    <xsd:simpleContent>
   7.508 +      <xsd:restriction base="j2ee:string"/>
   7.509 +    </xsd:simpleContent>
   7.510 +  </xsd:complexType>
   7.511 +
   7.512 +<!-- **************************************************** -->
   7.513 +
   7.514 +  <xsd:complexType name="generic-booleanType">
   7.515 +    <xsd:annotation>
   7.516 +      <xsd:documentation>
   7.517 +
   7.518 +	This type defines four different values which can designate
   7.519 +	boolean values. This includes values yes and no which are
   7.520 +	not designated by xsd:boolean
   7.521 +
   7.522 +      </xsd:documentation>
   7.523 +    </xsd:annotation>
   7.524 +    <xsd:simpleContent>
   7.525 +      <xsd:restriction base="j2ee:string">
   7.526 +	<xsd:enumeration value="true"/>
   7.527 +	<xsd:enumeration value="false"/>
   7.528 +	<xsd:enumeration value="yes"/>
   7.529 +	<xsd:enumeration value="no"/>
   7.530 +      </xsd:restriction>
   7.531 +    </xsd:simpleContent>
   7.532 +  </xsd:complexType>
   7.533 +
   7.534 +<!-- **************************************************** -->
   7.535 +
   7.536 +  <xsd:complexType name="homeType">
   7.537 +    <xsd:annotation>
   7.538 +      <xsd:documentation>
   7.539 +	<![CDATA[
   7.540 +
   7.541 +	  The homeType defines the fully-qualified name of
   7.542 +	  an enterprise bean's home interface.
   7.543 +
   7.544 +	  Example:
   7.545 +
   7.546 +	      <home>com.aardvark.payroll.PayrollHome</home>
   7.547 +
   7.548 +	  ]]>
   7.549 +      </xsd:documentation>
   7.550 +    </xsd:annotation>
   7.551 +    <xsd:simpleContent>
   7.552 +      <xsd:restriction base="j2ee:fully-qualified-classType"/>
   7.553 +    </xsd:simpleContent>
   7.554 +  </xsd:complexType>
   7.555 +
   7.556 +<!-- **************************************************** -->
   7.557 +
   7.558 +  <xsd:complexType name="iconType">
   7.559 +    <xsd:annotation>
   7.560 +      <xsd:documentation>
   7.561 +
   7.562 +	The icon type contains small-icon and large-icon elements
   7.563 +	that specify the file names for small and large GIF or
   7.564 +	JPEG icon images used to represent the parent element in a
   7.565 +	GUI tool.
   7.566 +
   7.567 +	The xml:lang attribute defines the language that the
   7.568 +	icon file names are provided in. Its value is "en" (English)
   7.569 +	by default.
   7.570 +
   7.571 +      </xsd:documentation>
   7.572 +    </xsd:annotation>
   7.573 +
   7.574 +    <xsd:sequence>
   7.575 +      <xsd:element name="small-icon" type="j2ee:pathType"
   7.576 +		   minOccurs="0">
   7.577 +	<xsd:annotation>
   7.578 +	  <xsd:documentation>
   7.579 +	    <![CDATA[
   7.580 +
   7.581 +	      The small-icon element contains the name of a file
   7.582 +	      containing a small (16 x 16) icon image. The file
   7.583 +	      name is a relative path within the Deployment
   7.584 +	      Component's Deployment File.
   7.585 +
   7.586 +	      The image may be either in the JPEG or GIF format.
   7.587 +	      The icon can be used by tools.
   7.588 +
   7.589 +	      Example:
   7.590 +
   7.591 +	      <small-icon>employee-service-icon16x16.jpg</small-icon>
   7.592 +
   7.593 +	      ]]>
   7.594 +	  </xsd:documentation>
   7.595 +	</xsd:annotation>
   7.596 +      </xsd:element>
   7.597 +      <xsd:element name="large-icon" type="j2ee:pathType"
   7.598 +		   minOccurs="0">
   7.599 +	<xsd:annotation>
   7.600 +	  <xsd:documentation>
   7.601 +	    <![CDATA[
   7.602 +
   7.603 +	      The large-icon element contains the name of a file
   7.604 +	      containing a large
   7.605 +	      (32 x 32) icon image. The file name is a relative
   7.606 +	      path within the Deployment Component's Deployment
   7.607 +	      File.
   7.608 +
   7.609 +	      The image may be either in the JPEG or GIF format.
   7.610 +	      The icon can be used by tools.
   7.611 +
   7.612 +	      Example:
   7.613 +
   7.614 +	      <large-icon>employee-service-icon32x32.jpg</large-icon>
   7.615 +
   7.616 +	      ]]>
   7.617 +	  </xsd:documentation>
   7.618 +	</xsd:annotation>
   7.619 +      </xsd:element>
   7.620 +
   7.621 +    </xsd:sequence>
   7.622 +
   7.623 +    <xsd:attribute ref="xml:lang"/>
   7.624 +    <xsd:attribute name="id" type="xsd:ID"/>
   7.625 +
   7.626 +  </xsd:complexType>
   7.627 +
   7.628 +<!-- **************************************************** -->
   7.629 +
   7.630 +  <xsd:complexType name="java-identifierType">
   7.631 +    <xsd:annotation>
   7.632 +      <xsd:documentation>
   7.633 +
   7.634 +	The java-identifierType defines a Java identifier.
   7.635 +	The users of this type should further verify that
   7.636 +	the content does not contain Java reserved keywords.
   7.637 +
   7.638 +      </xsd:documentation>
   7.639 +    </xsd:annotation>
   7.640 +    <xsd:simpleContent>
   7.641 +      <xsd:restriction base="j2ee:string">
   7.642 +	<xsd:pattern value="($|_|\p{L})(\p{L}|\p{Nd}|_|$)*"/>
   7.643 +      </xsd:restriction>
   7.644 +    </xsd:simpleContent>
   7.645 +  </xsd:complexType>
   7.646 +
   7.647 +<!-- **************************************************** -->
   7.648 +
   7.649 +  <xsd:complexType name="jndi-nameType">
   7.650 +    <xsd:annotation>
   7.651 +      <xsd:documentation>
   7.652 +
   7.653 +	The jndi-nameType type designates a JNDI name in the
   7.654 +	Deployment Component's environment and is relative to the
   7.655 +	java:comp/env context.  A JNDI name must be unique within the
   7.656 +	Deployment Component.
   7.657 +
   7.658 +      </xsd:documentation>
   7.659 +    </xsd:annotation>
   7.660 +    <xsd:simpleContent>
   7.661 +      <xsd:restriction base="j2ee:string"/>
   7.662 +    </xsd:simpleContent>
   7.663 +  </xsd:complexType>
   7.664 +
   7.665 +<!-- **************************************************** -->
   7.666 +
   7.667 +  <xsd:group name="jndiEnvironmentRefsGroup">
   7.668 +    <xsd:annotation>
   7.669 +      <xsd:documentation>
   7.670 +
   7.671 +	This group keeps the usage of the contained JNDI environment
   7.672 +	reference elements consistent across J2EE deployment descriptors.
   7.673 +
   7.674 +      </xsd:documentation>
   7.675 +    </xsd:annotation>
   7.676 +    <xsd:sequence>
   7.677 +      <xsd:element name="env-entry"
   7.678 +		   type="j2ee:env-entryType"
   7.679 +		   minOccurs="0" maxOccurs="unbounded"/>
   7.680 +      <xsd:element name="ejb-ref"
   7.681 +		   type="j2ee:ejb-refType"
   7.682 +		   minOccurs="0" maxOccurs="unbounded"/>
   7.683 +      <xsd:element name="ejb-local-ref"
   7.684 +		   type="j2ee:ejb-local-refType"
   7.685 +		   minOccurs="0" maxOccurs="unbounded"/>
   7.686 +      <xsd:group ref="j2ee:service-refGroup"/>
   7.687 +      <xsd:element name="resource-ref"
   7.688 +		   type="j2ee:resource-refType"
   7.689 +		   minOccurs="0" maxOccurs="unbounded"/>
   7.690 +      <xsd:element name="resource-env-ref"
   7.691 +		   type="j2ee:resource-env-refType"
   7.692 +		   minOccurs="0" maxOccurs="unbounded"/>
   7.693 +      <xsd:element name="message-destination-ref"
   7.694 +		   type="j2ee:message-destination-refType"
   7.695 +		   minOccurs="0" maxOccurs="unbounded"/>
   7.696 +    </xsd:sequence>
   7.697 +  </xsd:group>
   7.698 +
   7.699 +<!-- **************************************************** -->
   7.700 +
   7.701 +  <xsd:complexType name="local-homeType">
   7.702 +    <xsd:annotation>
   7.703 +      <xsd:documentation>
   7.704 +
   7.705 +	The local-homeType defines the fully-qualified
   7.706 +	name of an enterprise bean's local home interface.
   7.707 +
   7.708 +      </xsd:documentation>
   7.709 +    </xsd:annotation>
   7.710 +    <xsd:simpleContent>
   7.711 +      <xsd:restriction base="j2ee:fully-qualified-classType"/>
   7.712 +    </xsd:simpleContent>
   7.713 +  </xsd:complexType>
   7.714 +
   7.715 +<!-- **************************************************** -->
   7.716 +
   7.717 +  <xsd:complexType name="localType">
   7.718 +    <xsd:annotation>
   7.719 +      <xsd:documentation>
   7.720 +
   7.721 +	The localType defines the fully-qualified name of an
   7.722 +	enterprise bean's local interface.
   7.723 +
   7.724 +      </xsd:documentation>
   7.725 +    </xsd:annotation>
   7.726 +    <xsd:simpleContent>
   7.727 +      <xsd:restriction base="j2ee:fully-qualified-classType"/>
   7.728 +    </xsd:simpleContent>
   7.729 +  </xsd:complexType>
   7.730 +
   7.731 +<!-- **************************************************** -->
   7.732 +
   7.733 +  <xsd:complexType name="message-destination-linkType">
   7.734 +    <xsd:annotation>
   7.735 +      <xsd:documentation>
   7.736 +
   7.737 +	The message-destination-linkType is used to link a message
   7.738 +	destination reference or message-driven bean to a message
   7.739 +	destination.
   7.740 +
   7.741 +	The Assembler sets the value to reflect the flow of messages
   7.742 +	between producers and consumers in the application.
   7.743 +
   7.744 +	The value must be the message-destination-name of a message
   7.745 +	destination in the same Deployment File or in another
   7.746 +	Deployment File in the same J2EE application unit.
   7.747 +
   7.748 +	Alternatively, the value may be composed of a path name
   7.749 +	specifying a Deployment File containing the referenced
   7.750 +	message destination with the message-destination-name of the
   7.751 +	destination appended and separated from the path name by
   7.752 +	"#". The path name is relative to the Deployment File
   7.753 +	containing Deployment Component that is referencing the
   7.754 +	message destination.  This allows multiple message
   7.755 +	destinations with the same name to be uniquely identified.
   7.756 +
   7.757 +      </xsd:documentation>
   7.758 +    </xsd:annotation>
   7.759 +    <xsd:simpleContent>
   7.760 +      <xsd:restriction base="j2ee:string"/>
   7.761 +    </xsd:simpleContent>
   7.762 +  </xsd:complexType>
   7.763 +
   7.764 +<!-- **************************************************** -->
   7.765 +
   7.766 +  <xsd:complexType name="message-destination-refType">
   7.767 +    <xsd:annotation>
   7.768 +      <xsd:documentation>
   7.769 +	<![CDATA[
   7.770 +
   7.771 +	  The message-destination-ref element contains a declaration
   7.772 +	  of Deployment Component's reference to a message destination
   7.773 +	  associated with a resource in Deployment Component's
   7.774 +	  environment. It consists of:
   7.775 +
   7.776 +		  - an optional description
   7.777 +		  - the message destination reference name
   7.778 +		  - the message destination type
   7.779 +		  - a specification as to whether the
   7.780 +		    destination is used for
   7.781 +		    consuming or producing messages, or both
   7.782 +		  - a link to the message destination
   7.783 +
   7.784 +	  Examples:
   7.785 +
   7.786 +	  <message-destination-ref>
   7.787 +		  <message-destination-ref-name>jms/StockQueue
   7.788 +		  </message-destination-ref-name>
   7.789 +		  <message-destination-type>javax.jms.Queue
   7.790 +		  </message-destination-type>
   7.791 +		  <message-destination-usage>Consumes
   7.792 +		  </message-destination-usage>
   7.793 +		  <message-destination-link>CorporateStocks
   7.794 +		  </message-destination-link>
   7.795 +	  </message-destination-ref>
   7.796 +
   7.797 +	  ]]>
   7.798 +      </xsd:documentation>
   7.799 +    </xsd:annotation>
   7.800 +    <xsd:sequence>
   7.801 +      <xsd:element name="description"
   7.802 +		   type="j2ee:descriptionType"
   7.803 +		   minOccurs="0"
   7.804 +		   maxOccurs="unbounded"/>
   7.805 +      <xsd:element name="message-destination-ref-name"
   7.806 +		   type="j2ee:jndi-nameType">
   7.807 +	<xsd:annotation>
   7.808 +	  <xsd:documentation>
   7.809 +
   7.810 +	    The message-destination-ref-name element specifies
   7.811 +	    the name of a message destination reference; its
   7.812 +	    value is the environment entry name used in
   7.813 +	    Deployment Component code.  The name is a JNDI name
   7.814 +	    relative to the java:comp/env context and must be
   7.815 +	    unique within an ejb-jar (for enterprise beans) or a
   7.816 +	    Deployment File (for others).
   7.817 +
   7.818 +	  </xsd:documentation>
   7.819 +	</xsd:annotation>
   7.820 +      </xsd:element>
   7.821 +      <xsd:element name="message-destination-type"
   7.822 +		   type="j2ee:message-destination-typeType"/>
   7.823 +      <xsd:element name="message-destination-usage"
   7.824 +		   type="j2ee:message-destination-usageType"/>
   7.825 +      <xsd:element name="message-destination-link"
   7.826 +		   type="j2ee:message-destination-linkType"
   7.827 +		   minOccurs="0"/>
   7.828 +    </xsd:sequence>
   7.829 +    <xsd:attribute name="id" type="xsd:ID"/>
   7.830 +
   7.831 +  </xsd:complexType>
   7.832 +
   7.833 +<!-- **************************************************** -->
   7.834 +
   7.835 +  <xsd:complexType name="message-destination-typeType">
   7.836 +    <xsd:annotation>
   7.837 +      <xsd:documentation>
   7.838 +	<![CDATA[
   7.839 +
   7.840 +	  The message-destination-typeType specifies the type of
   7.841 +	  the destination. The type is specified by the Java interface
   7.842 +	  expected to be implemented by the destination.
   7.843 +
   7.844 +	  Example:
   7.845 +
   7.846 +	    <message-destination-type>javax.jms.Queue
   7.847 +	    </message-destination-type>
   7.848 +
   7.849 +	  ]]>
   7.850 +      </xsd:documentation>
   7.851 +    </xsd:annotation>
   7.852 +    <xsd:simpleContent>
   7.853 +      <xsd:restriction base="j2ee:fully-qualified-classType"/>
   7.854 +    </xsd:simpleContent>
   7.855 +  </xsd:complexType>
   7.856 +
   7.857 +<!-- **************************************************** -->
   7.858 +
   7.859 +  <xsd:complexType name="message-destination-usageType">
   7.860 +    <xsd:annotation>
   7.861 +      <xsd:documentation>
   7.862 +
   7.863 +	The message-destination-usageType specifies the use of the
   7.864 +	message destination indicated by the reference.  The value
   7.865 +	indicates whether messages are consumed from the message
   7.866 +	destination, produced for the destination, or both.  The
   7.867 +	Assembler makes use of this information in linking producers
   7.868 +	of a destination with its consumers.
   7.869 +
   7.870 +	The value of the message-destination-usage element must be
   7.871 +	one of the following:
   7.872 +	    Consumes
   7.873 +	    Produces
   7.874 +	    ConsumesProduces
   7.875 +
   7.876 +      </xsd:documentation>
   7.877 +    </xsd:annotation>
   7.878 +    <xsd:simpleContent>
   7.879 +      <xsd:restriction base="j2ee:string">
   7.880 +	<xsd:enumeration value="Consumes"/>
   7.881 +	<xsd:enumeration value="Produces"/>
   7.882 +	<xsd:enumeration value="ConsumesProduces"/>
   7.883 +      </xsd:restriction>
   7.884 +    </xsd:simpleContent>
   7.885 +  </xsd:complexType>
   7.886 +
   7.887 +<!-- **************************************************** -->
   7.888 +
   7.889 +  <xsd:complexType name="message-destinationType">
   7.890 +    <xsd:annotation>
   7.891 +      <xsd:documentation>
   7.892 +	<![CDATA[
   7.893 +
   7.894 +	  The message-destinationType specifies a message
   7.895 +	  destination. The logical destination described by this
   7.896 +	  element is mapped to a physical destination by the Deployer.
   7.897 +
   7.898 +	  The message destination element contains:
   7.899 +
   7.900 +		  - an optional description
   7.901 +		  - an optional display-name
   7.902 +		  - an optional icon
   7.903 +		  - a message destination name which must be unique
   7.904 +		    among message destination names within the same
   7.905 +		    Deployment File.
   7.906 +
   7.907 +	  Example:
   7.908 +
   7.909 +	  <message-destination>
   7.910 +		  <message-destination-name>CorporateStocks
   7.911 +		  </message-destination-name>
   7.912 +	  </message-destination>
   7.913 +
   7.914 +	  ]]>
   7.915 +      </xsd:documentation>
   7.916 +    </xsd:annotation>
   7.917 +    <xsd:sequence>
   7.918 +      <xsd:group ref="j2ee:descriptionGroup"/>
   7.919 +      <xsd:element name="message-destination-name"
   7.920 +		   type="j2ee:string">
   7.921 +	<xsd:annotation>
   7.922 +	  <xsd:documentation>
   7.923 +
   7.924 +	    The message-destination-name element specifies a
   7.925 +	    name for a message destination.  This name must be
   7.926 +	    unique among the names of message destinations
   7.927 +	    within the Deployment File.
   7.928 +
   7.929 +	  </xsd:documentation>
   7.930 +	</xsd:annotation>
   7.931 +      </xsd:element>
   7.932 +    </xsd:sequence>
   7.933 +    <xsd:attribute name="id" type="xsd:ID"/>
   7.934 +  </xsd:complexType>
   7.935 +
   7.936 +<!-- **************************************************** -->
   7.937 +
   7.938 +  <xsd:complexType name="param-valueType">
   7.939 +    <xsd:annotation>
   7.940 +      <xsd:documentation>
   7.941 +
   7.942 +	This type is a general type that can be used to declare
   7.943 +	parameter/value lists.
   7.944 +
   7.945 +      </xsd:documentation>
   7.946 +    </xsd:annotation>
   7.947 +
   7.948 +    <xsd:sequence>
   7.949 +      <xsd:element name="description"
   7.950 +		   type="j2ee:descriptionType"
   7.951 +		   minOccurs="0"
   7.952 +		   maxOccurs="unbounded"/>
   7.953 +      <xsd:element name="param-name"
   7.954 +		   type="j2ee:string">
   7.955 +	<xsd:annotation>
   7.956 +	  <xsd:documentation>
   7.957 +
   7.958 +	    The param-name element contains the name of a
   7.959 +	    parameter.
   7.960 +
   7.961 +	  </xsd:documentation>
   7.962 +	</xsd:annotation>
   7.963 +      </xsd:element>
   7.964 +
   7.965 +      <xsd:element name="param-value"
   7.966 +		   type="j2ee:xsdStringType">
   7.967 +	<xsd:annotation>
   7.968 +	  <xsd:documentation>
   7.969 +
   7.970 +	    The param-value element contains the value of a
   7.971 +	    parameter.
   7.972 +
   7.973 +	  </xsd:documentation>
   7.974 +	</xsd:annotation>
   7.975 +      </xsd:element>
   7.976 +    </xsd:sequence>
   7.977 +    <xsd:attribute name="id" type="xsd:ID"/>
   7.978 +  </xsd:complexType>
   7.979 +
   7.980 +<!-- **************************************************** -->
   7.981 +
   7.982 +  <xsd:complexType name="pathType">
   7.983 +    <xsd:annotation>
   7.984 +      <xsd:documentation>
   7.985 +
   7.986 +	The elements that use this type designate either a relative
   7.987 +	path or an absolute path starting with a "/".
   7.988 +
   7.989 +	In elements that specify a pathname to a file within the
   7.990 +	same Deployment File, relative filenames (i.e., those not
   7.991 +	starting with "/") are considered relative to the root of
   7.992 +	the Deployment File's namespace.  Absolute filenames (i.e.,
   7.993 +	those starting with "/") also specify names in the root of
   7.994 +	the Deployment File's namespace.  In general, relative names
   7.995 +	are preferred.  The exception is .war files where absolute
   7.996 +	names are preferred for consistency with the Servlet API.
   7.997 +
   7.998 +      </xsd:documentation>
   7.999 +    </xsd:annotation>
  7.1000 +    <xsd:simpleContent>
  7.1001 +      <xsd:restriction base="j2ee:string"/>
  7.1002 +    </xsd:simpleContent>
  7.1003 +  </xsd:complexType>
  7.1004 +
  7.1005 +<!-- **************************************************** -->
  7.1006 +
  7.1007 +  <xsd:complexType name="remoteType">
  7.1008 +    <xsd:annotation>
  7.1009 +      <xsd:documentation>
  7.1010 +	<![CDATA[
  7.1011 +
  7.1012 +	  The remote element contains the fully-qualified name
  7.1013 +	  of the enterprise bean's remote interface.
  7.1014 +
  7.1015 +	  Example:
  7.1016 +
  7.1017 +	      <remote>com.wombat.empl.EmployeeService</remote>
  7.1018 +
  7.1019 +	  ]]>
  7.1020 +      </xsd:documentation>
  7.1021 +    </xsd:annotation>
  7.1022 +    <xsd:simpleContent>
  7.1023 +      <xsd:restriction base="j2ee:fully-qualified-classType"/>
  7.1024 +    </xsd:simpleContent>
  7.1025 +  </xsd:complexType>
  7.1026 +
  7.1027 +<!-- **************************************************** -->
  7.1028 +
  7.1029 +  <xsd:complexType name="res-authType">
  7.1030 +    <xsd:annotation>
  7.1031 +      <xsd:documentation>
  7.1032 +
  7.1033 +	The res-authType specifies whether the Deployment Component
  7.1034 +	code signs on programmatically to the resource manager, or
  7.1035 +	whether the Container will sign on to the resource manager
  7.1036 +	on behalf of the Deployment Component. In the latter case,
  7.1037 +	the Container uses information that is supplied by the
  7.1038 +	Deployer.
  7.1039 +
  7.1040 +	The value must be one of the two following:
  7.1041 +
  7.1042 +	    Application
  7.1043 +	    Container
  7.1044 +
  7.1045 +      </xsd:documentation>
  7.1046 +    </xsd:annotation>
  7.1047 +    <xsd:simpleContent>
  7.1048 +      <xsd:restriction base="j2ee:string">
  7.1049 +	<xsd:enumeration value="Application"/>
  7.1050 +	<xsd:enumeration value="Container"/>
  7.1051 +      </xsd:restriction>
  7.1052 +    </xsd:simpleContent>
  7.1053 +  </xsd:complexType>
  7.1054 +
  7.1055 +<!-- **************************************************** -->
  7.1056 +
  7.1057 +  <xsd:complexType name="res-sharing-scopeType">
  7.1058 +    <xsd:annotation>
  7.1059 +      <xsd:documentation>
  7.1060 +
  7.1061 +	The res-sharing-scope type specifies whether connections
  7.1062 +	obtained through the given resource manager connection
  7.1063 +	factory reference can be shared. The value, if specified,
  7.1064 +	must be one of the two following:
  7.1065 +
  7.1066 +	    Shareable
  7.1067 +	    Unshareable
  7.1068 +
  7.1069 +	The default value is Shareable.
  7.1070 +
  7.1071 +      </xsd:documentation>
  7.1072 +    </xsd:annotation>
  7.1073 +    <xsd:simpleContent>
  7.1074 +      <xsd:restriction base="j2ee:string">
  7.1075 +	<xsd:enumeration value="Shareable"/>
  7.1076 +	<xsd:enumeration value="Unshareable"/>
  7.1077 +      </xsd:restriction>
  7.1078 +    </xsd:simpleContent>
  7.1079 +  </xsd:complexType>
  7.1080 +
  7.1081 +<!-- **************************************************** -->
  7.1082 +
  7.1083 +  <xsd:complexType name="resource-env-refType">
  7.1084 +    <xsd:annotation>
  7.1085 +      <xsd:documentation>
  7.1086 +	<![CDATA[
  7.1087 +
  7.1088 +	  The resource-env-refType is used to define
  7.1089 +	  resource-env-type elements.  It contains a declaration of a
  7.1090 +	  Deployment Component's reference to an administered object
  7.1091 +	  associated with a resource in the Deployment Component's
  7.1092 +	  environment.  It consists of an optional description, the
  7.1093 +	  resource environment reference name, and an indication of
  7.1094 +	  the resource environment reference type expected by the
  7.1095 +	  Deployment Component code.
  7.1096 +
  7.1097 +	  Example:
  7.1098 +
  7.1099 +	  <resource-env-ref>
  7.1100 +	      <resource-env-ref-name>jms/StockQueue
  7.1101 +	      </resource-env-ref-name>
  7.1102 +	      <resource-env-ref-type>javax.jms.Queue
  7.1103 +	      </resource-env-ref-type>
  7.1104 +	  </resource-env-ref>
  7.1105 +
  7.1106 +	  ]]>
  7.1107 +      </xsd:documentation>
  7.1108 +    </xsd:annotation>
  7.1109 +
  7.1110 +    <xsd:sequence>
  7.1111 +      <xsd:element name="description"
  7.1112 +		   type="j2ee:descriptionType"
  7.1113 +		   minOccurs="0"
  7.1114 +		   maxOccurs="unbounded"/>
  7.1115 +      <xsd:element name="resource-env-ref-name"
  7.1116 +		   type="j2ee:jndi-nameType">
  7.1117 +	<xsd:annotation>
  7.1118 +	  <xsd:documentation>
  7.1119 +
  7.1120 +	    The resource-env-ref-name element specifies the name
  7.1121 +	    of a resource environment reference; its value is
  7.1122 +	    the environment entry name used in
  7.1123 +	    the Deployment Component code.  The name is a JNDI
  7.1124 +	    name relative to the java:comp/env context and must
  7.1125 +	    be unique within a Deployment Component.
  7.1126 +
  7.1127 +	  </xsd:documentation>
  7.1128 +	</xsd:annotation>
  7.1129 +      </xsd:element>
  7.1130 +
  7.1131 +      <xsd:element name="resource-env-ref-type"
  7.1132 +		   type="j2ee:fully-qualified-classType">
  7.1133 +	<xsd:annotation>
  7.1134 +	  <xsd:documentation>
  7.1135 +
  7.1136 +	    The resource-env-ref-type element specifies the type
  7.1137 +	    of a resource environment reference.  It is the
  7.1138 +	    fully qualified name of a Java language class or
  7.1139 +	    interface.
  7.1140 +
  7.1141 +	  </xsd:documentation>
  7.1142 +	</xsd:annotation>
  7.1143 +      </xsd:element>
  7.1144 +
  7.1145 +    </xsd:sequence>
  7.1146 +    <xsd:attribute name="id" type="xsd:ID"/>
  7.1147 +  </xsd:complexType>
  7.1148 +
  7.1149 +<!-- **************************************************** -->
  7.1150 +
  7.1151 +  <xsd:complexType name="resource-refType">
  7.1152 +    <xsd:annotation>
  7.1153 +      <xsd:documentation>
  7.1154 +	<![CDATA[
  7.1155 +
  7.1156 +	  The resource-refType contains a declaration of a
  7.1157 +	  Deployment Component's reference to an external resource. It
  7.1158 +	  consists of an optional description, the resource manager
  7.1159 +	  connection factory reference name, the indication of the
  7.1160 +	  resource manager connection factory type expected by the
  7.1161 +	  Deployment Component code, the type of authentication
  7.1162 +	  (Application or Container), and an optional specification of
  7.1163 +	  the shareability of connections obtained from the resource
  7.1164 +	  (Shareable or Unshareable).
  7.1165 +
  7.1166 +	  Example:
  7.1167 +
  7.1168 +	  <resource-ref>
  7.1169 +	      <res-ref-name>jdbc/EmployeeAppDB</res-ref-name>
  7.1170 +	      <res-type>javax.sql.DataSource</res-type>
  7.1171 +	      <res-auth>Container</res-auth>
  7.1172 +	      <res-sharing-scope>Shareable</res-sharing-scope>
  7.1173 +	  </resource-ref>
  7.1174 +
  7.1175 +	  ]]>
  7.1176 +      </xsd:documentation>
  7.1177 +    </xsd:annotation>
  7.1178 +
  7.1179 +    <xsd:sequence>
  7.1180 +      <xsd:element name="description"
  7.1181 +		   type="j2ee:descriptionType"
  7.1182 +		   minOccurs="0"
  7.1183 +		   maxOccurs="unbounded"/>
  7.1184 +      <xsd:element name="res-ref-name"
  7.1185 +		   type="j2ee:jndi-nameType">
  7.1186 +	<xsd:annotation>
  7.1187 +	  <xsd:documentation>
  7.1188 +
  7.1189 +	    The res-ref-name element specifies the name of a
  7.1190 +	    resource manager connection factory reference.
  7.1191 +	    The name is a JNDI name relative to the
  7.1192 +	    java:comp/env context.
  7.1193 +	    The name must be unique within a Deployment File.
  7.1194 +
  7.1195 +	  </xsd:documentation>
  7.1196 +	</xsd:annotation>
  7.1197 +      </xsd:element>
  7.1198 +
  7.1199 +      <xsd:element name="res-type"
  7.1200 +		   type="j2ee:fully-qualified-classType">
  7.1201 +	<xsd:annotation>
  7.1202 +	  <xsd:documentation>
  7.1203 +
  7.1204 +	    The res-type element specifies the type of the data
  7.1205 +	    source. The type is specified by the fully qualified
  7.1206 +	    Java language class or interface
  7.1207 +	    expected to be implemented by the data source.
  7.1208 +
  7.1209 +	  </xsd:documentation>
  7.1210 +	</xsd:annotation>
  7.1211 +      </xsd:element>
  7.1212 +
  7.1213 +      <xsd:element name="res-auth"
  7.1214 +		   type="j2ee:res-authType"/>
  7.1215 +
  7.1216 +      <xsd:element name="res-sharing-scope"
  7.1217 +		   type="j2ee:res-sharing-scopeType"
  7.1218 +		   minOccurs="0"/>
  7.1219 +    </xsd:sequence>
  7.1220 +    <xsd:attribute name="id" type="xsd:ID"/>
  7.1221 +  </xsd:complexType>
  7.1222 +
  7.1223 +<!-- **************************************************** -->
  7.1224 +
  7.1225 +  <xsd:complexType name="role-nameType">
  7.1226 +    <xsd:annotation>
  7.1227 +      <xsd:documentation>
  7.1228 +
  7.1229 +	The role-nameType designates the name of a security role.
  7.1230 +
  7.1231 +	The name must conform to the lexical rules for a token.
  7.1232 +
  7.1233 +      </xsd:documentation>
  7.1234 +    </xsd:annotation>
  7.1235 +
  7.1236 +    <xsd:simpleContent>
  7.1237 +      <xsd:restriction base="j2ee:string"/>
  7.1238 +    </xsd:simpleContent>
  7.1239 +  </xsd:complexType>
  7.1240 +
  7.1241 +<!-- **************************************************** -->
  7.1242 +
  7.1243 +  <xsd:complexType name="run-asType">
  7.1244 +    <xsd:annotation>
  7.1245 +      <xsd:documentation>
  7.1246 +
  7.1247 +	The run-asType specifies the run-as identity to be
  7.1248 +	used for the execution of a component. It contains an
  7.1249 +	optional description, and the name of a security role.
  7.1250 +
  7.1251 +      </xsd:documentation>
  7.1252 +    </xsd:annotation>
  7.1253 +
  7.1254 +    <xsd:sequence>
  7.1255 +      <xsd:element name="description"
  7.1256 +		   type="j2ee:descriptionType"
  7.1257 +		   minOccurs="0"
  7.1258 +		   maxOccurs="unbounded"/>
  7.1259 +      <xsd:element name="role-name"
  7.1260 +		   type="j2ee:role-nameType"/>
  7.1261 +    </xsd:sequence>
  7.1262 +    <xsd:attribute name="id" type="xsd:ID"/>
  7.1263 +  </xsd:complexType>
  7.1264 +
  7.1265 +<!-- **************************************************** -->
  7.1266 +
  7.1267 +  <xsd:complexType name="security-role-refType">
  7.1268 +    <xsd:annotation>
  7.1269 +      <xsd:documentation>
  7.1270 +
  7.1271 +	The security-role-refType contains the declaration of a
  7.1272 +	security role reference in a component's or a
  7.1273 +	Deployment Component's code. The declaration consists of an
  7.1274 +	optional description, the security role name used in the
  7.1275 +	code, and an optional link to a security role. If the
  7.1276 +	security role is not specified, the Deployer must choose an
  7.1277 +	appropriate security role.
  7.1278 +
  7.1279 +      </xsd:documentation>
  7.1280 +    </xsd:annotation>
  7.1281 +
  7.1282 +    <xsd:sequence>
  7.1283 +      <xsd:element name="description"
  7.1284 +		   type="j2ee:descriptionType"
  7.1285 +		   minOccurs="0"
  7.1286 +		   maxOccurs="unbounded"/>
  7.1287 +      <xsd:element name="role-name"
  7.1288 +		   type="j2ee:role-nameType">
  7.1289 +	<xsd:annotation>
  7.1290 +	  <xsd:documentation>
  7.1291 +
  7.1292 +	    The value of the role-name element must be the String used
  7.1293 +	    as the parameter to the
  7.1294 +	    EJBContext.isCallerInRole(String roleName) method or the
  7.1295 +	    HttpServletRequest.isUserInRole(String role) method.
  7.1296 +
  7.1297 +	  </xsd:documentation>
  7.1298 +	</xsd:annotation>
  7.1299 +      </xsd:element>
  7.1300 +
  7.1301 +      <xsd:element name="role-link"
  7.1302 +		   type="j2ee:role-nameType"
  7.1303 +		   minOccurs="0">
  7.1304 +	<xsd:annotation>
  7.1305 +	  <xsd:documentation>
  7.1306 +
  7.1307 +	    The role-link element is a reference to a defined
  7.1308 +	    security role. The role-link element must contain
  7.1309 +	    the name of one of the security roles defined in the
  7.1310 +	    security-role elements.
  7.1311 +
  7.1312 +	  </xsd:documentation>
  7.1313 +	</xsd:annotation>
  7.1314 +      </xsd:element>
  7.1315 +    </xsd:sequence>
  7.1316 +    <xsd:attribute name="id" type="xsd:ID"/>
  7.1317 +  </xsd:complexType>
  7.1318 +
  7.1319 +<!-- **************************************************** -->
  7.1320 +
  7.1321 +  <xsd:complexType name="security-roleType">
  7.1322 +    <xsd:annotation>
  7.1323 +      <xsd:documentation>
  7.1324 +	<![CDATA[
  7.1325 +
  7.1326 +	  The security-roleType contains the definition of a security
  7.1327 +	  role. The definition consists of an optional description of the
  7.1328 +	  security role, and the security role name.
  7.1329 +
  7.1330 +	  Example:
  7.1331 +
  7.1332 +	      <security-role>
  7.1333 +	      <description>
  7.1334 +		  This role includes all employees who are authorized
  7.1335 +		  to access the employee service application.
  7.1336 +	      </description>
  7.1337 +	      <role-name>employee</role-name>
  7.1338 +	      </security-role>
  7.1339 +
  7.1340 +	  ]]>
  7.1341 +      </xsd:documentation>
  7.1342 +    </xsd:annotation>
  7.1343 +
  7.1344 +    <xsd:sequence>
  7.1345 +      <xsd:element name="description"
  7.1346 +		   type="j2ee:descriptionType"
  7.1347 +		   minOccurs="0"
  7.1348 +		   maxOccurs="unbounded"/>
  7.1349 +      <xsd:element name="role-name"
  7.1350 +		   type="j2ee:role-nameType"/>
  7.1351 +    </xsd:sequence>
  7.1352 +    <xsd:attribute name="id" type="xsd:ID"/>
  7.1353 +  </xsd:complexType>
  7.1354 +
  7.1355 +<!-- **************************************************** -->
  7.1356 +
  7.1357 +  <xsd:complexType name="string">
  7.1358 +    <xsd:annotation>
  7.1359 +      <xsd:documentation>
  7.1360 +
  7.1361 +	This is a special string datatype that is defined by J2EE as
  7.1362 +	a base type for defining collapsed strings. When schemas
  7.1363 +	require trailing/leading space elimination as well as
  7.1364 +	collapsing the existing whitespace, this base type may be
  7.1365 +	used.
  7.1366 +
  7.1367 +      </xsd:documentation>
  7.1368 +    </xsd:annotation>
  7.1369 +    <xsd:simpleContent>
  7.1370 +      <xsd:extension base="xsd:token">
  7.1371 +	<xsd:attribute name="id" type="xsd:ID"/>
  7.1372 +      </xsd:extension>
  7.1373 +    </xsd:simpleContent>
  7.1374 +  </xsd:complexType>
  7.1375 +
  7.1376 +<!-- **************************************************** -->
  7.1377 +
  7.1378 +  <xsd:complexType name="true-falseType">
  7.1379 +    <xsd:annotation>
  7.1380 +      <xsd:documentation>
  7.1381 +
  7.1382 +	This simple type designates a boolean with only two
  7.1383 +	permissible values
  7.1384 +
  7.1385 +	- true
  7.1386 +	- false
  7.1387 +
  7.1388 +      </xsd:documentation>
  7.1389 +    </xsd:annotation>
  7.1390 +    <xsd:simpleContent>
  7.1391 +      <xsd:restriction base="j2ee:xsdBooleanType">
  7.1392 +	<xsd:pattern value="(true|false)"/>
  7.1393 +      </xsd:restriction>
  7.1394 +    </xsd:simpleContent>
  7.1395 +  </xsd:complexType>
  7.1396 +
  7.1397 +<!-- **************************************************** -->
  7.1398 +
  7.1399 +  <xsd:complexType name="url-patternType">
  7.1400 +    <xsd:annotation>
  7.1401 +      <xsd:documentation>
  7.1402 +
  7.1403 +	The url-patternType contains the url pattern of the mapping.
  7.1404 +	It must follow the rules specified in Section 11.2 of the
  7.1405 +	Servlet API Specification. This pattern is assumed to be in
  7.1406 +	URL-decoded form and must not contain CR(#xD) or LF(#xA).
  7.1407 +	If it contains those characters, the container must inform
  7.1408 +	the developer with a descriptive error message.
  7.1409 +	The container must preserve all characters including whitespaces.
  7.1410 +
  7.1411 +      </xsd:documentation>
  7.1412 +    </xsd:annotation>
  7.1413 +    <xsd:simpleContent>
  7.1414 +      <xsd:extension base="xsd:string"/>
  7.1415 +    </xsd:simpleContent>
  7.1416 +  </xsd:complexType>
  7.1417 +
  7.1418 +<!-- **************************************************** -->
  7.1419 +
  7.1420 +  <xsd:complexType name="xsdAnyURIType">
  7.1421 +    <xsd:annotation>
  7.1422 +      <xsd:documentation>
  7.1423 +
  7.1424 +	This type adds an "id" attribute to xsd:anyURI.
  7.1425 +
  7.1426 +      </xsd:documentation>
  7.1427 +    </xsd:annotation>
  7.1428 +    <xsd:simpleContent>
  7.1429 +      <xsd:extension base="xsd:anyURI">
  7.1430 +	<xsd:attribute name="id" type="xsd:ID"/>
  7.1431 +      </xsd:extension>
  7.1432 +    </xsd:simpleContent>
  7.1433 +  </xsd:complexType>
  7.1434 +
  7.1435 +<!-- **************************************************** -->
  7.1436 +
  7.1437 +  <xsd:complexType name="xsdBooleanType">
  7.1438 +    <xsd:annotation>
  7.1439 +      <xsd:documentation>
  7.1440 +
  7.1441 +	This type adds an "id" attribute to xsd:boolean.
  7.1442 +
  7.1443 +      </xsd:documentation>
  7.1444 +    </xsd:annotation>
  7.1445 +    <xsd:simpleContent>
  7.1446 +      <xsd:extension base="xsd:boolean">
  7.1447 +	<xsd:attribute name="id" type="xsd:ID"/>
  7.1448 +      </xsd:extension>
  7.1449 +    </xsd:simpleContent>
  7.1450 +  </xsd:complexType>
  7.1451 +
  7.1452 +<!-- **************************************************** -->
  7.1453 +
  7.1454 +  <xsd:complexType name="xsdIntegerType">
  7.1455 +    <xsd:annotation>
  7.1456 +      <xsd:documentation>
  7.1457 +
  7.1458 +	This type adds an "id" attribute to xsd:integer.
  7.1459 +
  7.1460 +      </xsd:documentation>
  7.1461 +    </xsd:annotation>
  7.1462 +    <xsd:simpleContent>
  7.1463 +      <xsd:extension base="xsd:integer">
  7.1464 +	<xsd:attribute name="id" type="xsd:ID"/>
  7.1465 +      </xsd:extension>
  7.1466 +    </xsd:simpleContent>
  7.1467 +  </xsd:complexType>
  7.1468 +
  7.1469 +<!-- **************************************************** -->
  7.1470 +
  7.1471 +  <xsd:complexType name="xsdNMTOKENType">
  7.1472 +    <xsd:annotation>
  7.1473 +      <xsd:documentation>
  7.1474 +
  7.1475 +	This type adds an "id" attribute to xsd:NMTOKEN.
  7.1476 +
  7.1477 +      </xsd:documentation>
  7.1478 +    </xsd:annotation>
  7.1479 +    <xsd:simpleContent>
  7.1480 +      <xsd:extension base="xsd:NMTOKEN">
  7.1481 +	<xsd:attribute name="id" type="xsd:ID"/>
  7.1482 +      </xsd:extension>
  7.1483 +    </xsd:simpleContent>
  7.1484 +  </xsd:complexType>
  7.1485 +
  7.1486 +<!-- **************************************************** -->
  7.1487 +
  7.1488 +  <xsd:complexType name="xsdNonNegativeIntegerType">
  7.1489 +    <xsd:annotation>
  7.1490 +      <xsd:documentation>
  7.1491 +
  7.1492 +	This type adds an "id" attribute to xsd:nonNegativeInteger.
  7.1493 +
  7.1494 +      </xsd:documentation>
  7.1495 +    </xsd:annotation>
  7.1496 +    <xsd:simpleContent>
  7.1497 +      <xsd:extension base="xsd:nonNegativeInteger">
  7.1498 +	<xsd:attribute name="id" type="xsd:ID"/>
  7.1499 +      </xsd:extension>
  7.1500 +    </xsd:simpleContent>
  7.1501 +  </xsd:complexType>
  7.1502 +
  7.1503 +<!-- **************************************************** -->
  7.1504 +
  7.1505 +  <xsd:complexType name="xsdPositiveIntegerType">
  7.1506 +    <xsd:annotation>
  7.1507 +      <xsd:documentation>
  7.1508 +
  7.1509 +	This type adds an "id" attribute to xsd:positiveInteger.
  7.1510 +
  7.1511 +      </xsd:documentation>
  7.1512 +    </xsd:annotation>
  7.1513 +    <xsd:simpleContent>
  7.1514 +      <xsd:extension base="xsd:positiveInteger">
  7.1515 +	<xsd:attribute name="id" type="xsd:ID"/>
  7.1516 +      </xsd:extension>
  7.1517 +    </xsd:simpleContent>
  7.1518 +  </xsd:complexType>
  7.1519 +
  7.1520 +<!-- **************************************************** -->
  7.1521 +
  7.1522 +  <xsd:complexType name="xsdQNameType">
  7.1523 +    <xsd:annotation>
  7.1524 +      <xsd:documentation>
  7.1525 +
  7.1526 +	This type adds an "id" attribute to xsd:QName.
  7.1527 +
  7.1528 +      </xsd:documentation>
  7.1529 +    </xsd:annotation>
  7.1530 +    <xsd:simpleContent>
  7.1531 +      <xsd:extension base="xsd:QName">
  7.1532 +	<xsd:attribute name="id" type="xsd:ID"/>
  7.1533 +      </xsd:extension>
  7.1534 +    </xsd:simpleContent>
  7.1535 +  </xsd:complexType>
  7.1536 +
  7.1537 +<!-- **************************************************** -->
  7.1538 +
  7.1539 +  <xsd:complexType name="xsdStringType">
  7.1540 +    <xsd:annotation>
  7.1541 +      <xsd:documentation>
  7.1542 +
  7.1543 +	This type adds an "id" attribute to xsd:string.
  7.1544 +
  7.1545 +      </xsd:documentation>
  7.1546 +    </xsd:annotation>
  7.1547 +    <xsd:simpleContent>
  7.1548 +      <xsd:extension base="xsd:string">
  7.1549 +	<xsd:attribute name="id" type="xsd:ID"/>
  7.1550 +      </xsd:extension>
  7.1551 +    </xsd:simpleContent>
  7.1552 +  </xsd:complexType>
  7.1553 +
  7.1554 +</xsd:schema>
  7.1555 +
     8.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.2 +++ b/schema2beans/test/unit/src/data/final_jsp_2_0.xsd	Tue Oct 14 20:30:08 2003 +0000
     8.3 @@ -0,0 +1,307 @@
     8.4 +<?xml version="1.0" encoding="UTF-8"?>
     8.5 +<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
     8.6 +	    targetNamespace="http://java.sun.com/xml/ns/j2ee"
     8.7 +	    xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
     8.8 +	    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     8.9 +	    elementFormDefault="qualified"
    8.10 +	    attributeFormDefault="unqualified"
    8.11 +	    version="2.0">
    8.12 +  <xsd:annotation>
    8.13 +    <xsd:documentation>
    8.14 +      @(#)jsp_2_0.xsds	1.17 03/18/03
    8.15 +    </xsd:documentation>
    8.16 +  </xsd:annotation>
    8.17 +
    8.18 +  <xsd:annotation>
    8.19 +    <xsd:documentation>
    8.20 +
    8.21 +      Copyright 2002 Sun Microsystems, Inc., 901 San Antonio
    8.22 +      Road, Palo Alto, California 94303, U.S.A. All rights
    8.23 +      reserved.
    8.24 +
    8.25 +      Sun Microsystems, Inc. has intellectual property rights
    8.26 +      relating to technology described in this document. In
    8.27 +      particular, and without limitation, these intellectual
    8.28 +      property rights may include one or more of the U.S. patents
    8.29 +      listed at http://www.sun.com/patents and one or more
    8.30 +      additional patents or pending patent applications in the
    8.31 +      U.S. and other countries.
    8.32 +
    8.33 +      This document and the technology which it describes are
    8.34 +      distributed under licenses restricting their use, copying,
    8.35 +      distribution, and decompilation. No part of this document
    8.36 +      may be reproduced in any form by any means without prior
    8.37 +      written authorization of Sun and its licensors, if any.
    8.38 +
    8.39 +      Third-party software, including font technology, is
    8.40 +      copyrighted and licensed from Sun suppliers.
    8.41 +
    8.42 +      Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
    8.43 +      JavaServer Pages, Enterprise JavaBeans and the Java Coffee
    8.44 +      Cup logo are trademarks or registered trademarks of Sun
    8.45 +      Microsystems, Inc. in the U.S. and other countries.
    8.46 +
    8.47 +      Federal Acquisitions: Commercial Software - Government Users
    8.48 +      Subject to Standard License Terms and Conditions.
    8.49 +
    8.50 +    </xsd:documentation>
    8.51 +  </xsd:annotation>
    8.52 +
    8.53 +  <xsd:annotation>
    8.54 +    <xsd:documentation>
    8.55 +
    8.56 +      This is the XML Schema for the JSP 2.0 deployment descriptor
    8.57 +      types.  The JSP 2.0 schema contains all the special
    8.58 +      structures and datatypes that are necessary to use JSP files
    8.59 +      from a web application.
    8.60 +
    8.61 +      The contents of this schema is used by the web-app_2_4.xsd
    8.62 +      file to define JSP specific content.
    8.63 +
    8.64 +    </xsd:documentation>
    8.65 +  </xsd:annotation>
    8.66 +
    8.67 +  <xsd:annotation>
    8.68 +    <xsd:documentation>
    8.69 +
    8.70 +      The following conventions apply to all J2EE
    8.71 +      deployment descriptor elements unless indicated otherwise.
    8.72 +
    8.73 +      - In elements that specify a pathname to a file within the
    8.74 +	same JAR file, relative filenames (i.e., those not
    8.75 +	starting with "/") are considered relative to the root of
    8.76 +	the JAR file's namespace.  Absolute filenames (i.e., those
    8.77 +	starting with "/") also specify names in the root of the
    8.78 +	JAR file's namespace.  In general, relative names are
    8.79 +	preferred.  The exception is .war files where absolute
    8.80 +	names are preferred for consistency with the Servlet API.
    8.81 +
    8.82 +    </xsd:documentation>
    8.83 +  </xsd:annotation>
    8.84 +
    8.85 +  <xsd:include schemaLocation="final_j2ee_1_4.xsd"/>
    8.86 +
    8.87 +
    8.88 +<!-- **************************************************** -->
    8.89 +
    8.90 +  <xsd:complexType name="jsp-configType">
    8.91 +    <xsd:annotation>
    8.92 +      <xsd:documentation>
    8.93 +
    8.94 +	The jsp-configType is used to provide global configuration
    8.95 +	information for the JSP files in a web application. It has
    8.96 +	two subelements, taglib and jsp-property-group.
    8.97 +
    8.98 +      </xsd:documentation>
    8.99 +    </xsd:annotation>
   8.100 +
   8.101 +    <xsd:sequence>
   8.102 +      <xsd:element name="taglib"
   8.103 +		   type="j2ee:taglibType"
   8.104 +		   minOccurs="0"
   8.105 +		   maxOccurs="unbounded"/>
   8.106 +      <xsd:element name="jsp-property-group"
   8.107 +		   type="j2ee:jsp-property-groupType"
   8.108 +		   minOccurs="0"
   8.109 +		   maxOccurs="unbounded"/>
   8.110 +    </xsd:sequence>
   8.111 +    <xsd:attribute name="id" type="xsd:ID"/>
   8.112 +  </xsd:complexType>
   8.113 +
   8.114 +<!-- **************************************************** -->
   8.115 +
   8.116 +  <xsd:complexType name="jsp-fileType">
   8.117 +    <xsd:annotation>
   8.118 +      <xsd:documentation>
   8.119 +
   8.120 +	The jsp-file element contains the full path to a JSP file
   8.121 +	within the web application beginning with a `/'.
   8.122 +
   8.123 +      </xsd:documentation>
   8.124 +    </xsd:annotation>
   8.125 +
   8.126 +    <xsd:simpleContent>
   8.127 +      <xsd:restriction base="j2ee:pathType"/>
   8.128 +    </xsd:simpleContent>
   8.129 +  </xsd:complexType>
   8.130 +
   8.131 +<!-- **************************************************** -->
   8.132 +
   8.133 +  <xsd:complexType name="jsp-property-groupType">
   8.134 +    <xsd:annotation>
   8.135 +      <xsd:documentation>
   8.136 +
   8.137 +	The jsp-property-groupType is used to group a number of
   8.138 +	files so they can be given global property information.
   8.139 +	All files so described are deemed to be JSP files.  The
   8.140 +	following additional properties can be described:
   8.141 +
   8.142 +	    - Control whether EL is ignored
   8.143 +	    - Control whether scripting elements are invalid
   8.144 +	    - Indicate pageEncoding information.
   8.145 +	    - Indicate that a resource is a JSP document (XML)
   8.146 +	    - Prelude and Coda automatic includes.
   8.147 +
   8.148 +      </xsd:documentation>
   8.149 +    </xsd:annotation>
   8.150 +
   8.151 +    <xsd:sequence>
   8.152 +      <xsd:group ref="j2ee:descriptionGroup"/>
   8.153 +      <xsd:element name="url-pattern"
   8.154 +		   type="j2ee:url-patternType"
   8.155 +		   maxOccurs="unbounded"/>
   8.156 +      <xsd:element name="el-ignored"
   8.157 +		   type="j2ee:true-falseType"
   8.158 +		   minOccurs="0">
   8.159 +	<xsd:annotation>
   8.160 +	  <xsd:documentation>
   8.161 +
   8.162 +	    Can be used to easily set the isELIgnored
   8.163 +	    property of a group of JSP pages.  By default, the
   8.164 +	    EL evaluation is enabled for Web Applications using
   8.165 +	    a Servlet 2.4 or greater web.xml, and disabled
   8.166 +	    otherwise.
   8.167 +
   8.168 +	  </xsd:documentation>
   8.169 +	</xsd:annotation>
   8.170 +      </xsd:element>
   8.171 +      <xsd:element name="page-encoding"
   8.172 +		   type="j2ee:string"
   8.173 +		   minOccurs="0">
   8.174 +	<xsd:annotation>
   8.175 +	  <xsd:documentation>
   8.176 +
   8.177 +	    The valid values of page-encoding are those of the
   8.178 +	    pageEncoding page directive.  It is a
   8.179 +	    translation-time error to name different encodings
   8.180 +	    in the pageEncoding attribute of the page directive
   8.181 +	    of a JSP page and in a JSP configuration element
   8.182 +	    matching the page.  It is also a translation-time
   8.183 +	    error to name different encodings in the prolog
   8.184 +	    or text declaration of a document in XML syntax and
   8.185 +	    in a JSP configuration element matching the document.
   8.186 +	    It is legal to name the same encoding through
   8.187 +	    mulitple mechanisms.
   8.188 +
   8.189 +	  </xsd:documentation>
   8.190 +	</xsd:annotation>
   8.191 +      </xsd:element>
   8.192 +      <xsd:element name="scripting-invalid"
   8.193 +		   type="j2ee:true-falseType"
   8.194 +		   minOccurs="0">
   8.195 +	<xsd:annotation>
   8.196 +	  <xsd:documentation>
   8.197 +
   8.198 +	    Can be used to easily disable scripting in a
   8.199 +	    group of JSP pages.  By default, scripting is
   8.200 +	    enabled.
   8.201 +
   8.202 +	  </xsd:documentation>
   8.203 +	</xsd:annotation>
   8.204 +      </xsd:element>
   8.205 +      <xsd:element name="is-xml"
   8.206 +		   type="j2ee:true-falseType"
   8.207 +		   minOccurs="0">
   8.208 +	<xsd:annotation>
   8.209 +	  <xsd:documentation>
   8.210 +
   8.211 +	    If true, denotes that the group of resources
   8.212 +	    that match the URL pattern are JSP documents,
   8.213 +	    and thus must be interpreted as XML documents.
   8.214 +	    If false, the resources are assumed to not
   8.215 +	    be JSP documents, unless there is another
   8.216 +	    property group that indicates otherwise.
   8.217 +
   8.218 +	  </xsd:documentation>
   8.219 +	</xsd:annotation>
   8.220 +      </xsd:element>
   8.221 +      <xsd:element name="include-prelude"
   8.222 +		   type="j2ee:pathType"
   8.223 +		   minOccurs="0"
   8.224 +		   maxOccurs="unbounded">
   8.225 +	<xsd:annotation>
   8.226 +	  <xsd:documentation>
   8.227 +
   8.228 +	    The include-prelude element is a context-relative
   8.229 +	    path that must correspond to an element in the
   8.230 +	    Web Application.  When the element is present,
   8.231 +	    the given path will be automatically included (as
   8.232 +	    in an include directive) at the beginning of each
   8.233 +	    JSP page in this jsp-property-group.
   8.234 +
   8.235 +	  </xsd:documentation>
   8.236 +	</xsd:annotation>
   8.237 +      </xsd:element>
   8.238 +      <xsd:element name="include-coda"
   8.239 +		   type="j2ee:pathType"
   8.240 +		   minOccurs="0"
   8.241 +		   maxOccurs="unbounded">
   8.242 +	<xsd:annotation>
   8.243 +	  <xsd:documentation>
   8.244 +
   8.245 +	    The include-coda element is a context-relative
   8.246 +	    path that must correspond to an element in the
   8.247 +	    Web Application.  When the element is present,
   8.248 +	    the given path will be automatically included (as
   8.249 +	    in an include directive) at the end of each
   8.250 +	    JSP page in this jsp-property-group.
   8.251 +
   8.252 +	  </xsd:documentation>
   8.253 +	</xsd:annotation>
   8.254 +      </xsd:element>
   8.255 +    </xsd:sequence>
   8.256 +    <xsd:attribute name="id" type="xsd:ID"/>
   8.257 +  </xsd:complexType>
   8.258 +
   8.259 +<!-- **************************************************** -->
   8.260 +
   8.261 +  <xsd:complexType name="taglibType">
   8.262 +    <xsd:annotation>
   8.263 +      <xsd:documentation>
   8.264 +
   8.265 +	The taglibType defines the syntax for declaring in
   8.266 +	the deployment descriptor that a tag library is
   8.267 +	available to the application.  This can be done
   8.268 +	to override implicit map entries from TLD files and
   8.269 +	from the container.
   8.270 +
   8.271 +      </xsd:documentation>
   8.272 +    </xsd:annotation>
   8.273 +
   8.274 +    <xsd:sequence>
   8.275 +      <xsd:element name="taglib-uri"
   8.276 +		   type="j2ee:string">
   8.277 +	<xsd:annotation>
   8.278 +	  <xsd:documentation>
   8.279 +
   8.280 +	    A taglib-uri element describes a URI identifying a
   8.281 +	    tag library used in the web application.  The body
   8.282 +	    of the taglib-uri element may be either an
   8.283 +	    absolute URI specification, or a relative URI.
   8.284 +	    There should be no entries in web.xml with the
   8.285 +	    same taglib-uri value.
   8.286 +
   8.287 +	  </xsd:documentation>
   8.288 +	</xsd:annotation>
   8.289 +      </xsd:element>
   8.290 +
   8.291 +      <xsd:element name="taglib-location"
   8.292 +		   type="j2ee:pathType">
   8.293 +	<xsd:annotation>
   8.294 +	  <xsd:documentation>
   8.295 +
   8.296 +	    the taglib-location element contains the location
   8.297 +	    (as a resource relative to the root of the web
   8.298 +	    application) where to find the Tag Library
   8.299 +	    Description file for the tag library.
   8.300 +
   8.301 +	  </xsd:documentation>
   8.302 +	</xsd:annotation>
   8.303 +      </xsd:element>
   8.304 +
   8.305 +    </xsd:sequence>
   8.306 +    <xsd:attribute name="id" type="xsd:ID"/>
   8.307 +  </xsd:complexType>
   8.308 +
   8.309 +</xsd:schema>
   8.310 +
     9.1 --- a/schema2beans/test/unit/src/data/goldenfiles/TestMain/testApplication1_4.pass	Tue Oct 14 17:01:36 2003 +0000
     9.2 +++ b/schema2beans/test/unit/src/data/goldenfiles/TestMain/testApplication1_4.pass	Tue Oct 14 20:30:08 2003 +0000
     9.3 @@ -4,7 +4,7 @@
     9.4  	[attr: version CDATA #FIXED 1.4 : java.math.BigDecimal] 	[whiteSpace (collapse)]
     9.5  	description : java.lang.String[0,n]
     9.6  		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
     9.7 -	display-name : java.lang.String[1,n]
     9.8 +	display-name : java.lang.String[1,n] 	[whiteSpace (collapse)]
     9.9  		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
    9.10  	icon : IconType[0,n]
    9.11  		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/schema2beans/test/unit/src/data/goldenfiles/TestMain/testFinalWebApp.pass	Tue Oct 14 20:30:08 2003 +0000
    10.3 @@ -0,0 +1,382 @@
    10.4 +Calling GenBeans.doIt
    10.5 +Bean Tree:
    10.6 +web-app : WebApp
    10.7 +	[attr: version CDATA #REQUIRED 2.4 : java.lang.String] 	[enumeration (2.4)]
    10.8 +	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
    10.9 +	(
   10.10 +	  | description : java.lang.String[0,n]
   10.11 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.12 +	  | 	[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.13 +	  | display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   10.14 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.15 +	  | 	[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.16 +	  | icon : IconType[0,n]
   10.17 +	  | 	[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.18 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.19 +	  | 	small-icon : java.lang.String[0,1]
   10.20 +	  | 	large-icon : java.lang.String[0,1]
   10.21 +	  | distributable : EmptyType
   10.22 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.23 +	  | context-param : ParamValueType
   10.24 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.25 +	  | 	description : java.lang.String[0,n]
   10.26 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.27 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.28 +	  | 	param-name : java.lang.String 	[whiteSpace (collapse)]
   10.29 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.30 +	  | 	param-value : java.lang.String
   10.31 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.32 +	  | filter : FilterType
   10.33 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.34 +	  | 	description : java.lang.String[0,n]
   10.35 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.36 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.37 +	  | 	display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   10.38 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.39 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.40 +	  | 	icon : IconType[0,n]
   10.41 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.42 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.43 +	  | 		small-icon : java.lang.String[0,1]
   10.44 +	  | 		large-icon : java.lang.String[0,1]
   10.45 +	  | 	filter-name : java.lang.String 	[minLength (1)]
   10.46 +	  | 	filter-class : java.lang.String
   10.47 +	  | 	init-param : ParamValueType[0,n]
   10.48 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.49 +	  | 		description : java.lang.String[0,n]
   10.50 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.51 +	  | 			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.52 +	  | 		param-name : java.lang.String 	[whiteSpace (collapse)]
   10.53 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.54 +	  | 		param-value : java.lang.String
   10.55 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.56 +	  | filter-mapping : FilterMappingType
   10.57 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.58 +	  | 	filter-name : java.lang.String 	[minLength (1)]
   10.59 +	  | 	| url-pattern : java.lang.String
   10.60 +	  | 	| servlet-name : java.lang.String 	[minLength (1)]
   10.61 +	  | 	dispatcher : java.lang.String[0,n] 	[enumeration (FORWARD), enumeration (INCLUDE), enumeration (REQUEST), enumeration (ERROR), maxOccurs (4)]
   10.62 +	  | listener : ListenerType
   10.63 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.64 +	  | 	description : java.lang.String[0,n]
   10.65 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.66 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.67 +	  | 	display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   10.68 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.69 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.70 +	  | 	icon : IconType[0,n]
   10.71 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.72 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.73 +	  | 		small-icon : java.lang.String[0,1]
   10.74 +	  | 		large-icon : java.lang.String[0,1]
   10.75 +	  | 	listener-class : java.lang.String
   10.76 +	  | servlet : ServletType
   10.77 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.78 +	  | 	description : java.lang.String[0,n]
   10.79 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.80 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.81 +	  | 	display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   10.82 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.83 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.84 +	  | 	icon : IconType[0,n]
   10.85 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.86 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.87 +	  | 		small-icon : java.lang.String[0,1]
   10.88 +	  | 		large-icon : java.lang.String[0,1]
   10.89 +	  | 	servlet-name : java.lang.String 	[minLength (1)]
   10.90 +	  | 	| servlet-class : java.lang.String
   10.91 +	  | 	| jsp-file : java.lang.String
   10.92 +	  | 	init-param : ParamValueType[0,n]
   10.93 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.94 +	  | 		description : java.lang.String[0,n]
   10.95 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.96 +	  | 			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   10.97 +	  | 		param-name : java.lang.String 	[whiteSpace (collapse)]
   10.98 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
   10.99 +	  | 		param-value : java.lang.String
  10.100 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.101 +	  | 	load-on-startup : java.math.BigInteger[0,1]
  10.102 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.103 +	  | 	run-as : RunAsType[0,1]
  10.104 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.105 +	  | 		description : java.lang.String[0,n]
  10.106 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.107 +	  | 			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.108 +	  | 		role-name : java.lang.String
  10.109 +	  | 	security-role-ref : SecurityRoleRefType[0,n]
  10.110 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.111 +	  | 		description : java.lang.String[0,n]
  10.112 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.113 +	  | 			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.114 +	  | 		role-name : java.lang.String
  10.115 +	  | 		role-link : java.lang.String[0,1]
  10.116 +	  | servlet-mapping : ServletMappingType
  10.117 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.118 +	  | 	servlet-name : java.lang.String 	[minLength (1)]
  10.119 +	  | 	url-pattern : java.lang.String
  10.120 +	  | session-config : SessionConfigType
  10.121 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.122 +	  | 	session-timeout : java.math.BigInteger[0,1]
  10.123 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.124 +	  | mime-mapping : MimeMappingType
  10.125 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.126 +	  | 	extension : java.lang.String 	[whiteSpace (collapse)]
  10.127 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.128 +	  | 	mime-type : java.lang.String 	[pattern ([\p{L}\-\p{Nd}]+/[\p{L}\-\p{Nd}\.]+)]
  10.129 +	  | welcome-file-list : WelcomeFileListType
  10.130 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.131 +	  | 	welcome-file : java.lang.String[1,n] 	[whiteSpace (collapse)]
  10.132 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.133 +	  | error-page : ErrorPageType
  10.134 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.135 +	  | 	| error-code : java.lang.Long 	[pattern (\d{3})]
  10.136 +	  | 	| exception-type : java.lang.String
  10.137 +	  | 	location : java.lang.String 	[pattern (/.*)]
  10.138 +	  | jsp-config : JspConfigType
  10.139 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.140 +	  | 	taglib : TaglibType[0,n]
  10.141 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.142 +	  | 		taglib-uri : java.lang.String 	[whiteSpace (collapse)]
  10.143 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.144 +	  | 		taglib-location : java.lang.String
  10.145 +	  | 	jsp-property-group : JspPropertyGroupType[0,n]
  10.146 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.147 +	  | 		description : java.lang.String[0,n]
  10.148 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.149 +	  | 			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.150 +	  | 		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
  10.151 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.152 +	  | 			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.153 +	  | 		icon : IconType[0,n]
  10.154 +	  | 			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.155 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.156 +	  | 			small-icon : java.lang.String[0,1]
  10.157 +	  | 			large-icon : java.lang.String[0,1]
  10.158 +	  | 		url-pattern : java.lang.String[1,n]
  10.159 +	  | 		el-ignored : boolean[0,1] 	[pattern ((true|false))]
  10.160 +	  | 		page-encoding : java.lang.String[0,1] 	[whiteSpace (collapse)]
  10.161 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.162 +	  | 		scripting-invalid : boolean[0,1] 	[pattern ((true|false))]
  10.163 +	  | 		is-xml : boolean[0,1] 	[pattern ((true|false))]
  10.164 +	  | 		include-prelude : java.lang.String[0,n]
  10.165 +	  | 		include-coda : java.lang.String[0,n]
  10.166 +	  | security-constraint : SecurityConstraintType
  10.167 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.168 +	  | 	display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
  10.169 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.170 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.171 +	  | 	web-resource-collection : WebResourceCollectionType[1,n]
  10.172 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.173 +	  | 		web-resource-name : java.lang.String 	[whiteSpace (collapse)]
  10.174 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.175 +	  | 		description : java.lang.String[0,n]
  10.176 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.177 +	  | 			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.178 +	  | 		url-pattern : java.lang.String[1,n]
  10.179 +	  | 		http-method : java.lang.String[0,n] 	[enumeration (GET), enumeration (POST), enumeration (PUT), enumeration (DELETE), enumeration (HEAD), enumeration (OPTIONS), enumeration (TRACE)]
  10.180 +	  | 	auth-constraint : AuthConstraintType[0,1]
  10.181 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.182 +	  | 		description : java.lang.String[0,n]
  10.183 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.184 +	  | 			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.185 +	  | 		role-name : java.lang.String[0,n]
  10.186 +	  | 	user-data-constraint : UserDataConstraintType[0,1]
  10.187 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.188 +	  | 		description : java.lang.String[0,n]
  10.189 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.190 +	  | 			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.191 +	  | 		transport-guarantee : java.lang.String 	[enumeration (NONE), enumeration (INTEGRAL), enumeration (CONFIDENTIAL)]
  10.192 +	  | login-config : LoginConfigType
  10.193 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.194 +	  | 	auth-method : java.lang.String[0,1]
  10.195 +	  | 	realm-name : java.lang.String[0,1] 	[whiteSpace (collapse)]
  10.196 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.197 +	  | 	form-login-config : FormLoginConfigType[0,1]
  10.198 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.199 +	  | 		form-login-page : java.lang.String 	[pattern (/.*)]
  10.200 +	  | 		form-error-page : java.lang.String 	[pattern (/.*)]
  10.201 +	  | security-role : SecurityRoleType
  10.202 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.203 +	  | 	description : java.lang.String[0,n]
  10.204 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.205 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.206 +	  | 	role-name : java.lang.String
  10.207 +	  | env-entry : EnvEntryType[0,n]
  10.208 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.209 +	  | 	description : java.lang.String[0,n]
  10.210 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.211 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.212 +	  | 	env-entry-name : java.lang.String
  10.213 +	  | 	env-entry-type : java.lang.String 	[enumeration (java.lang.Boolean), enumeration (java.lang.Byte), enumeration (java.lang.Character), enumeration (java.lang.String), enumeration (java.lang.Short), enumeration (java.lang.Integer), enumeration (java.lang.Long), enumeration (java.lang.Float), enumeration (java.lang.Double)]
  10.214 +	  | 	env-entry-value : java.lang.String[0,1]
  10.215 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.216 +	  | ejb-ref : EjbRefType[0,n]
  10.217 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.218 +	  | 	description : java.lang.String[0,n]
  10.219 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.220 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.221 +	  | 	ejb-ref-name : java.lang.String
  10.222 +	  | 	ejb-ref-type : java.lang.String 	[enumeration (Entity), enumeration (Session)]
  10.223 +	  | 	home : java.lang.String
  10.224 +	  | 	remote : java.lang.String
  10.225 +	  | 	ejb-link : java.lang.String[0,1]
  10.226 +	  | ejb-local-ref : EjbLocalRefType[0,n]
  10.227 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.228 +	  | 	description : java.lang.String[0,n]
  10.229 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.230 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.231 +	  | 	ejb-ref-name : java.lang.String
  10.232 +	  | 	ejb-ref-type : java.lang.String 	[enumeration (Entity), enumeration (Session)]
  10.233 +	  | 	local-home : java.lang.String
  10.234 +	  | 	local : java.lang.String
  10.235 +	  | 	ejb-link : java.lang.String[0,1]
  10.236 +	  | service-ref : ServiceRefType[0,n] 	[key name='service-ref_handler-name-key']
  10.237 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.238 +	  | 	description : java.lang.String[0,n]
  10.239 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.240 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.241 +	  | 	display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
  10.242 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.243 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.244 +	  | 	icon : IconType[0,n]
  10.245 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.246 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.247 +	  | 		small-icon : java.lang.String[0,1]
  10.248 +	  | 		large-icon : java.lang.String[0,1]
  10.249 +	  | 	service-ref-name : java.lang.String
  10.250 +	  | 	service-interface : java.lang.String
  10.251 +	  | 	wsdl-file : java.net.URI[0,1]
  10.252 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.253 +	  | 	jaxrpc-mapping-file : java.lang.String[0,1]
  10.254 +	  | 	service-qname : javax.xml.namespace.QName[0,1]
  10.255 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.256 +	  | 	port-component-ref : PortComponentRefType[0,n]
  10.257 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.258 +	  | 		service-endpoint-interface : java.lang.String
  10.259 +	  | 		port-component-link : java.lang.String[0,1] 	[whiteSpace (collapse)]
  10.260 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.261 +	  | 	handler : ServiceRefHandlerType[0,n]
  10.262 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.263 +	  | 		description : java.lang.String[0,n]
  10.264 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.265 +	  | 			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.266 +	  | 		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
  10.267 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.268 +	  | 			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.269 +	  | 		icon : IconType[0,n]
  10.270 +	  | 			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.271 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.272 +	  | 			small-icon : java.lang.String[0,1]
  10.273 +	  | 			large-icon : java.lang.String[0,1]
  10.274 +	  | 		handler-name : java.lang.String 	[whiteSpace (collapse)]
  10.275 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.276 +	  | 		handler-class : java.lang.String
  10.277 +	  | 		init-param : ParamValueType[0,n]
  10.278 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.279 +	  | 			description : java.lang.String[0,n]
  10.280 +	  | 				[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.281 +	  | 				[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.282 +	  | 			param-name : java.lang.String 	[whiteSpace (collapse)]
  10.283 +	  | 				[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.284 +	  | 			param-value : java.lang.String
  10.285 +	  | 				[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.286 +	  | 		soap-header : javax.xml.namespace.QName[0,n]
  10.287 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.288 +	  | 		soap-role : java.lang.String[0,n] 	[whiteSpace (collapse)]
  10.289 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.290 +	  | 		port-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
  10.291 +	  | 			[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.292 +	  | resource-ref : ResourceRefType[0,n]
  10.293 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.294 +	  | 	description : java.lang.String[0,n]
  10.295 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.296 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.297 +	  | 	res-ref-name : java.lang.String
  10.298 +	  | 	res-type : java.lang.String
  10.299 +	  | 	res-auth : java.lang.String 	[enumeration (Application), enumeration (Container)]
  10.300 +	  | 	res-sharing-scope : java.lang.String[0,1] 	[enumeration (Shareable), enumeration (Unshareable)]
  10.301 +	  | resource-env-ref : ResourceEnvRefType[0,n]
  10.302 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.303 +	  | 	description : java.lang.String[0,n]
  10.304 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.305 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.306 +	  | 	resource-env-ref-name : java.lang.String
  10.307 +	  | 	resource-env-ref-type : java.lang.String
  10.308 +	  | message-destination-ref : MessageDestinationRefType[0,n]
  10.309 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.310 +	  | 	description : java.lang.String[0,n]
  10.311 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.312 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.313 +	  | 	message-destination-ref-name : java.lang.String
  10.314 +	  | 	message-destination-type : java.lang.String
  10.315 +	  | 	message-destination-usage : java.lang.String 	[enumeration (Consumes), enumeration (Produces), enumeration (ConsumesProduces)]
  10.316 +	  | 	message-destination-link : java.lang.String[0,1]
  10.317 +	  | message-destination : MessageDestinationType
  10.318 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.319 +	  | 	description : java.lang.String[0,n]
  10.320 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.321 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.322 +	  | 	display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
  10.323 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.324 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.325 +	  | 	icon : IconType[0,n]
  10.326 +	  | 		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  10.327 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.328 +	  | 		small-icon : java.lang.String[0,1]
  10.329 +	  | 		large-icon : java.lang.String[0,1]
  10.330 +	  | 	message-destination-name : java.lang.String 	[whiteSpace (collapse)]
  10.331 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.332 +	  | locale-encoding-mapping-list : LocaleEncodingMappingListType
  10.333 +	  | 	[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.334 +	  | 	locale-encoding-mapping : LocaleEncodingMappingType[1,n]
  10.335 +	  | 		[attr: id CDATA #IMPLIED  : java.lang.String] 	[whiteSpace (collapse)]
  10.336 +	  | 		locale : java.lang.String 	[pattern ([a-z]{2}(_|-)?([\p{L}\-\p{Nd}]{2})?)]
  10.337 +	  | 		encoding : java.lang.String 	[pattern ([^\s]+)]
  10.338 +	)[0,n]
  10.339 +
  10.340 +Compiling
  10.341 +Finished compiling: 0
  10.342 +out: TestFinalWebApp - creating the DOM document
  10.343 +out: TestFinalWebApp - creating the bean graph
  10.344 +out: TestFinalWebApp - bean graph created
  10.345 +out: <?xml version='1.0' encoding='UTF-8' ?>
  10.346 +out: <web-app xmlns='http://java.sun.com/xml/ns/j2ee' version='2.4'>
  10.347 +out: 	<description>This is my Web App</description>
  10.348 +out: 	<display-name>MyWebApp</display-name>
  10.349 +out: 	<filter>
  10.350 +out: 		<filter-name>Bob</filter-name>
  10.351 +out: 		<filter-class></filter-class>
  10.352 +out: 	</filter>
  10.353 +out: </web-app>
  10.354 +out: TestFinalWebApp - Adding filters
  10.355 +out: <?xml version='1.0' encoding='UTF-8' ?>
  10.356 +out: <web-app xmlns='http://java.sun.com/xml/ns/j2ee' version='2.4'>
  10.357 +out: 	<description>This is my Web App</description>
  10.358 +out: 	<display-name>MyWebApp</display-name>
  10.359 +out: 	<filter>
  10.360 +out: 		<filter-name>Bob</filter-name>
  10.361 +out: 		<filter-class></filter-class>
  10.362 +out: 	</filter>
  10.363 +out: 	<filter>
  10.364 +out: 		<display-name xml:lang='en'>filter BLUE</display-name>
  10.365 +out: 		<filter-name></filter-name>
  10.366 +out: 		<filter-class></filter-class>
  10.367 +out: 	</filter>
  10.368 +out: </web-app>
  10.369 +out: TestFinalWebApp - Validating
  10.370 +out: TestFinalWebApp - Got exception: getFilterName() minLength (1)
  10.371 +out: <?xml version='1.0' encoding='UTF-8' ?>
  10.372 +out: <web-app xmlns='http://java.sun.com/xml/ns/j2ee' version='2.4'>
  10.373 +out: 	<description>This is my Web App</description>
  10.374 +out: 	<display-name>MyWebApp</display-name>
  10.375 +out: 	<filter>
  10.376 +out: 		<filter-name>Bob</filter-name>
  10.377 +out: 		<filter-class></filter-class>
  10.378 +out: 	</filter>
  10.379 +out: 	<filter>
  10.380 +out: 		<display-name xml:lang='en'>filter BLUE</display-name>
  10.381 +out: 		<filter-name></filter-name>
  10.382 +out: 		<filter-class></filter-class>
  10.383 +out: 	</filter>
  10.384 +out: </web-app>
  10.385 +Finished running TestFinalWebApp: 0
    11.1 --- a/schema2beans/test/unit/src/data/goldenfiles/TestMain/testWebApp.pass	Tue Oct 14 17:01:36 2003 +0000
    11.2 +++ b/schema2beans/test/unit/src/data/goldenfiles/TestMain/testWebApp.pass	Tue Oct 14 20:30:08 2003 +0000
    11.3 @@ -4,7 +4,7 @@
    11.4  	[attr: version CDATA #REQUIRED 2.4 : java.lang.String] 	[enumeration (2.4)]
    11.5  	description : java.lang.String[0,n]
    11.6  		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
    11.7 -	display-name : java.lang.String[0,n]
    11.8 +	display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
    11.9  		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.10  	icon : IconType[0,n]
   11.11  		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.12 @@ -16,10 +16,10 @@
   11.13  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.14  		param-name : java.lang.String 	[whiteSpace (collapse)]
   11.15  		param-value : java.lang.String
   11.16 -	filter : FilterType[0,n]
   11.17 +	filter : FilterType[0,n] 	[key name='param-key']
   11.18  		description : java.lang.String[0,n]
   11.19  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.20 -		display-name : java.lang.String[0,n]
   11.21 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   11.22  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.23  		icon : IconType[0,n]
   11.24  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.25 @@ -32,10 +32,10 @@
   11.26  				[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.27  			param-name : java.lang.String 	[whiteSpace (collapse)]
   11.28  			param-value : java.lang.String
   11.29 -	filter2 : FilterType[0,1]
   11.30 +	filter2 : FilterType[0,1] 	[key name='param-key']
   11.31  		description : java.lang.String[0,n]
   11.32  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.33 -		display-name : java.lang.String[0,n]
   11.34 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   11.35  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.36  		icon : IconType[0,n]
   11.37  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.38 @@ -56,7 +56,7 @@
   11.39  	listener : ListenerType[0,n]
   11.40  		description : java.lang.String[0,n]
   11.41  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.42 -		display-name : java.lang.String[0,n]
   11.43 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   11.44  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.45  		icon : IconType[0,n]
   11.46  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.47 @@ -66,7 +66,7 @@
   11.48  	servlet : ServletType[0,n]
   11.49  		description : java.lang.String[0,n]
   11.50  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.51 -		display-name : java.lang.String[0,n]
   11.52 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   11.53  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.54  		icon : IconType[0,n]
   11.55  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.56 @@ -115,7 +115,7 @@
   11.57  		jsp-property-group : JspPropertyGroupType[0,n]
   11.58  			description : java.lang.String[0,n]
   11.59  				[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.60 -			display-name : java.lang.String[0,n]
   11.61 +			display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   11.62  				[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.63  			url-pattern : java.lang.String[1,n]
   11.64  			el-enabled : boolean[0,1] 	[pattern ((true|false))]
   11.65 @@ -144,7 +144,7 @@
   11.66  		res-auth : java.lang.String 	[enumeration (Application), enumeration (Container)]
   11.67  		res-sharing-scope : java.lang.String[0,1] 	[enumeration (Shareable), enumeration (Unshareable)]
   11.68  	security-constraint : SecurityConstraintType[0,n]
   11.69 -		display-name : java.lang.String[0,n]
   11.70 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   11.71  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.72  		web-resource-collection : WebResourceCollectionType[1,n]
   11.73  			web-resource-name : java.lang.String 	[whiteSpace (collapse)]
   11.74 @@ -195,7 +195,7 @@
   11.75  	message-destination : MessageDestinationType[0,n]
   11.76  		description : java.lang.String[0,n]
   11.77  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.78 -		display-name : java.lang.String[0,n]
   11.79 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   11.80  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   11.81  		icon : IconType[0,n]
   11.82  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
    12.1 --- a/schema2beans/test/unit/src/data/goldenfiles/TestMain/testWebAppDelegator.pass	Tue Oct 14 17:01:36 2003 +0000
    12.2 +++ b/schema2beans/test/unit/src/data/goldenfiles/TestMain/testWebAppDelegator.pass	Tue Oct 14 20:30:08 2003 +0000
    12.3 @@ -4,7 +4,7 @@
    12.4  	[attr: version CDATA #REQUIRED 2.4 : java.lang.String] 	[enumeration (2.4)]
    12.5  	description : java.lang.String[0,n]
    12.6  		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
    12.7 -	display-name : java.lang.String[0,n]
    12.8 +	display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
    12.9  		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.10  	icon : IconType[0,n]
   12.11  		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.12 @@ -16,10 +16,10 @@
   12.13  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.14  		param-name : java.lang.String 	[whiteSpace (collapse)]
   12.15  		param-value : java.lang.String
   12.16 -	filter : FilterType[0,n]
   12.17 +	filter : FilterType[0,n] 	[key name='param-key']
   12.18  		description : java.lang.String[0,n]
   12.19  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.20 -		display-name : java.lang.String[0,n]
   12.21 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   12.22  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.23  		icon : IconType[0,n]
   12.24  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.25 @@ -40,7 +40,7 @@
   12.26  	listener : ListenerType[0,n]
   12.27  		description : java.lang.String[0,n]
   12.28  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.29 -		display-name : java.lang.String[0,n]
   12.30 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   12.31  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.32  		icon : IconType[0,n]
   12.33  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.34 @@ -50,7 +50,7 @@
   12.35  	servlet : ServletType[0,n]
   12.36  		description : java.lang.String[0,n]
   12.37  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.38 -		display-name : java.lang.String[0,n]
   12.39 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   12.40  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.41  		icon : IconType[0,n]
   12.42  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.43 @@ -99,7 +99,7 @@
   12.44  		jsp-property-group : JspPropertyGroupType[0,n]
   12.45  			description : java.lang.String[0,n]
   12.46  				[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.47 -			display-name : java.lang.String[0,n]
   12.48 +			display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   12.49  				[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.50  			url-pattern : java.lang.String[1,n]
   12.51  			el-enabled : boolean[0,1] 	[pattern ((true|false))]
   12.52 @@ -128,7 +128,7 @@
   12.53  		res-auth : java.lang.String 	[enumeration (Application), enumeration (Container)]
   12.54  		res-sharing-scope : java.lang.String[0,1] 	[enumeration (Shareable), enumeration (Unshareable)]
   12.55  	security-constraint : SecurityConstraintType[0,n]
   12.56 -		display-name : java.lang.String[0,n]
   12.57 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   12.58  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.59  		web-resource-collection : WebResourceCollectionType[1,n]
   12.60  			web-resource-name : java.lang.String 	[whiteSpace (collapse)]
   12.61 @@ -180,7 +180,7 @@
   12.62  	message-destination : MessageDestinationType[0,n]
   12.63  		description : java.lang.String[0,n]
   12.64  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.65 -		display-name : java.lang.String[0,n]
   12.66 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   12.67  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   12.68  		icon : IconType[0,n]
   12.69  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
    13.1 --- a/schema2beans/test/unit/src/data/goldenfiles/TestMain/testWebAppDelegatorBaseBean.pass	Tue Oct 14 17:01:36 2003 +0000
    13.2 +++ b/schema2beans/test/unit/src/data/goldenfiles/TestMain/testWebAppDelegatorBaseBean.pass	Tue Oct 14 20:30:08 2003 +0000
    13.3 @@ -4,7 +4,7 @@
    13.4  	[attr: version CDATA #REQUIRED 2.4 : java.lang.String] 	[enumeration (2.4)]
    13.5  	description : java.lang.String[0,n]
    13.6  		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
    13.7 -	display-name : java.lang.String[0,n]
    13.8 +	display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
    13.9  		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.10  	icon : IconType[0,n]
   13.11  		[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.12 @@ -16,10 +16,10 @@
   13.13  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.14  		param-name : java.lang.String 	[whiteSpace (collapse)]
   13.15  		param-value : java.lang.String
   13.16 -	thing : FilterType[0,1]
   13.17 +	thing : FilterType[0,1] 	[key name='param-key']
   13.18  		description : java.lang.String[0,n]
   13.19  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.20 -		display-name : java.lang.String[0,n]
   13.21 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   13.22  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.23  		icon : IconType[0,n]
   13.24  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.25 @@ -32,10 +32,10 @@
   13.26  				[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.27  			param-name : java.lang.String 	[whiteSpace (collapse)]
   13.28  			param-value : java.lang.String
   13.29 -	filter : FilterType[0,n]
   13.30 +	filter : FilterType[0,n] 	[key name='param-key']
   13.31  		description : java.lang.String[0,n]
   13.32  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.33 -		display-name : java.lang.String[0,n]
   13.34 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   13.35  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.36  		icon : IconType[0,n]
   13.37  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.38 @@ -48,10 +48,10 @@
   13.39  				[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.40  			param-name : java.lang.String 	[whiteSpace (collapse)]
   13.41  			param-value : java.lang.String
   13.42 -	thing2 : FilterType[0,1]
   13.43 +	thing2 : FilterType[0,1] 	[key name='param-key']
   13.44  		description : java.lang.String[0,n]
   13.45  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.46 -		display-name : java.lang.String[0,n]
   13.47 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   13.48  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.49  		icon : IconType[0,n]
   13.50  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.51 @@ -64,10 +64,10 @@
   13.52  				[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.53  			param-name : java.lang.String 	[whiteSpace (collapse)]
   13.54  			param-value : java.lang.String
   13.55 -	thing3 : FilterType[0,1]
   13.56 +	thing3 : FilterType[0,1] 	[key name='param-key']
   13.57  		description : java.lang.String[0,n]
   13.58  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.59 -		display-name : java.lang.String[0,n]
   13.60 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   13.61  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.62  		icon : IconType[0,n]
   13.63  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.64 @@ -88,7 +88,7 @@
   13.65  	listener : ListenerType[0,n]
   13.66  		description : java.lang.String[0,n]
   13.67  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.68 -		display-name : java.lang.String[0,n]
   13.69 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   13.70  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.71  		icon : IconType[0,n]
   13.72  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.73 @@ -98,7 +98,7 @@
   13.74  	servlet : ServletType[0,n]
   13.75  		description : java.lang.String[0,n]
   13.76  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.77 -		display-name : java.lang.String[0,n]
   13.78 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   13.79  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.80  		icon : IconType[0,n]
   13.81  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.82 @@ -147,7 +147,7 @@
   13.83  		jsp-property-group : JspPropertyGroupType[0,n]
   13.84  			description : java.lang.String[0,n]
   13.85  				[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.86 -			display-name : java.lang.String[0,n]
   13.87 +			display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   13.88  				[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.89  			url-pattern : java.lang.String[1,n]
   13.90  			el-enabled : boolean[0,1] 	[pattern ((true|false))]
   13.91 @@ -176,7 +176,7 @@
   13.92  		res-auth : java.lang.String 	[enumeration (Application), enumeration (Container)]
   13.93  		res-sharing-scope : java.lang.String[0,1] 	[enumeration (Shareable), enumeration (Unshareable)]
   13.94  	security-constraint : SecurityConstraintType[0,n]
   13.95 -		display-name : java.lang.String[0,n]
   13.96 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
   13.97  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
   13.98  		web-resource-collection : WebResourceCollectionType[1,n]
   13.99  			web-resource-name : java.lang.String 	[whiteSpace (collapse)]
  13.100 @@ -228,7 +228,7 @@
  13.101  	message-destination : MessageDestinationType[0,n]
  13.102  		description : java.lang.String[0,n]
  13.103  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  13.104 -		display-name : java.lang.String[0,n]
  13.105 +		display-name : java.lang.String[0,n] 	[whiteSpace (collapse)]
  13.106  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
  13.107  		icon : IconType[0,n]
  13.108  			[attr: xml:lang CDATA #IMPLIED  : java.lang.String]
    14.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    14.2 +++ b/schema2beans/test/unit/src/data/j2ee_web_services_client_1_1.xsd	Tue Oct 14 20:30:08 2003 +0000
    14.3 @@ -0,0 +1,343 @@
    14.4 +<?xml version="1.0" encoding="UTF-8"?>
    14.5 +<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
    14.6 +	    targetNamespace="http://java.sun.com/xml/ns/j2ee"
    14.7 +	    xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
    14.8 +	    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    14.9 +	    elementFormDefault="qualified"
   14.10 +	    attributeFormDefault="unqualified"
   14.11 +	    version="1.1">
   14.12 +  <xsd:annotation>
   14.13 +    <xsd:documentation>
   14.14 +      @(#)j2ee_web_services_client_1_1.xsds	1.10 02/11/03
   14.15 +    </xsd:documentation>
   14.16 +  </xsd:annotation>
   14.17 +
   14.18 +  <xsd:annotation>
   14.19 +    <xsd:documentation>
   14.20 +
   14.21 +      Copyright 2002 Sun Microsystems, Inc., 901 San Antonio
   14.22 +      Road, Palo Alto, California 94303, U.S.A. All rights
   14.23 +      reserved.
   14.24 +
   14.25 +      Sun Microsystems, Inc. has intellectual property rights
   14.26 +      relating to technology described in this document. In
   14.27 +      particular, and without limitation, these intellectual
   14.28 +      property rights may include one or more of the U.S. patents
   14.29 +      listed at http://www.sun.com/patents and one or more
   14.30 +      additional patents or pending patent applications in the
   14.31 +      U.S. and other countries.
   14.32 +
   14.33 +      This document and the technology which it describes are
   14.34 +      distributed under licenses restricting their use, copying,
   14.35 +      distribution, and decompilation. No part of this document
   14.36 +      may be reproduced in any form by any means without prior
   14.37 +      written authorization of Sun and its licensors, if any.
   14.38 +
   14.39 +      Third-party software, including font technology, is
   14.40 +      copyrighted and licensed from Sun suppliers.
   14.41 +
   14.42 +      Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
   14.43 +      JavaServer Pages, Enterprise JavaBeans and the Java Coffee
   14.44 +      Cup logo are trademarks or registered trademarks of Sun
   14.45 +      Microsystems, Inc. in the U.S. and other countries.
   14.46 +
   14.47 +      Federal Acquisitions: Commercial Software - Government Users
   14.48 +      Subject to Standard License Terms and Conditions.
   14.49 +
   14.50 +    </xsd:documentation>
   14.51 +  </xsd:annotation>
   14.52 +  <xsd:annotation>
   14.53 +    <xsd:documentation>
   14.54 +
   14.55 +      (C) Copyright International Business Machines Corporation 2002
   14.56 +
   14.57 +    </xsd:documentation>
   14.58 +  </xsd:annotation>
   14.59 +
   14.60 +
   14.61 +<!-- **************************************************** -->
   14.62 +
   14.63 +  <xsd:complexType name="port-component-refType">
   14.64 +    <xsd:annotation>
   14.65 +      <xsd:documentation>
   14.66 +
   14.67 +	The port-component-ref element declares a client dependency
   14.68 +	on the container for resolving a Service Endpoint Interface
   14.69 +	to a WSDL port. It optionally associates the Service Endpoint
   14.70 +	Interface with a particular port-component. This is only used
   14.71 +	by the container for a Service.getPort(Class) method call.
   14.72 +
   14.73 +      </xsd:documentation>
   14.74 +    </xsd:annotation>
   14.75 +
   14.76 +    <xsd:sequence>
   14.77 +      <xsd:element name="service-endpoint-interface"
   14.78 +		   type="j2ee:fully-qualified-classType">
   14.79 +	<xsd:annotation>
   14.80 +	  <xsd:documentation>
   14.81 +
   14.82 +	    The service-endpoint-interface element defines a fully qualified
   14.83 +	    Java class that represents the Service Endpoint Interface of a
   14.84 +	    WSDL port.
   14.85 +
   14.86 +	  </xsd:documentation>
   14.87 +	</xsd:annotation>
   14.88 +      </xsd:element>
   14.89 +
   14.90 +      <xsd:element name="port-component-link"
   14.91 +		   type="j2ee:string"
   14.92 +		   minOccurs="0" maxOccurs="1">
   14.93 +	<xsd:annotation>
   14.94 +	  <xsd:documentation>
   14.95 +
   14.96 +	    The port-component-link element links a port-component-ref
   14.97 +	    to a specific port-component required to be made available
   14.98 +	    by a service reference.
   14.99 +
  14.100 +	    The value of a port-component-link must be the
  14.101 +	    port-component-name of a port-component in the same module
  14.102 +	    or another module in the same application unit. The syntax
  14.103 +	    for specification follows the syntax defined for ejb-link
  14.104 +	    in the EJB 2.0 specification.
  14.105 +
  14.106 +	  </xsd:documentation>
  14.107 +	</xsd:annotation>
  14.108 +      </xsd:element>
  14.109 +    </xsd:sequence>
  14.110 +    <xsd:attribute name="id" type="xsd:ID"/>
  14.111 +  </xsd:complexType>
  14.112 +
  14.113 +<!-- **************************************************** -->
  14.114 +
  14.115 +  <xsd:group name="service-refGroup">
  14.116 +    <xsd:sequence>
  14.117 +      <xsd:element name="service-ref"
  14.118 +		   type="j2ee:service-refType"
  14.119 +		   minOccurs="0" maxOccurs="unbounded">
  14.120 +	<xsd:key name="service-ref_handler-name-key">
  14.121 +	  <xsd:annotation>
  14.122 +	    <xsd:documentation>
  14.123 +
  14.124 +	      Defines the name of the handler. The name must be unique
  14.125 +	      within the module.
  14.126 +
  14.127 +	    </xsd:documentation>
  14.128 +	  </xsd:annotation>
  14.129 +	  <xsd:selector xpath="j2ee:handler"/>
  14.130 +	  <xsd:field xpath="j2ee:handler-name"/>
  14.131 +	</xsd:key>
  14.132 +      </xsd:element>
  14.133 +    </xsd:sequence>
  14.134 +  </xsd:group>
  14.135 +
  14.136 +<!-- **************************************************** -->
  14.137 +
  14.138 +  <xsd:complexType name="service-refType">
  14.139 +    <xsd:annotation>
  14.140 +      <xsd:documentation>
  14.141 +
  14.142 +	The service-ref element declares a reference to a Web
  14.143 +	service. It contains optional description, display name and
  14.144 +	icons, a declaration of the required Service interface,
  14.145 +	an optional WSDL document location, an optional set
  14.146 +	of JAX-RPC mappings, an optional QName for the service element,
  14.147 +	an optional set of Service Endpoint Interfaces to be resolved
  14.148 +	by the container to a WSDL port, and an optional set of handlers.
  14.149 +
  14.150 +      </xsd:documentation>
  14.151 +    </xsd:annotation>
  14.152 +
  14.153 +    <xsd:sequence>
  14.154 +      <xsd:group ref="j2ee:descriptionGroup"/>
  14.155 +      <xsd:element name="service-ref-name"
  14.156 +		   type="j2ee:jndi-nameType">
  14.157 +	<xsd:annotation>
  14.158 +	  <xsd:documentation>
  14.159 +
  14.160 +	    The service-ref-name element declares logical name that the
  14.161 +	    components in the module use to look up the Web service. It
  14.162 +	    is recommended that all service reference names start with
  14.163 +	    "service/".
  14.164 +
  14.165 +	  </xsd:documentation>
  14.166 +	</xsd:annotation>
  14.167 +      </xsd:element>
  14.168 +
  14.169 +      <xsd:element name="service-interface"
  14.170 +		   type="j2ee:fully-qualified-classType">
  14.171 +	<xsd:annotation>
  14.172 +	  <xsd:documentation>
  14.173 +
  14.174 +	    The service-interface element declares the fully qualified class
  14.175 +	    name of the JAX-RPC Service interface the client depends on.
  14.176 +	    In most cases the value will be javax.xml.rpc.Service.  A JAX-RPC
  14.177 +	    generated Service Interface class may also be specified.
  14.178 +
  14.179 +	  </xsd:documentation>
  14.180 +	</xsd:annotation>
  14.181 +      </xsd:element>
  14.182 +
  14.183 +      <xsd:element name="wsdl-file"
  14.184 +		   type="j2ee:xsdAnyURIType"
  14.185 +		   minOccurs="0" maxOccurs="1">
  14.186 +	<xsd:annotation>
  14.187 +	  <xsd:documentation>
  14.188 +
  14.189 +	    The wsdl-file element contains the URI location of a WSDL
  14.190 +	    file. The location is relative to the root of the module.
  14.191 +
  14.192 +	  </xsd:documentation>
  14.193 +	</xsd:annotation>
  14.194 +      </xsd:element>
  14.195 +
  14.196 +      <xsd:element name="jaxrpc-mapping-file"
  14.197 +		   type="j2ee:pathType"
  14.198 +		   minOccurs="0" maxOccurs="1">
  14.199 +	<xsd:annotation>
  14.200 +	  <xsd:documentation>
  14.201 +
  14.202 +	    The jaxrpc-mapping-file element contains the name of a file that
  14.203 +	    describes the JAX-RPC mapping between the Java interaces used by
  14.204 +	    the application and the WSDL description in the wsdl-file.  The
  14.205 +	    file name is a relative path within the module file.
  14.206 +
  14.207 +	  </xsd:documentation>
  14.208 +	</xsd:annotation>
  14.209 +      </xsd:element>
  14.210 +
  14.211 +      <xsd:element name="service-qname"
  14.212 +		   type="j2ee:xsdQNameType"
  14.213 +		   minOccurs="0" maxOccurs="1">
  14.214 +	<xsd:annotation>
  14.215 +	  <xsd:documentation>
  14.216 +
  14.217 +	    The service-qname element declares the specific WSDL service
  14.218 +	    element that is being refered to.  It is not specified if no
  14.219 +	    wsdl-file is declared.
  14.220 +
  14.221 +	  </xsd:documentation>
  14.222 +	</xsd:annotation>
  14.223 +      </xsd:element>
  14.224 +
  14.225 +      <xsd:element name="port-component-ref"
  14.226 +		   type="j2ee:port-component-refType"
  14.227 +		   minOccurs="0" maxOccurs="unbounded">
  14.228 +	<xsd:annotation>
  14.229 +	  <xsd:documentation>
  14.230 +
  14.231 +	    The port-component-ref element declares a client dependency
  14.232 +	    on the container for resolving a Service Endpoint Interface
  14.233 +	    to a WSDL port. It optionally associates the Service Endpoint
  14.234 +	    Interface with a particular port-component. This is only used
  14.235 +	    by the container for a Service.getPort(Class) method call.
  14.236 +
  14.237 +	  </xsd:documentation>
  14.238 +	</xsd:annotation>
  14.239 +      </xsd:element>
  14.240 +
  14.241 +      <xsd:element name="handler"
  14.242 +		   type="j2ee:service-ref_handlerType"
  14.243 +		   minOccurs="0" maxOccurs="unbounded">
  14.244 +	<xsd:annotation>
  14.245 +	  <xsd:documentation>
  14.246 +
  14.247 +	    Declares the handler for a port-component. Handlers can
  14.248 +	    access the init-param name/value pairs using the
  14.249 +	    HandlerInfo interface. If port-name is not specified, the
  14.250 +	    handler is assumed to be associated with all ports of the
  14.251 +	    service.
  14.252 +
  14.253 +	  </xsd:documentation>
  14.254 +	</xsd:annotation>
  14.255 +      </xsd:element>
  14.256 +    </xsd:sequence>
  14.257 +    <xsd:attribute name="id" type="xsd:ID"/>
  14.258 +  </xsd:complexType>
  14.259 +
  14.260 +<!-- **************************************************** -->
  14.261 +
  14.262 +  <xsd:complexType name="service-ref_handlerType">
  14.263 +    <xsd:annotation>
  14.264 +      <xsd:documentation>
  14.265 +
  14.266 +	Declares the handler for a port-component. Handlers can access the
  14.267 +	init-param name/value pairs using the HandlerInfo interface. If
  14.268 +	port-name is not specified, the handler is assumed to be associated
  14.269 +	with all ports of the service.
  14.270 +
  14.271 +	Used in: service-ref
  14.272 +
  14.273 +      </xsd:documentation>
  14.274 +    </xsd:annotation>
  14.275 +    <xsd:sequence>
  14.276 +      <xsd:group ref="j2ee:descriptionGroup"/>
  14.277 +      <xsd:element name="handler-name"
  14.278 +		   type="j2ee:string">
  14.279 +	<xsd:annotation>
  14.280 +	  <xsd:documentation>
  14.281 +
  14.282 +	    Defines the name of the handler. The name must be unique
  14.283 +	    within the module.
  14.284 +
  14.285 +	  </xsd:documentation>
  14.286 +	</xsd:annotation>
  14.287 +      </xsd:element>
  14.288 +      <xsd:element name="handler-class"
  14.289 +		   type="j2ee:fully-qualified-classType">
  14.290 +	<xsd:annotation>
  14.291 +	  <xsd:documentation>
  14.292 +
  14.293 +	    Defines a fully qualified class name for the handler
  14.294 +	    implementation.
  14.295 +
  14.296 +	  </xsd:documentation>
  14.297 +	</xsd:annotation>
  14.298 +      </xsd:element>
  14.299 +      <xsd:element name="init-param"
  14.300 +		   type="j2ee:param-valueType"
  14.301 +		   minOccurs="0" maxOccurs="unbounded"/>
  14.302 +
  14.303 +      <xsd:element name="soap-header"
  14.304 +		   type="j2ee:xsdQNameType"
  14.305 +		   minOccurs="0" maxOccurs="unbounded">
  14.306 +	<xsd:annotation>
  14.307 +	  <xsd:documentation>
  14.308 +
  14.309 +	    Defines the QName of a SOAP header that will be processed
  14.310 +	    by the handler.
  14.311 +
  14.312 +	  </xsd:documentation>
  14.313 +	</xsd:annotation>
  14.314 +      </xsd:element>
  14.315 +
  14.316 +      <xsd:element name="soap-role"
  14.317 +		   type="j2ee:string"
  14.318 +		   minOccurs="0" maxOccurs="unbounded">
  14.319 +	<xsd:annotation>
  14.320 +	  <xsd:documentation>
  14.321 +
  14.322 +	    The soap-role element contains a SOAP actor definition that
  14.323 +	    the Handler will play as a role.
  14.324 +
  14.325 +	  </xsd:documentation>
  14.326 +	</xsd:annotation>
  14.327 +      </xsd:element>
  14.328 +
  14.329 +      <xsd:element name="port-name"
  14.330 +		   type="j2ee:string"
  14.331 +		   minOccurs="0" maxOccurs="unbounded">
  14.332 +	<xsd:annotation>
  14.333 +	  <xsd:documentation>
  14.334 +
  14.335 +	    The port-name element defines the WSDL port-name that a
  14.336 +	    handler should be associated with.
  14.337 +
  14.338 +	  </xsd:documentation>
  14.339 +	</xsd:annotation>
  14.340 +      </xsd:element>
  14.341 +    </xsd:sequence>
  14.342 +    <xsd:attribute name="id" type="xsd:ID"/>
  14.343 +  </xsd:complexType>
  14.344 +
  14.345 +</xsd:schema>
  14.346 +