Attached is a patch to bring the other Servlet 2.4 XSD files up to date
with the JSP patch I submitted on September 19.

Files modified:
    - jsr154/src/share/dtd/j2ee_1_4.xsd
    - jsr154/src/share/dtd/web-app_2_4.xsd
    - jsr154/src/share/dtd/xml.xsd

--
Mark Roth, Java Software
JSP 2.0 Co-Specification Lead
Sun Microsystems, Inc.

Index: jsr154/src/share/dtd/j2ee_1_4.xsd
===================================================================
RCS file: /home/cvspublic/jakarta-servletapi-5/jsr154/src/share/dtd/j2ee_1_4.xsd,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 j2ee_1_4.xsd
--- jsr154/src/share/dtd/j2ee_1_4.xsd	13 Aug 2002 16:21:47 -0000	1.1.1.1
+++ jsr154/src/share/dtd/j2ee_1_4.xsd	24 Sep 2002 17:56:24 -0000
@@ -9,7 +9,7 @@
      version="1.4">
 <xsd:annotation>
 <xsd:documentation>
-@(#)j2ee_1_4.xsds	1.20 02/07/12
+@(#)j2ee_1_4.xsds	1.28 02/09/19
 </xsd:documentation>
 </xsd:annotation>
 
@@ -74,6 +74,8 @@
 <xsd:import namespace="http://www.w3.org/XML/1998/namespace";
             schemaLocation="http://www.w3.org/2001/xml.xsd"/>
 
+<xsd:include schemaLocation="j2ee_web_services_client_1_1.xsd"/>
+
 
 <!-- **************************************************** -->
 
@@ -123,11 +125,39 @@
                    type="xsd:anyURI"/>
     <xsd:attribute name="mustUnderstand"
                    type="xsd:boolean"/>
+    <xsd:attribute name="id" type="xsd:ID"/>
 
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
+<xsd:group name="descriptionGroup">
+    <xsd:annotation>
+    <xsd:documentation>
+
+    This group is used to keep the contained elements in a consistent
+    order across J2EE deployment descriptors.
+
+    </xsd:documentation>
+    </xsd:annotation>
+    <xsd:sequence>
+        <xsd:element name="description"
+                     type="j2ee:descriptionType"
+                     minOccurs="0"
+                     maxOccurs="unbounded"/>
+        <xsd:element name="display-name"
+                     type="j2ee:display-nameType"
+                     minOccurs="0"
+                     maxOccurs="unbounded"/>
+        <xsd:element name="icon"
+                     type="j2ee:iconType"
+                     minOccurs="0"
+                     maxOccurs="unbounded"/>
+    </xsd:sequence>
+</xsd:group>
+
+<!-- **************************************************** -->
+
 <xsd:complexType name="descriptionType">
 <xsd:annotation>
 <xsd:documentation>
@@ -147,13 +177,11 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
     <xsd:simpleContent>
-        <xsd:extension base="xsd:string">
-        <xsd:attribute ref="xml:lang"/>
+        <xsd:extension base="j2ee:xsdStringType">
+            <xsd:attribute ref="xml:lang"/>
         </xsd:extension>
     </xsd:simpleContent>
-
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -187,24 +215,22 @@
 Example:
 
 ...
-   <display-name xml:lang="en">Employee Self Service</display-name>
+   &lt;display-name xml:lang="en">Employee Self Service&lt;/display-name>
 
 The value of the xml:lang attribute is "en" (English) by default.
 
 </xsd:documentation>
 </xsd:annotation>
-
     <xsd:simpleContent>
         <xsd:extension base="j2ee:string">
-        <xsd:attribute ref="xml:lang"/>
+            <xsd:attribute ref="xml:lang"/>
         </xsd:extension>
     </xsd:simpleContent>
-
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="ejb-linkType">
+<xsd:complexType name="ejb-linkType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -226,16 +252,18 @@
 
 Examples:
 
+<![CDATA[
     <ejb-link>EmployeeRecord</ejb-link>
 
     <ejb-link>../products/product.jar#ProductEJB</ejb-link>
+]]>
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:string"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -275,13 +303,17 @@
         <xsd:element name="ejb-link"
                      type="j2ee:ejb-linkType"
                      minOccurs="0"/>
+        <xsd:element name="deployment-extension"
+                     type="j2ee:deployment-extensionType"
+                     minOccurs="0"
+                     maxOccurs="unbounded"/>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="ejb-ref-nameType">
+<xsd:complexType name="ejb-ref-nameType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -295,18 +327,18 @@
 
 Example:
 
-<ejb-ref-name>ejb/Payroll</ejb-ref-name>
+&lt;ejb-ref-name>ejb/Payroll&lt;/ejb-ref-name>
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:jndi-nameType"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:jndi-nameType"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="ejb-ref-typeType">
+<xsd:complexType name="ejb-ref-typeType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -321,13 +353,13 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:string">
-        <xsd:enumeration value="Entity"/>
-        <xsd:enumeration value="Session"/>
-    </xsd:restriction>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string">
+            <xsd:enumeration value="Entity"/>
+            <xsd:enumeration value="Session"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -369,8 +401,12 @@
         <xsd:element name="ejb-link"
                      type="j2ee:ejb-linkType"
                      minOccurs="0"/>
+        <xsd:element name="deployment-extension"
+                     type="j2ee:deployment-extensionType"
+                     minOccurs="0"
+                     maxOccurs="unbounded"/>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -384,11 +420,12 @@
 
 </xsd:documentation>
 </xsd:annotation>
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="env-entry-type-valuesType">
+<xsd:complexType name="env-entry-type-valuesType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -410,24 +447,24 @@
 
 Example:
 
-<env-entry-type>java.lang.Boolean</env-entry-type>
+&lt;env-entry-type>java.lang.Boolean&lt;/env-entry-type>
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:string">
-        <xsd:enumeration value="java.lang.Boolean"/>
-        <xsd:enumeration value="java.lang.Byte"/>
-        <xsd:enumeration value="java.lang.Character"/>
-        <xsd:enumeration value="java.lang.String"/>
-        <xsd:enumeration value="java.lang.Short"/>
-        <xsd:enumeration value="java.lang.Integer"/>
-        <xsd:enumeration value="java.lang.Long"/>
-        <xsd:enumeration value="java.lang.Float"/>
-        <xsd:enumeration value="java.lang.Double"/>
-    </xsd:restriction>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string">
+            <xsd:enumeration value="java.lang.Boolean"/>
+            <xsd:enumeration value="java.lang.Byte"/>
+            <xsd:enumeration value="java.lang.Character"/>
+            <xsd:enumeration value="java.lang.String"/>
+            <xsd:enumeration value="java.lang.Short"/>
+            <xsd:enumeration value="java.lang.Integer"/>
+            <xsd:enumeration value="java.lang.Long"/>
+            <xsd:enumeration value="java.lang.Float"/>
+            <xsd:enumeration value="java.lang.Double"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -466,7 +503,7 @@
 
         Example:
 
-        <env-entry-name>minAmount</env-entry-name>
+        &lt;env-entry-name>minAmount&lt;/env-entry-name>
 
         </xsd:documentation>
         </xsd:annotation>
@@ -476,7 +513,7 @@
                      type="j2ee:env-entry-type-valuesType"/>
 
         <xsd:element name="env-entry-value"
-                     type="xsd:string"
+                     type="j2ee:xsdStringType"
                      minOccurs="0">
         <xsd:annotation>
         <xsd:documentation>
@@ -490,13 +527,14 @@
 
         Example:
 
-        <env-entry-value>100.00</env-entry-value>
+        &lt;env-entry-value>100.00&lt;/env-entry-value>
 
         </xsd:documentation>
         </xsd:annotation>
         </xsd:element>
 
     </xsd:sequence>
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -513,11 +551,12 @@
 
 </xsd:documentation>
 </xsd:annotation>
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="fully-qualified-classType">
+<xsd:complexType name="fully-qualified-classType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -526,14 +565,14 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:string"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="generic-booleanType">
+<xsd:complexType name="generic-booleanType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -543,19 +582,19 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:string">
-        <xsd:enumeration value="true"/>
-        <xsd:enumeration value="false"/>
-        <xsd:enumeration value="yes"/>
-        <xsd:enumeration value="no"/>
-    </xsd:restriction>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string">
+            <xsd:enumeration value="true"/>
+            <xsd:enumeration value="false"/>
+            <xsd:enumeration value="yes"/>
+            <xsd:enumeration value="no"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="homeType">
+<xsd:complexType name="homeType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -564,14 +603,14 @@
 
 Example:
 
-    <home>com.aardvark.payroll.PayrollHome</home>
+    &lt;home>com.aardvark.payroll.PayrollHome&lt;/home>
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:fully-qualified-classType"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:fully-qualified-classType"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -606,7 +645,7 @@
 
         Example:
 
-        <small-icon>employee-service-icon16x16.jpg</small-icon>
+        &lt;small-icon>employee-service-icon16x16.jpg&lt;/small-icon>
         </xsd:documentation>
         </xsd:annotation>
         </xsd:element>
@@ -626,7 +665,7 @@
 
         Example:
 
-        <large-icon>employee-service-icon32x32.jpg</large-icon>
+        &lt;large-icon>employee-service-icon32x32.jpg&lt;/large-icon>
         </xsd:documentation>
         </xsd:annotation>
         </xsd:element>
@@ -634,12 +673,13 @@
     </xsd:sequence>
 
     <xsd:attribute ref="xml:lang"/>
+    <xsd:attribute name="id" type="xsd:ID"/>
 
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="java-identifierType">
+<xsd:complexType name="java-identifierType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -649,16 +689,16 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:string">
-        <xsd:pattern value="($|_|\p{L})(\p{L}|\p{Nd}|_|$)*"/>
-    </xsd:restriction>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string">
+            <xsd:pattern value="($|_|\p{L})(\p{L}|\p{Nd}|_|$)*"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="jndi-nameType">
+<xsd:complexType name="jndi-nameType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -669,14 +709,14 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:string"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="local-homeType">
+<xsd:complexType name="local-homeType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -685,14 +725,14 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:fully-qualified-classType"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:fully-qualified-classType"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="localType">
+<xsd:complexType name="localType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -701,14 +741,14 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:fully-qualified-classType"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:fully-qualified-classType"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="message-destination-linkType">
+<xsd:complexType name="message-destination-linkType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -734,10 +774,10 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:fully-qualified-classType"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:fully-qualified-classType"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -760,6 +800,7 @@
 
 Examples:
 
+<![CDATA[
 <message-destination-ref>
         <message-destination-ref-name>jms/StockQueue
         </message-destination-ref-name>
@@ -770,6 +811,7 @@
         <message-destination-link>CorporateStocks
         </message-destination-link>
 </message-destination-ref>
+]]>
 
 </xsd:documentation>
 </xsd:annotation>
@@ -802,13 +844,18 @@
         <xsd:element name="message-destination-link"
                      type="j2ee:message-destination-linkType"
                      minOccurs="0"/>
+        <xsd:element name="deployment-extension"
+                     type="j2ee:deployment-extensionType"
+                     minOccurs="0"
+                     maxOccurs="unbounded"/>
     </xsd:sequence>
+    <xsd:attribute name="id" type="xsd:ID"/>
 
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="message-destination-typeType">
+<xsd:complexType name="message-destination-typeType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -818,19 +865,19 @@
 
 Example:
 
- <message-destination-type>javax.jms.Queue
- </message-destination-type>
+ &lt;message-destination-type>javax.jms.Queue
+ &lt;/message-destination-type>
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:fully-qualified-classType"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:fully-qualified-classType"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="message-destination-usageType">
+<xsd:complexType name="message-destination-usageType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -849,14 +896,14 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:string">
-        <xsd:enumeration value="Consumes"/>
-        <xsd:enumeration value="Produces"/>
-        <xsd:enumeration value="ConsumesProduces"/>
-    </xsd:restriction>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string">
+            <xsd:enumeration value="Consumes"/>
+            <xsd:enumeration value="Produces"/>
+            <xsd:enumeration value="ConsumesProduces"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -879,26 +926,17 @@
 
 Example:
 
+<![CDATA[
 <message-destination>
         <message-destination-name>CorporateStocks
         </message-destination-name>
 </message-destination>
+]]>
 
 </xsd:documentation>
 </xsd:annotation>
     <xsd:sequence>
-        <xsd:element name="description"
-                     type="j2ee:descriptionType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
-        <xsd:element name="display-name"
-                     type="j2ee:display-nameType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
-        <xsd:element name="icon"
-                     type="j2ee:iconType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
+        <xsd:group ref="j2ee:descriptionGroup"/>
         <xsd:element name="message-destination-name"
                      type="j2ee:string">
         <xsd:annotation>
@@ -913,7 +951,13 @@
         </xsd:annotation>
         </xsd:element>
 
+        <xsd:element name="deployment-extension"
+                     type="j2ee:deployment-extensionType"
+                     minOccurs="0"
+                     maxOccurs="unbounded"/>
+
     </xsd:sequence>
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -946,7 +990,7 @@
         </xsd:element>
 
         <xsd:element name="param-value"
-             type="xsd:string">
+             type="j2ee:xsdStringType">
         <xsd:annotation>
         <xsd:documentation>
 
@@ -957,12 +1001,12 @@
         </xsd:annotation>
         </xsd:element>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="pathType">
+<xsd:complexType name="pathType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -980,14 +1024,14 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:string"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="remoteType">
+<xsd:complexType name="remoteType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -996,18 +1040,18 @@
 
 Example:
 
-    <remote>com.wombat.empl.EmployeeService</remote>
+    &lt;remote>com.wombat.empl.EmployeeService&lt;/remote>
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:fully-qualified-classType"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:fully-qualified-classType"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="res-authType">
+<xsd:complexType name="res-authType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -1025,17 +1069,17 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:string">
-        <xsd:enumeration value="Application"/>
-        <xsd:enumeration value="Container"/>
-    </xsd:restriction>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string">
+            <xsd:enumeration value="Application"/>
+            <xsd:enumeration value="Container"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="res-sharing-scopeType">
+<xsd:complexType name="res-sharing-scopeType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -1051,13 +1095,13 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:string">
-        <xsd:enumeration value="Shareable"/>
-        <xsd:enumeration value="Unshareable"/>
-    </xsd:restriction>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string">
+            <xsd:enumeration value="Shareable"/>
+            <xsd:enumeration value="Unshareable"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -1076,12 +1120,14 @@
 
 Example:
 
+<![CDATA[
 <resource-env-ref>
     <resource-env-ref-name>jms/StockQueue
     </resource-env-ref-name>
     <resource-env-ref-type>javax.jms.Queue
     </resource-env-ref-type>
 </resource-env-ref>
+]]>
 
 </xsd:documentation>
 </xsd:annotation>
@@ -1121,8 +1167,13 @@
         </xsd:annotation>
         </xsd:element>
 
-    </xsd:sequence>
+        <xsd:element name="deployment-extension"
+                     type="j2ee:deployment-extensionType"
+                     minOccurs="0"
+                     maxOccurs="unbounded"/>
 
+    </xsd:sequence>
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -1143,12 +1194,14 @@
 
 Example:
 
+<![CDATA[
 <resource-ref>
     <res-ref-name>jdbc/EmployeeAppDB</res-ref-name>
     <res-type>javax.sql.DataSource</res-type>
     <res-auth>Container</res-auth>
     <res-sharing-scope>Shareable</res-sharing-scope>
 </resource-ref>
+]]>
 
 </xsd:documentation>
 </xsd:annotation>
@@ -1193,13 +1246,18 @@
         <xsd:element name="res-sharing-scope"
                      type="j2ee:res-sharing-scopeType"
                      minOccurs="0"/>
-    </xsd:sequence>
 
+        <xsd:element name="deployment-extension"
+                     type="j2ee:deployment-extensionType"
+                     minOccurs="0"
+                     maxOccurs="unbounded"/>
+    </xsd:sequence>
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="role-nameType">
+<xsd:complexType name="role-nameType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -1210,9 +1268,10 @@
 </xsd:documentation>
 </xsd:annotation>
 
-    <xsd:restriction base="xsd:NMTOKEN"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:xsdNMTOKENType"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -1235,7 +1294,7 @@
         <xsd:element name="role-name"
                      type="j2ee:role-nameType"/>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -1289,7 +1348,7 @@
         </xsd:annotation>
         </xsd:element>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -1304,6 +1363,7 @@
 
 Example:
 
+<![CDATA[
     <security-role>
     <description>
         This role includes all employees who are authorized
@@ -1311,6 +1371,8 @@
     </description>
     <role-name>employee</role-name>
     </security-role>
+]]>
+
 </xsd:documentation>
 </xsd:annotation>
 
@@ -1322,12 +1384,12 @@
         <xsd:element name="role-name"
                      type="j2ee:role-nameType"/>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="string">
+<xsd:complexType name="string">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -1339,16 +1401,16 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="xsd:string">
-        <xsd:whiteSpace value="collapse"/>
-    </xsd:restriction>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:extension base="xsd:token">
+            <xsd:attribute name="id" type="xsd:ID"/>
+        </xsd:extension>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="true-falseType">
+<xsd:complexType name="true-falseType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -1360,15 +1422,16 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="xsd:boolean">
-        <xsd:pattern value="(true|false)"/>
-    </xsd:restriction>
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:xsdBooleanType">
+            <xsd:pattern value="(true|false)"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="url-patternType">
+<xsd:complexType name="url-patternType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -1378,14 +1441,14 @@
 
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:string"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="war-pathType">
+<xsd:complexType name="war-pathType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -1395,12 +1458,148 @@
 
 </xsd:documentation>
 </xsd:annotation>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string">
+            <xsd:pattern value="/.*"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
-    <xsd:restriction base="j2ee:string">
-        <xsd:pattern value="/.*"/>
-    </xsd:restriction>
+<!-- **************************************************** -->
 
-</xsd:simpleType>
+<xsd:complexType name="xsdAnyURIType">
+<xsd:annotation>
+<xsd:documentation>
+
+This type adds an "id" attribute to xsd:anyURI.
+
+</xsd:documentation>
+</xsd:annotation>
+    <xsd:simpleContent>
+        <xsd:extension base="xsd:anyURI">
+            <xsd:attribute name="id" type="xsd:ID"/>
+        </xsd:extension>
+    </xsd:simpleContent>
+</xsd:complexType>
+
+<!-- **************************************************** -->
+
+<xsd:complexType name="xsdBooleanType">
+<xsd:annotation>
+<xsd:documentation>
+
+This type adds an "id" attribute to xsd:boolean.
+
+</xsd:documentation>
+</xsd:annotation>
+    <xsd:simpleContent>
+        <xsd:extension base="xsd:boolean">
+            <xsd:attribute name="id" type="xsd:ID"/>
+        </xsd:extension>
+    </xsd:simpleContent>
+</xsd:complexType>
+
+<!-- **************************************************** -->
+
+<xsd:complexType name="xsdIntegerType">
+<xsd:annotation>
+<xsd:documentation>
+
+This type adds an "id" attribute to xsd:integer.
+
+</xsd:documentation>
+</xsd:annotation>
+    <xsd:simpleContent>
+        <xsd:extension base="xsd:integer">
+            <xsd:attribute name="id" type="xsd:ID"/>
+        </xsd:extension>
+    </xsd:simpleContent>
+</xsd:complexType>
+
+<!-- **************************************************** -->
+
+<xsd:complexType name="xsdNMTOKENType">
+<xsd:annotation>
+<xsd:documentation>
+
+This type adds an "id" attribute to xsd:NMTOKEN.
+
+</xsd:documentation>
+</xsd:annotation>
+    <xsd:simpleContent>
+        <xsd:extension base="xsd:NMTOKEN">
+            <xsd:attribute name="id" type="xsd:ID"/>
+        </xsd:extension>
+    </xsd:simpleContent>
+</xsd:complexType>
+
+<!-- **************************************************** -->
+
+<xsd:complexType name="xsdNonNegativeIntegerType">
+<xsd:annotation>
+<xsd:documentation>
+
+This type adds an "id" attribute to xsd:nonNegativeInteger.
+
+</xsd:documentation>
+</xsd:annotation>
+    <xsd:simpleContent>
+        <xsd:extension base="xsd:nonNegativeInteger">
+            <xsd:attribute name="id" type="xsd:ID"/>
+        </xsd:extension>
+    </xsd:simpleContent>
+</xsd:complexType>
+
+<!-- **************************************************** -->
+
+<xsd:complexType name="xsdPositiveIntegerType">
+<xsd:annotation>
+<xsd:documentation>
+
+This type adds an "id" attribute to xsd:positiveInteger.
+
+</xsd:documentation>
+</xsd:annotation>
+    <xsd:simpleContent>
+        <xsd:extension base="xsd:positiveInteger">
+            <xsd:attribute name="id" type="xsd:ID"/>
+        </xsd:extension>
+    </xsd:simpleContent>
+</xsd:complexType>
+
+<!-- **************************************************** -->
+
+<xsd:complexType name="xsdQNameType">
+<xsd:annotation>
+<xsd:documentation>
+
+This type adds an "id" attribute to xsd:QName.
+
+</xsd:documentation>
+</xsd:annotation>
+    <xsd:simpleContent>
+        <xsd:extension base="xsd:QName">
+            <xsd:attribute name="id" type="xsd:ID"/>
+        </xsd:extension>
+    </xsd:simpleContent>
+</xsd:complexType>
+
+<!-- **************************************************** -->
+
+<xsd:complexType name="xsdStringType">
+<xsd:annotation>
+<xsd:documentation>
+
+This type adds an "id" attribute to xsd:string.
+
+</xsd:documentation>
+</xsd:annotation>
+    <xsd:simpleContent>
+        <xsd:extension base="xsd:string">
+            <xsd:attribute name="id" type="xsd:ID"/>
+        </xsd:extension>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 </xsd:schema>
 
Index: jsr154/src/share/dtd/web-app_2_4.xsd
===================================================================
RCS file: /home/cvspublic/jakarta-servletapi-5/jsr154/src/share/dtd/web-app_2_4.xsd,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 web-app_2_4.xsd
--- jsr154/src/share/dtd/web-app_2_4.xsd	13 Aug 2002 16:21:47 -0000	1.1.1.1
+++ jsr154/src/share/dtd/web-app_2_4.xsd	24 Sep 2002 17:56:25 -0000
@@ -8,7 +8,7 @@
      version="2.4">
 <xsd:annotation>
 <xsd:documentation>
-@(#)web-app_2_4.xsds	1.34 02/08/01
+@(#)web-app_2_4.xsds	1.40 02/09/19
 </xsd:documentation>
 </xsd:annotation>
 
@@ -60,12 +60,12 @@
 and by indicating the version of the schema by
 using the version element as shown below:
 
-    <web-app xmlns="http://java.sun.com/xml/ns/j2ee";
+    &lt;web-app xmlns="http://java.sun.com/xml/ns/j2ee";
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
      xsi:schemaLocation="..."
      version="2.4">
     ...
-    </web-app>
+    &lt;/web-app>
 
 The instance documents may indicate the published version of
 the schema using the xsi:schemaLocation attribute for J2EE
@@ -262,7 +262,6 @@
         <xsd:selector xpath="j2ee:servlet/j2ee:security-role-ref"/>
         <xsd:field    xpath="j2ee:role-link"/>
     </xsd:keyref>
-
 </xsd:element>
 
 
@@ -296,12 +295,12 @@
                  type="j2ee:role-nameType"
                  minOccurs="0" maxOccurs="unbounded"/>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="auth-methodType">
+<xsd:complexType name="auth-methodType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -317,18 +316,19 @@
 </xsd:documentation>
 </xsd:annotation>
 
-    <xsd:restriction base="j2ee:string">
-        <xsd:enumeration value="BASIC"/>
-        <xsd:enumeration value="DIGEST"/>
-        <xsd:enumeration value="FORM"/>
-        <xsd:enumeration value="CLIENT-CERT"/>
-    </xsd:restriction>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string">
+            <xsd:enumeration value="BASIC"/>
+            <xsd:enumeration value="DIGEST"/>
+            <xsd:enumeration value="FORM"/>
+            <xsd:enumeration value="CLIENT-CERT"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="dispatcherType">
+<xsd:complexType name="dispatcherType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -346,18 +346,18 @@
 </xsd:documentation>
 </xsd:annotation>
 
-    <xsd:restriction base="j2ee:string">
-        <xsd:enumeration value="FORWARD"/>
-    <xsd:enumeration value="INCLUDE"/>
-    <xsd:enumeration value="REQUEST"/>
-
-    </xsd:restriction>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string">
+            <xsd:enumeration value="FORWARD"/>
+            <xsd:enumeration value="INCLUDE"/>
+            <xsd:enumeration value="REQUEST"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="error-codeType">
+<xsd:complexType name="error-codeType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -368,9 +368,12 @@
 </xsd:documentation>
 </xsd:annotation>
 
-    <xsd:restriction base="positiveInteger"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:xsdPositiveIntegerType">
+            <xsd:attribute name="id" type="xsd:ID"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -388,7 +391,7 @@
 </xsd:annotation>
 
     <xsd:sequence>
-        <choice>
+        <xsd:choice>
         <xsd:element name="error-code"
                      type="j2ee:error-codeType"/>
 
@@ -403,7 +406,7 @@
         </xsd:documentation>
         </xsd:annotation>
         </xsd:element>
-        </choice>
+        </xsd:choice>
 
         <xsd:element name="location"
                      type="j2ee:pathType">
@@ -419,7 +422,7 @@
         </xsd:annotation>
         </xsd:element>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -450,22 +453,22 @@
     <xsd:sequence>
         <xsd:element name="filter-name"
                  type="j2ee:filter-nameType"/>
-        <choice>
+        <xsd:choice>
             <xsd:element name="url-pattern"
                      type="j2ee:url-patternType"/>
             <xsd:element name="servlet-name"
                      type="j2ee:servlet-nameType"/>
-        </choice>
+        </xsd:choice>
         <xsd:element name="dispatcher"
                      type="j2ee:dispatcherType"
                      minOccurs="0" maxOccurs="unbounded"/>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="filter-nameType">
+<xsd:complexType name="filter-nameType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -479,9 +482,10 @@
 </xsd:documentation>
 </xsd:annotation>
 
-    <xsd:restriction base="j2ee:string"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -502,16 +506,7 @@
 </xsd:annotation>
 
     <xsd:sequence>
-        <xsd:element name="description"
-                     type="j2ee:descriptionType"
-                     minOccurs="0" maxOccurs="unbounded"/>
-        <xsd:element name="display-name"
-                     type="j2ee:display-nameType"
-                     minOccurs="0" maxOccurs="unbounded"/>
-        <xsd:element name="icon"
-                     type="j2ee:iconType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
+        <xsd:group ref="j2ee:descriptionGroup"/>
         <xsd:element name="filter-name"
                      type="j2ee:filter-nameType"/>
         <xsd:element name="filter-class"
@@ -538,7 +533,7 @@
         </xsd:annotation>
         </xsd:element>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -588,12 +583,12 @@
         </xsd:element>
 
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="http-methodType">
+<xsd:complexType name="http-methodType">
 <xsd:annotation>
 
 <xsd:documentation>
@@ -603,17 +598,18 @@
 </xsd:documentation>
 </xsd:annotation>
 
-    <xsd:restriction base="j2ee:string">
-        <xsd:enumeration value="GET"/>
-        <xsd:enumeration value="POST"/>
-        <xsd:enumeration value="PUT"/>
-        <xsd:enumeration value="DELETE"/>
-        <xsd:enumeration value="HEAD"/>
-        <xsd:enumeration value="OPTIONS"/>
-        <xsd:enumeration value="TRACE"/>
-    </xsd:restriction>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string">
+            <xsd:enumeration value="GET"/>
+            <xsd:enumeration value="POST"/>
+            <xsd:enumeration value="PUT"/>
+            <xsd:enumeration value="DELETE"/>
+            <xsd:enumeration value="HEAD"/>
+            <xsd:enumeration value="OPTIONS"/>
+            <xsd:enumeration value="TRACE"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -630,18 +626,7 @@
 </xsd:annotation>
 
     <xsd:sequence>
-        <xsd:element name="description"
-                     type="j2ee:descriptionType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
-        <xsd:element name="display-name"
-                     type="j2ee:display-nameType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
-        <xsd:element name="icon"
-                     type="j2ee:iconType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
+        <xsd:group ref="j2ee:descriptionGroup"/>
         <xsd:element name="listener-class"
                      type="j2ee:fully-qualified-classType">
         <xsd:annotation>
@@ -656,7 +641,7 @@
         </xsd:annotation>
         </xsd:element>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -671,11 +656,12 @@
 </xsd:documentation>
 </xsd:annotation>
 
-<xsd:sequence>
-    <xsd:element name="locale-encoding-mapping"
-        type="j2ee:locale-encoding-mappingType"
-        maxOccurs="unbounded"/>
-</xsd:sequence>
+    <xsd:sequence>
+        <xsd:element name="locale-encoding-mapping"
+            type="j2ee:locale-encoding-mappingType"
+            maxOccurs="unbounded"/>
+    </xsd:sequence>
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -692,12 +678,13 @@
 </xsd:documentation>
 </xsd:annotation>
 
-<xsd:sequence>
-    <xsd:element name="locale"
-        type="j2ee:string"/>
-    <xsd:element name="encoding"
-        type="j2ee:string"/>
-</xsd:sequence>
+    <xsd:sequence>
+        <xsd:element name="locale"
+            type="j2ee:string"/>
+        <xsd:element name="encoding"
+            type="j2ee:string"/>
+    </xsd:sequence>
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -735,7 +722,7 @@
                      type="j2ee:form-login-configType"
                      minOccurs="0"/>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -767,12 +754,12 @@
         <xsd:element name="mime-type"
                      type="j2ee:mime-typeType"/>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="mime-typeType">
+<xsd:complexType name="mime-typeType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -786,11 +773,12 @@
 </xsd:documentation>
 </xsd:annotation>
 
-    <xsd:restriction base="j2ee:string">
-        <xsd:pattern value="[\p{L}\-\p{Nd}]+/[\p{L}\-\p{Nd}\.]+"/>
-    </xsd:restriction>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string">
+            <xsd:pattern value="[\p{L}\-\p{Nd}]+/[\p{L}\-\p{Nd}\.]+"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -822,7 +810,7 @@
                      type="j2ee:user-data-constraintType"
                      minOccurs="0"/>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -845,12 +833,12 @@
         <xsd:element name="url-pattern"
                      type="j2ee:url-patternType"/>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="servlet-nameType">
+<xsd:complexType name="servlet-nameType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -861,9 +849,10 @@
 </xsd:documentation>
 </xsd:annotation>
 
-    <xsd:restriction base="j2ee:string"/>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string"/>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -883,19 +872,10 @@
 </xsd:annotation>
 
     <xsd:sequence>
-        <xsd:element name="description"
-                     type="j2ee:descriptionType"
-                     minOccurs="0" maxOccurs="unbounded"/>
-        <xsd:element name="display-name"
-                     type="j2ee:display-nameType"
-                     minOccurs="0" maxOccurs="unbounded"/>
-        <xsd:element name="icon"
-                     type="j2ee:iconType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
+        <xsd:group ref="j2ee:descriptionGroup"/>
         <xsd:element name="servlet-name"
                      type="j2ee:servlet-nameType"/>
-        <choice>
+        <xsd:choice>
             <xsd:element name="servlet-class"
                          type="j2ee:fully-qualified-classType">
             <xsd:annotation>
@@ -911,13 +891,13 @@
             <xsd:element name="jsp-file"
                          type="j2ee:jsp-fileType"/>
 
-        </choice>
+        </xsd:choice>
 
         <xsd:element name="init-param"
                      type="j2ee:param-valueType"
                      minOccurs="0" maxOccurs="unbounded"/>
         <xsd:element name="load-on-startup"
-                     type="xsd:integer"
+                     type="j2ee:xsdIntegerType"
                      minOccurs="0">
         <xsd:annotation>
         <xsd:documentation>
@@ -952,6 +932,7 @@
                      type="j2ee:deployment-extensionType"
                      minOccurs="0" maxOccurs="unbounded"/>
     </xsd:sequence>
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -970,8 +951,8 @@
 
     <xsd:sequence>
         <xsd:element name="session-timeout"
-                 type="xsd:nonNegativeInteger"
-                 minOccurs="0">
+                     type="j2ee:xsdNonNegativeIntegerType"
+                     minOccurs="0">
         <xsd:annotation>
         <xsd:documentation>
 
@@ -988,12 +969,12 @@
         </xsd:annotation>
         </xsd:element>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
 
-<xsd:simpleType name="transport-guaranteeType">
+<xsd:complexType name="transport-guaranteeType">
 <xsd:annotation>
 <xsd:documentation>
 
@@ -1015,13 +996,14 @@
 </xsd:documentation>
 </xsd:annotation>
 
-    <xsd:restriction base="j2ee:string">
-        <xsd:enumeration value="NONE"/>
-        <xsd:enumeration value="INTEGRAL"/>
-        <xsd:enumeration value="CONFIDENTIAL"/>
-    </xsd:restriction>
-
-</xsd:simpleType>
+    <xsd:simpleContent>
+        <xsd:restriction base="j2ee:string">
+            <xsd:enumeration value="NONE"/>
+            <xsd:enumeration value="INTEGRAL"/>
+            <xsd:enumeration value="CONFIDENTIAL"/>
+        </xsd:restriction>
+    </xsd:simpleContent>
+</xsd:complexType>
 
 <!-- **************************************************** -->
 
@@ -1046,7 +1028,7 @@
         <xsd:element name="transport-guarantee"
                      type="j2ee:transport-guaranteeType"/>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -1059,20 +1041,11 @@
 web-application supported. It is used to designate the
 version of the web application.
 
-Example:
-
-<web-app>
-    <version>2.4</version>
-...
-</web-app>
-
 </xsd:documentation>
 </xsd:annotation>
-
-    <xsd:restriction base="j2ee:string">
+    <xsd:restriction base="xsd:token">
         <xsd:enumeration value="2.4"/>
     </xsd:restriction>
-
 </xsd:simpleType>
 
 <!-- **************************************************** -->
@@ -1080,18 +1053,7 @@
 <xsd:complexType name="web-appType">
 
     <xsd:sequence>
-        <xsd:element name="description"
-                     type="j2ee:descriptionType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
-        <xsd:element name="display-name"
-                     type="j2ee:display-nameType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
-        <xsd:element name="icon"
-                     type="j2ee:iconType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
+        <xsd:group ref="j2ee:descriptionGroup"/>
         <xsd:element name="distributable"
                      type="j2ee:emptyType"
                      minOccurs="0"/>
@@ -1145,18 +1107,6 @@
         <xsd:element name="jsp-config"
                      type="j2ee:jsp-configType"
                      minOccurs="0"/>
-        <xsd:element name="resource-env-ref"
-                     type="j2ee:resource-env-refType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
-        <xsd:element name="message-destination-ref"
-                     type="j2ee:message-destination-refType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
-        <xsd:element name="resource-ref"
-                     type="j2ee:resource-refType"
-                     minOccurs="0"
-                     maxOccurs="unbounded"/>
         <xsd:element name="security-constraint"
                      type="j2ee:security-constraintType"
                      minOccurs="0"
@@ -1180,6 +1130,19 @@
                      type="j2ee:ejb-local-refType"
                      minOccurs="0"
                      maxOccurs="unbounded"/>
+        <xsd:group ref="j2ee:service-refGroup"/>
+        <xsd:element name="resource-ref"
+                     type="j2ee:resource-refType"
+                     minOccurs="0"
+                     maxOccurs="unbounded"/>
+        <xsd:element name="resource-env-ref"
+                     type="j2ee:resource-env-refType"
+                     minOccurs="0"
+                     maxOccurs="unbounded"/>
+        <xsd:element name="message-destination-ref"
+                     type="j2ee:message-destination-refType"
+                     minOccurs="0"
+                     maxOccurs="unbounded"/>
         <xsd:element name="message-destination"
                      type="j2ee:message-destinationType"
                      minOccurs="0"
@@ -1197,7 +1160,7 @@
     <xsd:attribute name="version"
                    type="j2ee:web-app-versionType"
                    use="required"/>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -1240,7 +1203,7 @@
                      type="j2ee:http-methodType"
                      minOccurs="0" maxOccurs="unbounded"/>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 <!-- **************************************************** -->
@@ -1271,7 +1234,7 @@
         </xsd:annotation>
         </xsd:element>
     </xsd:sequence>
-
+    <xsd:attribute name="id" type="xsd:ID"/>
 </xsd:complexType>
 
 </xsd:schema>
Index: jsr154/src/share/dtd/xml.xsd
===================================================================
RCS file: /home/cvspublic/jakarta-servletapi-5/jsr154/src/share/dtd/xml.xsd,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 xml.xsd
--- jsr154/src/share/dtd/xml.xsd	13 Aug 2002 16:21:47 -0000	1.1.1.1
+++ jsr154/src/share/dtd/xml.xsd	24 Sep 2002 17:56:28 -0000
@@ -1,7 +1,5 @@
 <?xml version='1.0'?>
-<!-- Xerces 2.0.1 bug when trying to resolve the systemID locally
 <!DOCTYPE xs:schema PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN" "XMLSchema.dtd" >
--->
 <xs:schema targetNamespace="http://www.w3.org/XML/1998/namespace"; xmlns:xs="http://www.w3.org/2001/XMLSchema"; xml:lang="en">
 
  <xs:annotation>

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to