Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNick Sandonato2013-03-05 18:58:36 +0000
committerNick Sandonato2013-03-05 18:58:36 +0000
commit851f28e8cd21b19788b3097c59436b5662c78ce6 (patch)
tree88a202c0b4cac84113c688b7ecf9bf9ced5de391
parent606bb19833a79e9b048f406c7c5f01f3b004ec6f (diff)
downloadwebtools.sourceediting-851f28e8cd21b19788b3097c59436b5662c78ce6.tar.gz
webtools.sourceediting-851f28e8cd21b19788b3097c59436b5662c78ce6.tar.xz
webtools.sourceediting-851f28e8cd21b19788b3097c59436b5662c78ce6.zip
[399524] Basic Java EE 7 supportv201303051900
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application-client_7.xsd331
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application_7.xsd414
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/beans_1_1.xsd339
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/connector_1_7.xsd1233
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/ejb-jar_3_2.xsd3321
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_7.xsd3063
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_web_services_1_4.xsd572
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_web_services_client_1_4.xsd737
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/jsp_2_3.xsd389
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-app_3_1.xsd272
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-common_3_1.xsd1579
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-facelettaglibrary_2_2.xsd611
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-facesconfig_2_2.xsd3781
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-fragment_3_1.xsd272
-rw-r--r--bundles/org.eclipse.jst.standard.schemas/plugin.xml53
15 files changed, 16963 insertions, 4 deletions
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application-client_7.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application-client_7.xsd
new file mode 100644
index 0000000000..7b28e2f735
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application-client_7.xsd
@@ -0,0 +1,331 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="7">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2009-2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ This is the XML Schema for the application client 7
+ deployment descriptor. The deployment descriptor must
+ be named "META-INF/application-client.xml" in the
+ application client's jar file. All application client
+ deployment descriptors must indicate the application
+ client schema by using the Java EE namespace:
+
+ http://xmlns.jcp.org/xml/ns/javaee
+
+ and indicate the version of the schema by
+ using the version element as shown below:
+
+ <application-client xmlns="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
+ http://xmlns.jcp.org/xml/ns/javaee/application-client_7.xsd"
+ version="7">
+ ...
+ </application-client>
+
+ The instance documents may indicate the published version of
+ the schema using the xsi:schemaLocation attribute for Java EE
+ namespace with the following location:
+
+ http://xmlns.jcp.org/xml/ns/javaee/application-client_7.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all Java EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="javaee_7.xsd"/>
+
+
+<!-- **************************************************** -->
+
+ <xsd:element name="application-client"
+ type="javaee:application-clientType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The application-client element is the root element of an
+ application client deployment descriptor. The application
+ client deployment descriptor describes the EJB components
+ and external resources referenced by the application
+ client.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:unique name="env-entry-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The env-entry-name element contains the name of an
+ application client's environment entry. The name is a JNDI
+ name relative to the java:comp/env context. The name must
+ be unique within an application client.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:env-entry"/>
+ <xsd:field xpath="javaee:env-entry-name"/>
+ </xsd:unique>
+ <xsd:unique name="ejb-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-ref-name element contains the name of an EJB
+ reference. The EJB reference is an entry in the application
+ client's environment and is relative to the
+ java:comp/env context. The name must be unique within the
+ application client.
+
+ It is recommended that name is prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-ref"/>
+ <xsd:field xpath="javaee:ejb-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="res-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The res-ref-name element specifies the name of a
+ resource manager connection factory reference.The name
+ is a JNDI name relative to the java:comp/env context.
+ The name must be unique within an application client.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-ref"/>
+ <xsd:field xpath="javaee:res-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="resource-env-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The resource-env-ref-name element specifies the name of
+ a resource environment reference; its value is the
+ environment entry name used in the application client
+ code. The name is a JNDI name relative to the
+ java:comp/env context and must be unique within an
+ application client.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-env-ref"/>
+ <xsd:field xpath="javaee:resource-env-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="message-destination-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The message-destination-ref-name element specifies the
+ name of a message destination reference; its value is
+ the message destination reference name used in the
+ application client code. The name is a JNDI name
+ relative to the java:comp/env context and must be unique
+ within an application client.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:message-destination-ref"/>
+ <xsd:field xpath="javaee:message-destination-ref-name"/>
+ </xsd:unique>
+ </xsd:element>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="application-clientType">
+ <xsd:sequence>
+ <xsd:element name="module-name"
+ type="javaee:string"
+ minOccurs="0"/>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="env-entry"
+ type="javaee:env-entryType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="ejb-ref"
+ type="javaee:ejb-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:group ref="javaee:service-refGroup"/>
+ <xsd:element name="resource-ref"
+ type="javaee:resource-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="resource-env-ref"
+ type="javaee:resource-env-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="message-destination-ref"
+ type="javaee:message-destination-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="persistence-unit-ref"
+ type="javaee:persistence-unit-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="post-construct"
+ type="javaee:lifecycle-callbackType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="pre-destroy"
+ type="javaee:lifecycle-callbackType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="callback-handler"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The callback-handler element names a class provided by
+ the application. The class must have a no args
+ constructor and must implement the
+ javax.security.auth.callback.CallbackHandler
+ interface. The class will be instantiated by the
+ application client container and used by the container
+ to collect authentication information from the user.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="message-destination"
+ type="javaee:message-destinationType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="data-source"
+ type="javaee:data-sourceType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="jms-connection-factory"
+ type="javaee:jms-connection-factoryType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="jms-destination"
+ type="javaee:jms-destinationType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="mail-session"
+ type="javaee:mail-sessionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="connection-factory"
+ type="javaee:connection-factory-resourceType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="administered-object"
+ type="javaee:administered-objectType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="version"
+ type="javaee:dewey-versionType"
+ fixed="7"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The required value for the version is 7.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="metadata-complete"
+ type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The metadata-complete attribute defines whether this
+ deployment descriptor and other related deployment
+ descriptors for this module (e.g., web service
+ descriptors) are complete, or whether the class
+ files available to this module and packaged with
+ this application should be examined for annotations
+ that specify deployment information.
+
+ If metadata-complete is set to "true", the deployment
+ tool must ignore any annotations that specify deployment
+ information, which might be present in the class files
+ of the application.
+
+ If metadata-complete is not specified or is set to
+ "false", the deployment tool must examine the class
+ files of the application for annotations, as
+ specified by the specifications.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+</xsd:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application_7.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application_7.xsd
new file mode 100644
index 0000000000..3f855da9a1
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/application_7.xsd
@@ -0,0 +1,414 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="7">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2009-2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ This is the XML Schema for the application 7 deployment
+ descriptor. The deployment descriptor must be named
+ "META-INF/application.xml" in the application's ear file.
+ All application deployment descriptors must indicate
+ the application schema by using the Java EE namespace:
+
+ http://xmlns.jcp.org/xml/ns/javaee
+
+ and indicate the version of the schema by
+ using the version element as shown below:
+
+ <application xmlns="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
+ http://xmlns.jcp.org/xml/ns/javaee/application_7.xsd"
+ version="7">
+ ...
+ </application>
+
+ The instance documents may indicate the published version of
+ the schema using the xsi:schemaLocation attribute for Java EE
+ namespace with the following location:
+
+ http://xmlns.jcp.org/xml/ns/javaee/application_7.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all Java EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="javaee_7.xsd"/>
+
+
+<!-- **************************************************** -->
+
+ <xsd:element name="application"
+ type="javaee:applicationType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The application element is the root element of a Java EE
+ application deployment descriptor.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:unique name="context-root-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The context-root element content must be unique
+ in the ear.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:module/javaee:web"/>
+ <xsd:field xpath="javaee:context-root"/>
+ </xsd:unique>
+ <xsd:unique name="security-role-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The security-role-name element content
+ must be unique in the ear.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:security-role"/>
+ <xsd:field xpath="javaee:role-name"/>
+ </xsd:unique>
+ </xsd:element>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="applicationType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The applicationType defines the structure of the
+ application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="application-name"
+ type="javaee:string"
+ minOccurs="0"/>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="initialize-in-order"
+ type="javaee:generic-booleanType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ If initialize-in-order is true, modules must be initialized
+ in the order they're listed in this deployment descriptor,
+ with the exception of application client modules, which can
+ be initialized in any order.
+ If initialize-in-order is not set or set to false, the order
+ of initialization is unspecified and may be product-dependent.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="module"
+ type="javaee:moduleType"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The application deployment descriptor must have one
+ module element for each Java EE module in the
+ application package. A module element is defined
+ by moduleType definition.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="security-role"
+ type="javaee:security-roleType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="library-directory"
+ type="javaee:pathType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The library-directory element specifies the pathname
+ of a directory within the application package, relative
+ to the top level of the application package. All files
+ named "*.jar" in this directory must be made available
+ in the class path of all components included in this
+ application package. If this element isn't specified,
+ the directory named "lib" is searched. An empty element
+ may be used to disable searching.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="env-entry"
+ type="javaee:env-entryType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="ejb-ref"
+ type="javaee:ejb-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="ejb-local-ref"
+ type="javaee:ejb-local-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:group ref="javaee:service-refGroup"/>
+ <xsd:element name="resource-ref"
+ type="javaee:resource-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="resource-env-ref"
+ type="javaee:resource-env-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="message-destination-ref"
+ type="javaee:message-destination-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="persistence-context-ref"
+ type="javaee:persistence-context-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="persistence-unit-ref"
+ type="javaee:persistence-unit-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="message-destination"
+ type="javaee:message-destinationType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="data-source"
+ type="javaee:data-sourceType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="jms-connection-factory"
+ type="javaee:jms-connection-factoryType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="jms-destination"
+ type="javaee:jms-destinationType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="mail-session"
+ type="javaee:mail-sessionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="connection-factory"
+ type="javaee:connection-factory-resourceType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="administered-object"
+ type="javaee:administered-objectType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="version"
+ type="javaee:dewey-versionType"
+ fixed="7"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The required value for the version is 7.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="moduleType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The moduleType defines a single Java EE module and contains a
+ connector, ejb, java, or web element, which indicates the
+ module type and contains a path to the module file, and an
+ optional alt-dd element, which specifies an optional URI to
+ the post-assembly version of the deployment descriptor.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:choice>
+ <xsd:element name="connector"
+ type="javaee:pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The connector element specifies the URI of a
+ resource adapter archive file, relative to the
+ top level of the application package.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="ejb"
+ type="javaee:pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb element specifies the URI of an ejb-jar,
+ relative to the top level of the application
+ package.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="java"
+ type="javaee:pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The java element specifies the URI of a java
+ application client module, relative to the top
+ level of the application package.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="web"
+ type="javaee:webType"/>
+ </xsd:choice>
+ <xsd:element name="alt-dd"
+ type="javaee:pathType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The alt-dd element specifies an optional URI to the
+ post-assembly version of the deployment descriptor
+ file for a particular Java EE module. The URI must
+ specify the full pathname of the deployment
+ descriptor file relative to the application's root
+ directory. If alt-dd is not specified, the deployer
+ must read the deployment descriptor from the default
+ location and file name required by the respective
+ component specification.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="webType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The webType defines the web-uri and context-root of
+ a web application module.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="web-uri"
+ type="javaee:pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The web-uri element specifies the URI of a web
+ application file, relative to the top level of the
+ application package.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="context-root"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The context-root element specifies the context root
+ of a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+</xsd:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/beans_1_1.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/beans_1_1.xsd
new file mode 100644
index 0000000000..79316a0c56
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/beans_1_1.xsd
@@ -0,0 +1,339 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <!--
+ JBoss, Home of Professional Open Source Copyright 2008, Red Hat
+ Middleware LLC, and individual contributors by the @authors tag.
+ See the copyright.txt in the distribution for a full listing of
+ individual contributors. Licensed under the Apache License,
+ Version 2.0 (the "License"); you may not use this file except in
+ compliance with the License. You may obtain a copy of the License
+ at http://www.apache.org/licenses/LICENSE-2.0 Unless required by
+ applicable law or agreed to in writing, software distributed under
+ the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
+ OR CONDITIONS OF ANY KIND, either express or implied. See the
+ License for the specific language governing permissions and
+ limitations under the License.
+ -->
+
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ version="1.1">
+
+ <xs:annotation>
+ <xs:documentation>
+ <![CDATA[[
+ Contexts and Dependency Injection (CDI) defines
+ a set of complementary services that help improve the structure
+ of application code. beans.xml is used to enable CDI services
+ for the current bean archive as well as to enable named
+ interceptors, decorators and alternatives for the current bean
+ archive.
+
+
+ This is the XML Schema for the beans.xml deployment
+ descriptor for CDI 1.1. The deployment descriptor must be named
+ "META-INF/beans.xml" or "WEB-INF/beans.xml" in a war file.
+ All application deployment descriptors may indicate
+ the application schema by using the Java EE namespace:
+
+ http://xmlns.jcp.org/xml/ns/javaee
+
+ and may indicate the version of the schema by
+ using the version element as shown below:
+
+ <beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
+ http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd"
+ version="1.1">
+ ...
+ </beans>
+
+ The deployment descriptor may indicate the published version of
+ the schema using the xsi:schemaLocation attribute for the Java EE
+ namespace with the following location:
+
+ http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd
+
+ ]]>
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="beans">
+ <xs:annotation>
+ <xs:documentation>
+ Bean classes of enabled beans must be
+ deployed in bean archives. A library jar, EJB jar,
+ application client jar or rar archive is a bean archive if
+ it has a file named beans.xml in the META-INF directory. The
+ WEB-INF/classes directory of a war is a bean archive if
+ there is a file named beans.xml in the WEB-INF directory of
+ the war. A directory in the JVM classpath is a bean archive
+ if it has a file named beans.xml in the META-INF directory.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="javaee:interceptors" />
+ <xs:element ref="javaee:decorators" />
+ <xs:element ref="javaee:alternatives" />
+ <xs:element ref="javaee:scan" />
+ <xs:any namespace="##other" processContents="lax"/>
+ </xs:choice>
+ <xs:attribute name="version" default="1.1">
+ <xs:annotation>
+ <xs:documentation>
+ The version of CDI this beans.xml is for. If the version is "1.1" (or
+ later), then the attribute bean-discovery-mode must be added.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:pattern value="\.?[0-9]+(\.[0-9]+)*"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="bean-discovery-mode" use="required">
+ <xs:annotation>
+ <xs:documentation>
+ It is strongly recommended you use "annotated".
+
+ If the bean discovery mode is "all", then all types in this
+ archive will be considered. If the bean discovery mode is
+ "annotated", then only those types with bean defining annotations will be
+ considered. If the bean discovery mode is "none", then no
+ types will be considered.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="annotated">
+ <xs:annotation>
+ <xs:documentation>
+ Only those types with bean defining annotations will be
+ considered.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="all">
+ <xs:annotation>
+ <xs:documentation>
+ All types in this archive will be considered.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="none">
+ <xs:annotation>
+ <xs:documentation>
+ This archive will be ignored.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="scan">
+ <xs:annotation>
+ <xs:documentation>
+
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence maxOccurs="unbounded" minOccurs="0">
+ <xs:element name="exclude">
+ <xs:annotation>
+ <xs:documentation>
+
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded" minOccurs="0">
+ <xs:element name="if-class-available">
+ <xs:annotation>
+ <xs:documentation>
+
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="name" type="xs:string" use="required">
+ <xs:annotation>
+ <xs:documentation>
+
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="if-system-property">
+ <xs:annotation>
+ <xs:documentation>
+
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="name" type="xs:string" use="required">
+ <xs:annotation>
+ <xs:documentation>
+
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="value" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>
+
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ </xs:choice>
+ <xs:attribute name="name" use="required">
+ <xs:annotation>
+ <xs:documentation>
+
+ </xs:documentation>
+ </xs:annotation>
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="([a-zA-Z_$][a-zA-Z\d_$]*\.)*([a-zA-Z_$][a-zA-Z\d_$]*|\*|\*\*)" />
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="interceptors">
+ <xs:annotation>
+ <xs:documentation>
+ By default, a bean archive has no enabled
+ interceptors bound via interceptor bindings. An interceptor
+ must be explicitly enabled by listing its class under the
+ &lt;interceptors&gt; element of the beans.xml file of the
+ bean archive. The order of the interceptor declarations
+ determines the interceptor ordering. Interceptors which
+ occur earlier in the list are called first. If the same
+ class is listed twice under the &lt;interceptors&gt;
+ element, the container automatically detects the problem and
+ treats it as a deployment problem.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="class" type="xs:string">
+ <xs:annotation>
+ <xs:documentation>
+ Each child &lt;class&gt; element
+ must specify the name of an interceptor class. If
+ there is no class with the specified name, or if
+ the class with the specified name is not an
+ interceptor class, the container automatically
+ detects the problem and treats it as a deployment
+ problem.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="decorators">
+ <xs:annotation>
+ <xs:documentation>
+ By default, a bean archive has no enabled
+ decorators. A decorator must be explicitly enabled by
+ listing its bean class under the &lt;decorators&gt; element
+ of the beans.xml file of the bean archive. The order of the
+ decorator declarations determines the decorator ordering.
+ Decorators which occur earlier in the list are called first.
+ If the same class is listed twice under the
+ &lt;decorators&gt; element, the container automatically
+ detects the problem and treats it as a deployment problem.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="class" type="xs:string">
+ <xs:annotation>
+ <xs:documentation>
+ Each child &lt;class&gt; element
+ must specify the name of a decorator class. If
+ there is no class with the specified name, or if
+ the class with the specified name is not a
+ decorator class, the container automatically
+ detects the problem and treats it as a deployment
+ problem.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="alternatives">
+ <xs:annotation>
+ <xs:documentation>
+ An alternative is a bean that must be
+ explicitly declared in the beans.xml file if it should be
+ available for lookup, injection or EL resolution. By
+ default, a bean archive has no selected alternatives. An
+ alternative must be explicitly declared using the
+ &lt;alternatives&gt; element of the beans.xml file of the
+ bean archive. The &lt;alternatives&gt; element contains a
+ list of bean classes and stereotypes. An alternative is
+ selected for the bean archive if either: the alternative is
+ a managed bean or session bean and the bean class of the
+ bean is listed, or the alternative is a producer method,
+ field or resource, and the bean class that declares the
+ method or field is listed, or any @Alternative stereotype of
+ the alternative is listed.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="class" type="xs:string">
+ <xs:annotation>
+ <xs:documentation>
+ Each child &lt;class&gt; element
+ must specify the name of an alternative bean class.
+ If there is no class with the specified name, or if
+ the class with the specified name is not an
+ alternative bean class, the container automatically
+ detects the problem and treats it as a deployment
+ problem. If the same class is listed twice under
+ the &lt;alternatives&gt; element, the container
+ automatically detects the problem and treats it as
+ a deployment problem.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="stereotype" type="xs:string">
+ <xs:annotation>
+ <xs:documentation>
+ Each child &lt;stereotype&gt;
+ element must specify the name of an @Alternative
+ stereotype annotation. If there is no annotation
+ with the specified name, or the annotation is not
+ an @Alternative stereotype, the container
+ automatically detects the problem and treats it as
+ a deployment problem. If the same stereotype is
+ listed twice under the &lt;alternatives&gt;
+ element, the container automatically detects the
+ problem and treats it as a deployment problem.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+
+</xs:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/connector_1_7.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/connector_1_7.xsd
new file mode 100644
index 0000000000..fe591a1486
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/connector_1_7.xsd
@@ -0,0 +1,1233 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="1.7">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2009-2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2003-2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ This is the XML Schema for the Connector 1.7 deployment
+ descriptor. The deployment descriptor must be named
+ "META-INF/ra.xml" in the connector's rar file. All Connector
+ deployment descriptors must indicate the connector resource
+ adapter schema by using the Java EE namespace:
+
+ http://xmlns.jcp.org/xml/ns/javaee
+
+ and by indicating the version of the schema by
+ using the version element as shown below:
+
+ <connector xmlns="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
+ http://xmlns.jcp.org/xml/ns/javaee/connector_1_7.xsd"
+ version="1.7">
+ ...
+ </connector>
+
+ The instance documents may indicate the published version of
+ the schema using the xsi:schemaLocation attribute for Java EE
+ namespace with the following location:
+
+ http://xmlns.jcp.org/xml/ns/javaee/connector_1_7.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all Java EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="javaee_7.xsd"/>
+
+
+<!-- **************************************************** -->
+
+ <xsd:element name="connector"
+ type="javaee:connectorType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The connector element is the root element of the deployment
+ descriptor for the resource adapter. This element includes
+ general information - vendor name, resource adapter version,
+ icon - about the resource adapter module. It also includes
+ information specific to the implementation of the resource
+ adapter library as specified through the element
+ resourceadapter.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="activationspecType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The activationspecType specifies an activation
+ specification. The information includes fully qualified
+ Java class name of an activation specification and a set of
+ required configuration property names.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="activationspec-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The element activationspec-class specifies the fully
+ qualified Java class name of the activation
+ specification class. This class must implement the
+ javax.resource.spi.ActivationSpec interface. The
+ implementation of this class is required to be a
+ JavaBean.
+
+ Example:
+ <activationspec-class>com.wombat.ActivationSpecImpl
+ </activationspec-class>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="required-config-property"
+ type="javaee:required-config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The required-config-property element is deprecated since
+ Connectors 1.6 specification. The resource adapter
+ implementation is recommended to use the @NotNull
+ Bean Validation annotation or its XML validation
+ descriptor equivalent to indicate that a configuration
+ property is required to be specified by the deployer.
+ See the Connectors specification for more information.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="config-property"
+ type="javaee:config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="adminobjectType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The adminobjectType specifies information about an
+ administered object. Administered objects are specific to a
+ messaging style or message provider. This contains
+ information on the Java type of the interface implemented by
+ an administered object, its Java class name and its
+ configuration properties.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="adminobject-interface"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The element adminobject-interface specifies the
+ fully qualified name of the Java type of the
+ interface implemented by an administered object.
+
+ Example:
+ <adminobject-interface>javax.jms.Destination
+ </adminobject-interface>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="adminobject-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The element adminobject-class specifies the fully
+ qualified Java class name of an administered object.
+
+ Example:
+ <adminobject-class>com.wombat.DestinationImpl
+ </adminobject-class>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="config-property"
+ type="javaee:config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="authentication-mechanismType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The authentication-mechanismType specifies an authentication
+ mechanism supported by the resource adapter. Note that this
+ support is for the resource adapter and not for the
+ underlying EIS instance. The optional description specifies
+ any resource adapter specific requirement for the support of
+ security contract and authentication mechanism.
+
+ Note that BasicPassword mechanism type should support the
+ javax.resource.spi.security.PasswordCredential interface.
+ The Kerbv5 mechanism type should support the
+ org.ietf.jgss.GSSCredential interface or the deprecated
+ javax.resource.spi.security.GenericCredential interface.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="authentication-mechanism-type"
+ type="javaee:xsdStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The element authentication-mechanism-type specifies
+ type of an authentication mechanism.
+
+ The example values are:
+
+ <authentication-mechanism-type>BasicPassword
+ </authentication-mechanism-type>
+
+ <authentication-mechanism-type>Kerbv5
+ </authentication-mechanism-type>
+
+ Any additional security mechanisms are outside the
+ scope of the Connector architecture specification.
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="credential-interface"
+ type="javaee:credential-interfaceType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="config-property-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The config-property-nameType contains the name of a
+ configuration property.
+
+ The connector architecture defines a set of well-defined
+ properties all of type java.lang.String. These are as
+ follows.
+
+ ServerName
+ PortNumber
+ UserName
+ Password
+ ConnectionURL
+
+ A resource adapter provider can extend this property set to
+ include properties specific to the resource adapter and its
+ underlying EIS.
+
+ Possible values include
+ ServerName
+ PortNumber
+ UserName
+ Password
+ ConnectionURL
+
+ Example: <config-property-name>ServerName</config-property-name>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:xsdStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="config-property-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The config-property-typeType contains the fully
+ qualified Java type of a configuration property.
+
+ The following are the legal values:
+ java.lang.Boolean, java.lang.String, java.lang.Integer,
+ java.lang.Double, java.lang.Byte, java.lang.Short,
+ java.lang.Long, java.lang.Float, java.lang.Character
+
+ Used in: config-property
+
+ Example:
+ <config-property-type>java.lang.String</config-property-type>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="java.lang.Boolean"/>
+ <xsd:enumeration value="java.lang.String"/>
+ <xsd:enumeration value="java.lang.Integer"/>
+ <xsd:enumeration value="java.lang.Double"/>
+ <xsd:enumeration value="java.lang.Byte"/>
+ <xsd:enumeration value="java.lang.Short"/>
+ <xsd:enumeration value="java.lang.Long"/>
+ <xsd:enumeration value="java.lang.Float"/>
+ <xsd:enumeration value="java.lang.Character"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="config-propertyType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The config-propertyType contains a declaration of a single
+ configuration property that may be used for providing
+ configuration information.
+
+ The declaration consists of an optional description, name,
+ type and an optional value of the configuration property. If
+ the resource adapter provider does not specify a value than
+ the deployer is responsible for providing a valid value for
+ a configuration property.
+
+ Any bounds or well-defined values of properties should be
+ described in the description element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="config-property-name"
+ type="javaee:config-property-nameType"/>
+ <xsd:element name="config-property-type"
+ type="javaee:config-property-typeType"/>
+ <xsd:element name="config-property-value"
+ type="javaee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The element config-property-value contains the value
+ of a configuration entry. Note, it is possible for a
+ resource adapter deployer to override this
+ configuration information during deployment.
+
+ Example:
+ <config-property-value>WombatServer</config-property-value>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="config-property-ignore"
+ type="javaee:true-falseType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element config-property-ignore is used to specify
+ whether the configuration tools must ignore considering the
+ configuration property during auto-discovery of
+ Configuration properties. See the Connector specification for
+ more details. If unspecified, the container must not ignore
+ the configuration property during auto-discovery.
+ This element must be one of the following, "true" or "false".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="config-property-supports-dynamic-updates"
+ type="javaee:true-falseType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element config-property-supports-dynamic-updates is used to specify
+ whether the configuration property allows its value to be updated, by
+ application server's configuration tools, during the lifetime of
+ the JavaBean instance. See the Connector specification for
+ more details. If unspecified, the container must not dynamically
+ reconfigure the property.
+ This element must be one of the following, "true" or "false".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="config-property-confidential"
+ type="javaee:true-falseType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element config-property-confidential is used to specify
+ whether the configuration property is confidential and
+ recommends application server's configuration tools to use special
+ visual aids for editing them. See the Connector specification for
+ more details. If unspecified, the container must not treat the
+ property as confidential.
+ This element must be one of the following, "true" or "false".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="connection-definitionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The connection-definitionType defines a set of connection
+ interfaces and classes pertaining to a particular connection
+ type. This also includes configurable properties for
+ ManagedConnectionFactory instances that may be produced out
+ of this set.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="managedconnectionfactory-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The element managedconnectionfactory-class specifies
+ the fully qualified name of the Java class that
+ implements the
+ javax.resource.spi.ManagedConnectionFactory interface.
+ This Java class is provided as part of resource
+ adapter's implementation of connector architecture
+ specified contracts. The implementation of this
+ class is required to be a JavaBean.
+
+ Example:
+ <managedconnectionfactory-class>
+ com.wombat.ManagedConnectionFactoryImpl
+ </managedconnectionfactory-class>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="config-property"
+ type="javaee:config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="connectionfactory-interface"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The element connectionfactory-interface specifies
+ the fully qualified name of the ConnectionFactory
+ interface supported by the resource adapter.
+
+ Example:
+ <connectionfactory-interface>com.wombat.ConnectionFactory
+ </connectionfactory-interface>
+
+ OR
+
+ <connectionfactory-interface>javax.resource.cci.ConnectionFactory
+ </connectionfactory-interface>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="connectionfactory-impl-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The element connectionfactory-impl-class specifies
+ the fully qualified name of the ConnectionFactory
+ class that implements resource adapter
+ specific ConnectionFactory interface.
+
+ Example:
+
+ <connectionfactory-impl-class>com.wombat.ConnectionFactoryImpl
+ </connectionfactory-impl-class>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="connection-interface"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The connection-interface element specifies the fully
+ qualified name of the Connection interface supported
+ by the resource adapter.
+
+ Example:
+
+ <connection-interface>javax.resource.cci.Connection
+ </connection-interface>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="connection-impl-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The connection-impl-classType specifies the fully
+ qualified name of the Connection class that
+ implements resource adapter specific Connection
+ interface. It is used by the connection-impl-class
+ elements.
+
+ Example:
+
+ <connection-impl-class>com.wombat.ConnectionImpl
+ </connection-impl-class>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="connectorType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The connectorType defines a resource adapter.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="module-name"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element module-name specifies the name of the
+ resource adapter.
+
+ If there is no module-name specified, the module-name
+ is determined as defined in Section EE.8.1.1 and EE.8.1.2
+ of the Java Platform, Enterprise Edition (Java EE)
+ Specification, version 6.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="vendor-name"
+ type="javaee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element vendor-name specifies the name of
+ resource adapter provider vendor.
+
+ If there is no vendor-name specified, the application
+ server must consider the default "" (empty string) as
+ the name of the resource adapter provider vendor.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="eis-type"
+ type="javaee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element eis-type contains information about the
+ type of the EIS. For example, the type of an EIS can
+ be product name of EIS independent of any version
+ info.
+
+ This helps in identifying EIS instances that can be
+ used with this resource adapter.
+
+ If there is no eis-type specified, the application
+ server must consider the default "" (empty string) as
+ the type of the EIS.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="resourceadapter-version"
+ type="javaee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element resourceadapter-version specifies a string-based version
+ of the resource adapter from the resource adapter
+ provider.
+
+ If there is no resourceadapter-version specified, the application
+ server must consider the default "" (empty string) as
+ the version of the resource adapter.
+
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="license"
+ type="javaee:licenseType"
+ minOccurs="0"/>
+ <xsd:element name="resourceadapter"
+ type="javaee:resourceadapterType"/>
+ <xsd:element name="required-work-context"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element required-work-context specifies a fully qualified class
+ name that implements WorkContext interface, that the resource adapter
+ requires the application server to support.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="version"
+ type="javaee:dewey-versionType"
+ fixed="1.7"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The version indicates the version of the schema to be used by the
+ deployment tool. This element doesn't have a default, and the resource adapter
+ developer/deployer is required to specify it. The element allows the deployment
+ tool to choose which schema to validate the descriptor against.
+
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="metadata-complete"
+ type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The metadata-complete attribute defines whether the deployment
+ descriptor for the resource adapter module is complete, or whether
+ the class files available to the module and packaged with the resource
+ adapter should be examined for annotations that specify deployment
+ information.
+
+ If metadata-complete is set to "true", the deployment tool of the
+ application server must ignore any annotations that specify deployment
+ information, which might be present in the class files of the
+ application.If metadata-complete is not specified or is set to "false",
+ the deployment tool must examine the class files of the application for
+ annotations, as specified by this specification. If the
+ deployment descriptor is not included or is included but not marked
+ metadata-complete, the deployment tool will process annotations.
+
+ Application servers must assume that metadata-complete is true for
+ resource adapter modules with deployment descriptor version
+ lower than 1.6.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="credential-interfaceType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The credential-interfaceType specifies the
+ interface that the resource adapter implementation
+ supports for the representation of the
+ credentials. This element(s) that use this type,
+ i.e. credential-interface, should be used by
+ application server to find out the Credential
+ interface it should use as part of the security
+ contract.
+
+ The possible values are:
+
+ javax.resource.spi.security.PasswordCredential
+ org.ietf.jgss.GSSCredential
+ javax.resource.spi.security.GenericCredential
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:fully-qualified-classType">
+ <xsd:enumeration value="javax.resource.spi.security.PasswordCredential"/>
+ <xsd:enumeration value="org.ietf.jgss.GSSCredential"/>
+ <xsd:enumeration value="javax.resource.spi.security.GenericCredential"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="inbound-resourceadapterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The inbound-resourceadapterType specifies information
+ about an inbound resource adapter. This contains information
+ specific to the implementation of the resource adapter
+ library as specified through the messageadapter element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="messageadapter"
+ type="javaee:messageadapterType"
+ minOccurs="0">
+ <xsd:unique name="messagelistener-type-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The messagelistener-type element content must be
+ unique in the messageadapter. Several messagelisteners
+ can not use the same messagelistener-type.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:messagelistener"/>
+ <xsd:field xpath="javaee:messagelistener-type"/>
+ </xsd:unique>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="licenseType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The licenseType specifies licensing requirements for the
+ resource adapter module. This type specifies whether a
+ license is required to deploy and use this resource adapter,
+ and an optional description of the licensing terms
+ (examples: duration of license, number of connection
+ restrictions). It is used by the license element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="license-required"
+ type="javaee:true-falseType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element license-required specifies whether a
+ license is required to deploy and use the
+ resource adapter. This element must be one of
+ the following, "true" or "false".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="messageadapterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The messageadapterType specifies information about the
+ messaging capabilities of the resource adapter. This
+ contains information specific to the implementation of the
+ resource adapter library as specified through the
+ messagelistener element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="messagelistener"
+ type="javaee:messagelistenerType"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="messagelistenerType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The messagelistenerType specifies information about a
+ specific message listener supported by the messaging
+ resource adapter. It contains information on the Java type
+ of the message listener interface and an activation
+ specification.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="messagelistener-type"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The element messagelistener-type specifies the fully
+ qualified name of the Java type of a message
+ listener interface.
+
+ Example:
+
+ <messagelistener-type>javax.jms.MessageListener
+ </messagelistener-type>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="activationspec"
+ type="javaee:activationspecType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="outbound-resourceadapterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The outbound-resourceadapterType specifies information about
+ an outbound resource adapter. The information includes fully
+ qualified names of classes/interfaces required as part of
+ the connector architecture specified contracts for
+ connection management, level of transaction support
+ provided, one or more authentication mechanisms supported
+ and additional required security permissions.
+
+ If any of the outbound resource adapter elements (transaction-support,
+ authentication-mechanism, reauthentication-support) is specified through
+ this element or metadata annotations, and no connection-definition is
+ specified as part of this element or through annotations, the
+ application server must consider this an error and fail deployment.
+
+ If there is no authentication-mechanism specified as part of
+ this element or metadata annotations, then the resource adapter does
+ not support any standard security authentication mechanisms as
+ part of security contract. The application server ignores the security
+ part of the system contracts in this case.
+
+ If there is no transaction-support specified as part of this element
+ or metadata annotation, then the application server must consider that
+ the resource adapter does not support either the resource manager local
+ or JTA transactions and must consider the transaction support as
+ NoTransaction. Note that resource adapters may specify the level of
+ transaction support to be used at runtime for a ManagedConnectionFactory
+ through the TransactionSupport interface.
+
+ If there is no reauthentication-support specified as part of
+ this element or metadata annotation, then the application server must consider
+ that the resource adapter does not support re-authentication of
+ ManagedConnections.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="connection-definition"
+ type="javaee:connection-definitionType"
+ maxOccurs="unbounded"
+ minOccurs="0"/>
+ <xsd:element name="transaction-support"
+ type="javaee:transaction-supportType"
+ minOccurs="0"/>
+ <xsd:element name="authentication-mechanism"
+ type="javaee:authentication-mechanismType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="reauthentication-support"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element reauthentication-support specifies
+ whether the resource adapter implementation supports
+ re-authentication of existing Managed- Connection
+ instance. Note that this information is for the
+ resource adapter implementation and not for the
+ underlying EIS instance. This element must have
+ either a "true" or "false" value.
+
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="required-config-propertyType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The required-config-propertyType contains a declaration
+ of a single configuration property used for specifying a
+ required configuration property name. It is used
+ by required-config-property elements.
+
+ Usage of this type is deprecated from Connectors 1.6 specification.
+ Refer to required-config-property element for more information.
+
+ Example:
+
+ <required-config-property>
+ <config-property-name>Destination</config-property-name>
+ </required-config-property>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="config-property-name"
+ type="javaee:config-property-nameType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="resourceadapterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The resourceadapterType specifies information about the
+ resource adapter. The information includes fully qualified
+ resource adapter Java class name, configuration properties,
+ information specific to the implementation of the resource
+ adapter library as specified through the
+ outbound-resourceadapter and inbound-resourceadapter
+ elements, and an optional set of administered objects.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="resourceadapter-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element resourceadapter-class specifies the
+ fully qualified name of a Java class that implements
+ the javax.resource.spi.ResourceAdapter
+ interface. This Java class is provided as part of
+ resource adapter's implementation of connector
+ architecture specified contracts. The implementation
+ of this class is required to be a JavaBean.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="config-property"
+ type="javaee:config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="outbound-resourceadapter"
+ type="javaee:outbound-resourceadapterType"
+ minOccurs="0">
+ <xsd:unique name="connectionfactory-interface-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The connectionfactory-interface element content
+ must be unique in the outbound-resourceadapter.
+ Multiple connection-definitions can not use the
+ same connectionfactory-type.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:connection-definition"/>
+ <xsd:field xpath="javaee:connectionfactory-interface"/>
+ </xsd:unique>
+ </xsd:element>
+ <xsd:element name="inbound-resourceadapter"
+ type="javaee:inbound-resourceadapterType"
+ minOccurs="0"/>
+ <xsd:element name="adminobject"
+ type="javaee:adminobjectType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:unique name="adminobject-type-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The adminobject-interface and adminobject-class element content must be
+ unique in the resourceadapterType. Several admin objects
+ can not use the same adminobject-interface and adminobject-class.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:adminobject"/>
+ <xsd:field xpath="javaee:adminobject-interface"/>
+ <xsd:field xpath="javaee:adminobject-class"/>
+ </xsd:unique>
+ </xsd:element>
+ <xsd:element name="security-permission"
+ type="javaee:security-permissionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="security-permissionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The security-permissionType specifies a security
+ permission that is required by the resource adapter code.
+
+ The security permission listed in the deployment descriptor
+ are ones that are different from those required by the
+ default permission set as specified in the connector
+ specification. The optional description can mention specific
+ reason that resource adapter requires a given security
+ permission.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="security-permission-spec"
+ type="javaee:xsdStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The element security-permission-spec specifies a security
+ permission based on the Security policy file
+ syntax. Refer to the following URL for Sun's
+ implementation of the security permission
+ specification:
+
+ http://docs.oracle.com/javase/6/docs/technotes/guides/security/PolicyFiles.html
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+</xsd:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/ejb-jar_3_2.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/ejb-jar_3_2.xsd
new file mode 100644
index 0000000000..686336871d
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/ejb-jar_3_2.xsd
@@ -0,0 +1,3321 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="3.2">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2009-2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ This is the XML Schema for the EJB 3.2 deployment descriptor.
+
+ All EJB deployment descriptors must indicate
+ the schema by using the Java EE namespace:
+
+ http://xmlns.jcp.org/xml/ns/javaee
+
+ and by indicating the version of the schema by
+ using the version element as shown below:
+
+ <ejb-jar xmlns="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
+ http://xmlns.jcp.org/xml/ns/javaee/ejb-jar_3_2.xsd"
+ version="3.2">
+ ...
+ </ejb-jar>
+
+ The instance documents may indicate the published version of
+ the schema using the xsi:schemaLocation attribute for the
+ Java EE namespace with the following location:
+
+ http://xmlns.jcp.org/xml/ns/javaee/ejb-jar_3_2.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all Java EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="javaee_7.xsd"/>
+
+
+<!-- **************************************************** -->
+
+ <xsd:element name="ejb-jar"
+ type="javaee:ejb-jarType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This is the root of the ejb-jar deployment descriptor.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:key name="ejb-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-name element contains the name of an enterprise
+ bean. The name must be unique within the ejb-jar file or
+ .war file.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:enterprise-beans/*"/>
+ <xsd:field xpath="javaee:ejb-name"/>
+ </xsd:key>
+ <xsd:keyref name="ejb-name-references"
+ refer="javaee:ejb-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The keyref indicates the references from
+ relationship-role-source must be to a specific ejb-name
+ defined within the scope of enterprise-beans element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath=".//javaee:ejb-relationship-role/javaee:relationship-role-source"/>
+ <xsd:field xpath="javaee:ejb-name"/>
+ </xsd:keyref>
+ <xsd:key name="role-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A role-name-key is specified to allow the references
+ from the security-role-refs.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:assembly-descriptor/javaee:security-role"/>
+ <xsd:field xpath="javaee:role-name"/>
+ </xsd:key>
+ <xsd:keyref name="role-name-references"
+ refer="javaee:role-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The keyref indicates the references from
+ security-role-ref to a specified role-name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:enterprise-beans/*/javaee:security-role-ref"/>
+ <xsd:field xpath="javaee:role-link"/>
+ </xsd:keyref>
+ </xsd:element>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="access-timeoutType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The access-timeoutType represents the maximum amount of
+ time (in a given time unit) that the container should wait for
+ a concurrency lock before throwing a timeout exception to the
+ client.
+
+ A timeout value of 0 means concurrent access is not permitted.
+
+ A timeout value of -1 means wait indefinitely to acquire a lock.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="timeout"
+ type="javaee:xsdIntegerType"/>
+ <xsd:element name="unit"
+ type="javaee:time-unit-typeType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="async-methodType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The async-methodType element specifies that a session
+ bean method has asynchronous invocation semantics.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="method-name"
+ type="javaee:string"/>
+ <xsd:element name="method-params"
+ type="javaee:method-paramsType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="activation-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The activation-configType defines information about the
+ expected configuration properties of the message-driven bean
+ in its operational environment. This may include information
+ about message acknowledgement, message selector, expected
+ destination type, destination or connection factory lookup
+ string, subscription name, etc.
+
+ The configuration information is expressed in terms of
+ name/value configuration properties.
+
+ The properties that are recognized for a particular
+ message-driven bean are determined by the messaging type.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="activation-config-property"
+ type="javaee:activation-config-propertyType"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="activation-config-propertyType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The activation-config-propertyType contains a name/value
+ configuration property pair for a message-driven bean.
+
+ The properties that are recognized for a particular
+ message-driven bean are determined by the messaging type.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="activation-config-property-name"
+ type="javaee:xsdStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The activation-config-property-name element contains
+ the name for an activation configuration property of
+ a message-driven bean.
+
+ For JMS message-driven beans, the following property
+ names are recognized: acknowledgeMode,
+ messageSelector, destinationType, subscriptionDurability,
+ destinationLookup, connectionFactoryLookup, subscriptionName,
+ and clientId.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="activation-config-property-value"
+ type="javaee:xsdStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The activation-config-property-value element
+ contains the value for an activation configuration
+ property of a message-driven bean.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="around-invokeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The around-invoke type specifies a method on a
+ class to be called during the around invoke portion of an
+ ejb invocation. Note that each class may have only one
+ around invoke method and that the method may not be
+ overloaded.
+
+ If the class element is missing then
+ the class defining the callback is assumed to be the
+ interceptor class or component class in scope at the
+ location in the descriptor in which the around invoke
+ definition appears.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"/>
+ <xsd:element name="method-name"
+ type="javaee:java-identifierType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="around-timeoutType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The around-timeout type specifies a method on a
+ class to be called during the around-timeout portion of
+ a timer timeout callback. Note that each class may have
+ only one around-timeout method and that the method may not
+ be overloaded.
+
+ If the class element is missing then
+ the class defining the callback is assumed to be the
+ interceptor class or component class in scope at the
+ location in the descriptor in which the around-timeout
+ definition appears.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"/>
+ <xsd:element name="method-name"
+ type="javaee:java-identifierType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="assembly-descriptorType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The assembly-descriptorType defines
+ application-assembly information.
+
+ The application-assembly information consists of the
+ following parts: the definition of security roles, the
+ definition of method permissions, the definition of
+ transaction attributes for enterprise beans with
+ container-managed transaction demarcation, the definition
+ of interceptor bindings, a list of
+ methods to be excluded from being invoked, and a list of
+ exception types that should be treated as application exceptions.
+
+ All the parts are optional in the sense that they are
+ omitted if the lists represented by them are empty.
+
+ Providing an assembly-descriptor in the deployment
+ descriptor is optional for the ejb-jar file or .war file producer.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="security-role"
+ type="javaee:security-roleType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="method-permission"
+ type="javaee:method-permissionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="container-transaction"
+ type="javaee:container-transactionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="interceptor-binding"
+ type="javaee:interceptor-bindingType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="message-destination"
+ type="javaee:message-destinationType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="exclude-list"
+ type="javaee:exclude-listType"
+ minOccurs="0"/>
+ <xsd:element name="application-exception"
+ type="javaee:application-exceptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cmp-fieldType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The cmp-fieldType describes a container-managed field. The
+ cmp-fieldType contains an optional description of the field,
+ and the name of the field.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="field-name"
+ type="javaee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The field-name element specifies the name of a
+ container managed field.
+
+ The name of the cmp-field of an entity bean with
+ cmp-version 2.x must begin with a lowercase
+ letter. This field is accessed by methods whose
+ names consists of the name of the field specified by
+ field-name in which the first letter is uppercased,
+ prefixed by "get" or "set".
+
+ The name of the cmp-field of an entity bean with
+ cmp-version 1.x must denote a public field of the
+ enterprise bean class or one of its superclasses.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cmp-versionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The cmp-versionType specifies the version of an entity bean
+ with container-managed persistence. It is used by
+ cmp-version elements.
+
+ The value must be one of the two following:
+
+ 1.x
+ 2.x
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="1.x"/>
+ <xsd:enumeration value="2.x"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cmr-fieldType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The cmr-fieldType describes the Bean Provider's view of
+ a relationship. It consists of an optional description, and
+ the name and the class type of a field in the source of a
+ role of a relationship. The cmr-field-name element
+ corresponds to the name used for the get and set accessor
+ methods for the relationship. The cmr-field-type element is
+ used only for collection-valued cmr-fields. It specifies the
+ type of the collection that is used.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="cmr-field-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The cmr-field-name element specifies the name of a
+ logical relationship field in the entity bean
+ class. The name of the cmr-field must begin with a
+ lowercase letter. This field is accessed by methods
+ whose names consist of the name of the field
+ specified by cmr-field-name in which the first
+ letter is uppercased, prefixed by "get" or "set".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="cmr-field-type"
+ type="javaee:cmr-field-typeType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cmr-field-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The cmr-field-type element specifies the class of a
+ collection-valued logical relationship field in the entity
+ bean class. The value of an element using cmr-field-typeType
+ must be either: java.util.Collection or java.util.Set.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="java.util.Collection"/>
+ <xsd:enumeration value="java.util.Set"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="concurrency-management-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The concurrency-management-typeType specifies the way concurrency
+ is managed for a singleton or stateful session bean.
+
+ The concurrency management type must be one of the following:
+
+ Bean
+ Container
+
+ Bean managed concurrency can only be specified for a singleton bean.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Bean"/>
+ <xsd:enumeration value="Container"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="concurrent-lock-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The concurrent-lock-typeType specifies how the container must
+ manage concurrent access to a method of a Singleton bean
+ with container-managed concurrency.
+
+ The container managed concurrency lock type must be one
+ of the following :
+
+ Read
+ Write
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Read"/>
+ <xsd:enumeration value="Write"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="concurrent-methodType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The concurrent-methodType specifies information about a method
+ of a bean with container managed concurrency.
+
+ The optional lock element specifies the kind of concurrency
+ lock asssociated with the method.
+
+ The optional access-timeout element specifies the amount of
+ time (in a given time unit) the container should wait for a
+ concurrency lock before throwing an exception to the client.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="method"
+ type="javaee:named-methodType"/>
+ <xsd:element name="lock"
+ type="javaee:concurrent-lock-typeType"
+ minOccurs="0"/>
+ <xsd:element name="access-timeout"
+ type="javaee:access-timeoutType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="container-transactionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The container-transactionType specifies how the container
+ must manage transaction scopes for the enterprise bean's
+ method invocations. It defines an optional description, a
+ list of method elements, and a transaction attribute. The
+ transaction attribute is to be applied to all the specified
+ methods.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="method"
+ type="javaee:methodType"
+ maxOccurs="unbounded"/>
+ <xsd:element name="trans-attribute"
+ type="javaee:trans-attributeType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="depends-onType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The depends-onType is used to express initialization
+ ordering dependencies between Singleton components.
+ The depends-onType specifies the names of one or more
+ Singleton beans in the same application as the referring
+ Singleton, each of which must be initialized before
+ the referring bean.
+
+ Each dependent bean is expressed using ejb-link syntax.
+ The order in which dependent beans are initialized at
+ runtime is not guaranteed to match the order in which
+ they are listed.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="ejb-name"
+ type="javaee:ejb-linkType"
+ minOccurs="1"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ejb-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The ejb-classType contains the fully-qualified name of the
+ enterprise bean's class. It is used by ejb-class elements.
+
+ Example:
+
+ <ejb-class>com.wombat.empl.EmployeeServiceBean</ejb-class>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:fully-qualified-classType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ejb-jarType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-jarType defines the root element of the EJB
+ deployment descriptor. It contains
+
+ - an optional description of the ejb-jar file
+ - an optional display name
+ - an optional icon that contains a small and a large
+ icon file name
+ - an optional module name. Only applicable to
+ stand-alone ejb-jars or ejb-jars packaged in an ear.
+ Ignored if specified for an ejb-jar.xml within a .war file.
+ In that case, standard .war file module-name rules apply.
+ - structural information about all included
+ enterprise beans that is not specified through
+ annotations
+ - structural information about interceptor classes
+ - a descriptor for container managed relationships,
+ if any.
+ - an optional application-assembly descriptor
+ - an optional name of an ejb-client-jar file for the
+ ejb-jar.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="module-name"
+ type="javaee:string"
+ minOccurs="0"/>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="enterprise-beans"
+ type="javaee:enterprise-beansType"
+ minOccurs="0"/>
+ <xsd:element name="interceptors"
+ type="javaee:interceptorsType"
+ minOccurs="0"/>
+ <xsd:element name="relationships"
+ type="javaee:relationshipsType"
+ minOccurs="0">
+ <xsd:unique name="relationship-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-relation-name contains the name of a
+ relation. The name must be unique within
+ relationships.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-relation"/>
+ <xsd:field xpath="javaee:ejb-relation-name"/>
+ </xsd:unique>
+ </xsd:element>
+ <xsd:element name="assembly-descriptor"
+ type="javaee:assembly-descriptorType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Providing an assembly-descriptor in the deployment
+ descriptor is optional for the ejb-jar file or .war file
+ producer.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="ejb-client-jar"
+ type="javaee:pathType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The optional ejb-client-jar element specifies a JAR
+ file that contains the class files necessary for a
+ client program to access the
+ enterprise beans in the ejb-jar file.
+
+ Example:
+
+ <ejb-client-jar>employee_service_client.jar
+ </ejb-client-jar>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="version"
+ type="javaee:dewey-versionType"
+ fixed="3.2"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The version specifies the version of the
+ EJB specification that the instance document must
+ comply with. This information enables deployment tools
+ to validate a particular EJB Deployment
+ Descriptor with respect to a specific version of the EJB
+ schema.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="metadata-complete"
+ type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The metadata-complete attribute defines whether this
+ deployment descriptor and other related deployment
+ descriptors for this module (e.g., web service
+ descriptors) are complete, or whether the class
+ files available to this module and packaged with
+ this application should be examined for annotations
+ that specify deployment information.
+
+ If metadata-complete is set to "true", the deployment
+ tool must ignore any annotations that specify deployment
+ information, which might be present in the class files
+ of the application.
+
+ If metadata-complete is not specified or is set to
+ "false", the deployment tool must examine the class
+ files of the application for annotations, as
+ specified by the specifications.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ejb-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The ejb-nameType specifies an enterprise bean's name. It is
+ used by ejb-name elements. This name is assigned by the
+ file producer to name the enterprise bean in the
+ ejb-jar file or .war file's deployment descriptor. The name must be
+ unique among the names of the enterprise beans in the same
+ ejb-jar file or .war file.
+
+ There is no architected relationship between the used
+ ejb-name in the deployment descriptor and the JNDI name that
+ the Deployer will assign to the enterprise bean's home.
+
+ The name for an entity bean must conform to the lexical
+ rules for an NMTOKEN.
+
+ Example:
+
+ <ejb-name>EmployeeService</ejb-name>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:xsdNMTOKENType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ejb-relationType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-relationType describes a relationship between two
+ entity beans with container-managed persistence. It is used
+ by ejb-relation elements. It contains a description; an
+ optional ejb-relation-name element; and exactly two
+ relationship role declarations, defined by the
+ ejb-relationship-role elements. The name of the
+ relationship, if specified, is unique within the ejb-jar
+ file.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="ejb-relation-name"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-relation-name element provides a unique name
+ within the ejb-jar file for a relationship.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="ejb-relationship-role"
+ type="javaee:ejb-relationship-roleType"
+ minOccurs="2"
+ maxOccurs="2"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ejb-relationship-roleType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The ejb-relationship-roleType describes a role within a
+ relationship. There are two roles in each relationship.
+
+ The ejb-relationship-roleType contains an optional
+ description; an optional name for the relationship role; a
+ specification of the multiplicity of the role; an optional
+ specification of cascade-delete functionality for the role;
+ the role source; and a declaration of the cmr-field, if any,
+ by means of which the other side of the relationship is
+ accessed from the perspective of the role source.
+
+ The multiplicity and role-source element are mandatory.
+
+ The relationship-role-source element designates an entity
+ bean by means of an ejb-name element. For bidirectional
+ relationships, both roles of a relationship must declare a
+ relationship-role-source element that specifies a cmr-field
+ in terms of which the relationship is accessed. The lack of
+ a cmr-field element in an ejb-relationship-role specifies
+ that the relationship is unidirectional in navigability and
+ the entity bean that participates in the relationship is
+ "not aware" of the relationship.
+
+ Example:
+
+ <ejb-relation>
+ <ejb-relation-name>Product-LineItem</ejb-relation-name>
+ <ejb-relationship-role>
+ <ejb-relationship-role-name>product-has-lineitems
+ </ejb-relationship-role-name>
+ <multiplicity>One</multiplicity>
+ <relationship-role-source>
+ <ejb-name>ProductEJB</ejb-name>
+ </relationship-role-source>
+ </ejb-relationship-role>
+ </ejb-relation>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="ejb-relationship-role-name"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-relationship-role-name element defines a
+ name for a role that is unique within an
+ ejb-relation. Different relationships can use the
+ same name for a role.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="multiplicity"
+ type="javaee:multiplicityType"/>
+ <xsd:element name="cascade-delete"
+ type="javaee:emptyType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The cascade-delete element specifies that, within a
+ particular relationship, the lifetime of one or more
+ entity beans is dependent upon the lifetime of
+ another entity bean. The cascade-delete element can
+ only be specified for an ejb-relationship-role
+ element contained in an ejb-relation element in
+ which the other ejb-relationship-role
+ element specifies a multiplicity of One.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="relationship-role-source"
+ type="javaee:relationship-role-sourceType"/>
+ <xsd:element name="cmr-field"
+ type="javaee:cmr-fieldType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="enterprise-beansType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The enterprise-beansType declares one or more enterprise
+ beans. Each bean can be a session, entity or message-driven
+ bean.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="session"
+ type="javaee:session-beanType">
+ <xsd:unique name="session-ejb-local-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-ref-name element contains the name of
+ an EJB reference. The EJB reference is an entry in
+ the component's environment and is relative to the
+ java:comp/env context. The name must be unique within
+ the component.
+
+ It is recommended that name be prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-local-ref"/>
+ <xsd:field xpath="javaee:ejb-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="session-ejb-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-ref-name element contains the name of an EJB
+ reference. The EJB reference is an entry in the
+ component's environment and is relative to the
+ java:comp/env context. The name must be unique
+ within the component.
+
+ It is recommended that name is prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-ref"/>
+ <xsd:field xpath="javaee:ejb-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="session-resource-env-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The resource-env-ref-name element specifies the name
+ of a resource environment reference; its value is
+ the environment entry name used in the component
+ code. The name is a JNDI name relative to the
+ java:comp/env context and must be unique within an
+ component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-env-ref"/>
+ <xsd:field xpath="javaee:resource-env-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="session-message-destination-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The message-destination-ref-name element specifies the name
+ of a message destination reference; its value is
+ the message destination reference name used in the component
+ code. The name is a JNDI name relative to the
+ java:comp/env context and must be unique within an
+ component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:message-destination-ref"/>
+ <xsd:field xpath="javaee:message-destination-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="session-res-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The res-ref-name element specifies the name of a
+ resource manager connection factory reference. The name
+ is a JNDI name relative to the java:comp/env context.
+ The name must be unique within an component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-ref"/>
+ <xsd:field xpath="javaee:res-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="session-env-entry-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The env-entry-name element contains the name of a
+ component's environment entry. The name is a JNDI
+ name relative to the java:comp/env context. The
+ name must be unique within an component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:env-entry"/>
+ <xsd:field xpath="javaee:env-entry-name"/>
+ </xsd:unique>
+ </xsd:element>
+ <xsd:element name="entity"
+ type="javaee:entity-beanType">
+ <xsd:unique name="entity-ejb-local-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-ref-name element contains the name of
+ an EJB reference. The EJB reference is an entry in
+ the component's environment and is relative to the
+ java:comp/env context. The name must be unique within
+ the component.
+
+ It is recommended that name be prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-local-ref"/>
+ <xsd:field xpath="javaee:ejb-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="entity-ejb-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-ref-name element contains the name of an EJB
+ reference. The EJB reference is an entry in the
+ component's environment and is relative to the
+ java:comp/env context. The name must be unique
+ within the component.
+
+ It is recommended that name is prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-ref"/>
+ <xsd:field xpath="javaee:ejb-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="entity-resource-env-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The resource-env-ref-name element specifies the name
+ of a resource environment reference; its value is
+ the environment entry name used in the component
+ code. The name is a JNDI name relative to the
+ java:comp/env context and must be unique within an
+ component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-env-ref"/>
+ <xsd:field xpath="javaee:resource-env-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="entity-message-destination-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The message-destination-ref-name element specifies the name
+ of a message destination reference; its value is
+ the message destination reference name used in the component
+ code. The name is a JNDI name relative to the
+ java:comp/env context and must be unique within an
+ component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:message-destination-ref"/>
+ <xsd:field xpath="javaee:message-destination-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="entity-res-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The res-ref-name element specifies the name of a
+ resource manager connection factory reference. The name
+ is a JNDI name relative to the java:comp/env context.
+ The name must be unique within an component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-ref"/>
+ <xsd:field xpath="javaee:res-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="entity-env-entry-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The env-entry-name element contains the name of a
+ component's environment entry. The name is a JNDI
+ name relative to the java:comp/env context. The
+ name must be unique within an component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:env-entry"/>
+ <xsd:field xpath="javaee:env-entry-name"/>
+ </xsd:unique>
+ </xsd:element>
+ <xsd:element name="message-driven"
+ type="javaee:message-driven-beanType">
+ <xsd:unique name="messaged-ejb-local-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-ref-name element contains the name of
+ an EJB reference. The EJB reference is an entry in
+ the component's environment and is relative to the
+ java:comp/env context. The name must be unique within
+ the component.
+
+ It is recommended that name be prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-local-ref"/>
+ <xsd:field xpath="javaee:ejb-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="messaged-ejb-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-ref-name element contains the name of an EJB
+ reference. The EJB reference is an entry in the
+ component's environment and is relative to the
+ java:comp/env context. The name must be unique
+ within the component.
+
+ It is recommended that name is prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-ref"/>
+ <xsd:field xpath="javaee:ejb-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="messaged-resource-env-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The resource-env-ref-name element specifies the name
+ of a resource environment reference; its value is
+ the environment entry name used in the component
+ code. The name is a JNDI name relative to the
+ java:comp/env context and must be unique within an
+ component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-env-ref"/>
+ <xsd:field xpath="javaee:resource-env-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="messaged-message-destination-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The message-destination-ref-name element specifies the name
+ of a message destination reference; its value is
+ the message destination reference name used in the component
+ code. The name is a JNDI name relative to the
+ java:comp/env context and must be unique within an
+ component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:message-destination-ref"/>
+ <xsd:field xpath="javaee:message-destination-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="messaged-res-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The res-ref-name element specifies the name of a
+ resource manager connection factory reference. The name
+ is a JNDI name relative to the java:comp/env context.
+ The name must be unique within an component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-ref"/>
+ <xsd:field xpath="javaee:res-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="messaged-env-entry-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The env-entry-name element contains the name of a
+ component's environment entry. The name is a JNDI
+ name relative to the java:comp/env context. The
+ name must be unique within an component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:env-entry"/>
+ <xsd:field xpath="javaee:env-entry-name"/>
+ </xsd:unique>
+ </xsd:element>
+ </xsd:choice>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="entity-beanType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The entity-beanType declares an entity bean. The declaration
+ consists of:
+
+ - an optional description
+ - an optional display name
+ - an optional icon element that contains a small and a large
+ icon file name
+ - a unique name assigned to the enterprise bean
+ in the deployment descriptor
+ - an optional mapped-name element that can be used to provide
+ vendor-specific deployment information such as the physical
+ jndi-name of the entity bean's remote home interface. This
+ element is not required to be supported by all implementations.
+ Any use of this element is non-portable.
+ - the names of the entity bean's remote home
+ and remote interfaces, if any
+ - the names of the entity bean's local home and local
+ interfaces, if any
+ - the entity bean's implementation class
+ - the optional entity bean's persistence management type. If
+ this element is not specified it is defaulted to Container.
+ - the entity bean's primary key class name
+ - an indication of the entity bean's reentrancy
+ - an optional specification of the
+ entity bean's cmp-version
+ - an optional specification of the entity bean's
+ abstract schema name
+ - an optional list of container-managed fields
+ - an optional specification of the primary key
+ field
+ - an optional declaration of the bean's environment
+ entries
+ - an optional declaration of the bean's EJB
+ references
+ - an optional declaration of the bean's local
+ EJB references
+ - an optional declaration of the bean's web
+ service references
+ - an optional declaration of the security role
+ references
+ - an optional declaration of the security identity
+ to be used for the execution of the bean's methods
+ - an optional declaration of the bean's
+ resource manager connection factory references
+ - an optional declaration of the bean's
+ resource environment references
+ - an optional declaration of the bean's message
+ destination references
+ - an optional set of query declarations
+ for finder and select methods for an entity
+ bean with cmp-version 2.x.
+
+ The optional abstract-schema-name element must be specified
+ for an entity bean with container-managed persistence and
+ cmp-version 2.x.
+
+ The optional primkey-field may be present in the descriptor
+ if the entity's persistence-type is Container.
+
+ The optional cmp-version element may be present in the
+ descriptor if the entity's persistence-type is Container. If
+ the persistence-type is Container and the cmp-version
+ element is not specified, its value defaults to 2.x.
+
+ The optional home and remote elements must be specified if
+ the entity bean cmp-version is 1.x.
+
+ The optional home and remote elements must be specified if
+ the entity bean has a remote home and remote interface.
+
+ The optional local-home and local elements must be specified
+ if the entity bean has a local home and local interface.
+
+ Either both the local-home and the local elements or both
+ the home and the remote elements must be specified.
+
+ The optional query elements must be present if the
+ persistence-type is Container and the cmp-version is 2.x and
+ query methods other than findByPrimaryKey have been defined
+ for the entity bean.
+
+ The other elements that are optional are "optional" in the
+ sense that they are omitted if the lists represented by them
+ are empty.
+
+ At least one cmp-field element must be present in the
+ descriptor if the entity's persistence-type is Container and
+ the cmp-version is 1.x, and none must not be present if the
+ entity's persistence-type is Bean.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="ejb-name"
+ type="javaee:ejb-nameType"/>
+ <xsd:element name="mapped-name"
+ type="javaee:xsdStringType"
+ minOccurs="0"/>
+ <xsd:element name="home"
+ type="javaee:homeType"
+ minOccurs="0"/>
+ <xsd:element name="remote"
+ type="javaee:remoteType"
+ minOccurs="0"/>
+ <xsd:element name="local-home"
+ type="javaee:local-homeType"
+ minOccurs="0"/>
+ <xsd:element name="local"
+ type="javaee:localType"
+ minOccurs="0"/>
+ <xsd:element name="ejb-class"
+ type="javaee:ejb-classType"/>
+ <xsd:element name="persistence-type"
+ type="javaee:persistence-typeType"/>
+ <xsd:element name="prim-key-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The prim-key-class element contains the
+ fully-qualified name of an
+ entity bean's primary key class.
+
+ If the definition of the primary key class is
+ deferred to deployment time, the prim-key-class
+ element should specify java.lang.Object.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="reentrant"
+ type="javaee:true-falseType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The reentrant element specifies whether an entity
+ bean is reentrant or not.
+
+ The reentrant element must be one of the two
+ following: true or false
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="cmp-version"
+ type="javaee:cmp-versionType"
+ minOccurs="0"/>
+ <xsd:element name="abstract-schema-name"
+ type="javaee:java-identifierType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The abstract-schema-name element specifies the name
+ of the abstract schema type of an entity bean with
+ cmp-version 2.x. It is used in EJB QL queries.
+
+ For example, the abstract-schema-name for an entity
+ bean whose local interface is
+ com.acme.commerce.Order might be Order.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="cmp-field"
+ type="javaee:cmp-fieldType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="primkey-field"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The primkey-field element is used to specify the
+ name of the primary key field for an entity with
+ container-managed persistence.
+
+ The primkey-field must be one of the fields declared
+ in the cmp-field element, and the type of the field
+ must be the same as the primary key type.
+
+ The primkey-field element is not used if the primary
+ key maps to multiple container-managed fields
+ (i.e. the key is a compound key). In this case, the
+ fields of the primary key class must be public, and
+ their names must correspond to the field names of
+ the entity bean class that comprise the key.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
+ <xsd:element name="security-role-ref"
+ type="javaee:security-role-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="security-identity"
+ type="javaee:security-identityType"
+ minOccurs="0"/>
+ <xsd:element name="query"
+ type="javaee:queryType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="exclude-listType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The exclude-listType specifies one or more methods which
+ the Assembler marks to be uncallable.
+
+ If the method permission relation contains methods that are
+ in the exclude list, the Deployer should consider those
+ methods to be uncallable.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="method"
+ type="javaee:methodType"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="application-exceptionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The application-exceptionType declares an application
+ exception. The declaration consists of:
+
+ - the exception class. When the container receives
+ an exception of this type, it is required to
+ forward this exception as an applcation exception
+ to the client regardless of whether it is a checked
+ or unchecked exception.
+ - an optional rollback element. If this element is
+ set to true, the container must rollback the current
+ transaction before forwarding the exception to the
+ client. If not specified, it defaults to false.
+ - an optional inherited element. If this element is
+ set to true, subclasses of the exception class type
+ are also automatically considered application
+ exceptions (unless overriden at a lower level).
+ If set to false, only the exception class type is
+ considered an application-exception, not its
+ exception subclasses. If not specified, this
+ value defaults to true.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="exception-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="rollback"
+ type="javaee:true-falseType"
+ minOccurs="0"/>
+ <xsd:element name="inherited"
+ type="javaee:true-falseType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="interceptorsType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The interceptorsType element declares one or more interceptor
+ classes used by components within this ejb-jar file or .war file. The declaration
+ consists of :
+
+ - An optional description.
+ - One or more interceptor elements.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="interceptor"
+ type="javaee:interceptorType"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="interceptorType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The interceptorType element declares information about a single
+ interceptor class. It consists of :
+
+ - An optional description.
+ - The fully-qualified name of the interceptor class.
+ - An optional list of around invoke methods declared on the
+ interceptor class and/or its super-classes.
+ - An optional list of around timeout methods declared on the
+ interceptor class and/or its super-classes.
+ - An optional list environment dependencies for the interceptor
+ class and/or its super-classes.
+ - An optional list of post-activate methods declared on the
+ interceptor class and/or its super-classes.
+ - An optional list of pre-passivate methods declared on the
+ interceptor class and/or its super-classes.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="interceptor-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="around-invoke"
+ type="javaee:around-invokeType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="around-timeout"
+ type="javaee:around-timeoutType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
+ <xsd:element name="post-activate"
+ type="javaee:lifecycle-callbackType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="pre-passivate"
+ type="javaee:lifecycle-callbackType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="interceptor-bindingType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The interceptor-bindingType element describes the binding of
+ interceptor classes to beans within the ejb-jar file or .war file.
+ It consists of :
+
+ - An optional description.
+ - The name of an ejb within the module or the wildcard value "*",
+ which is used to define interceptors that are bound to all
+ beans in the ejb-jar file or .war file.
+ - A list of interceptor classes that are bound to the contents of
+ the ejb-name element or a specification of the total ordering
+ over the interceptors defined for the given level and above.
+ - An optional exclude-default-interceptors element. If set to true,
+ specifies that default interceptors are not to be applied to
+ a bean-class and/or business method.
+ - An optional exclude-class-interceptors element. If set to true,
+ specifies that class interceptors are not to be applied to
+ a business method.
+ - An optional set of method elements for describing the name/params
+ of a method-level interceptor.
+
+ Interceptors bound to all classes using the wildcard syntax
+ "*" are default interceptors for the components in the ejb-jar file or .war file.
+ In addition, interceptors may be bound at the level of the bean
+ class (class-level interceptors) or business methods (method-level
+ interceptors ).
+
+ The binding of interceptors to classes is additive. If interceptors
+ are bound at the class-level and/or default-level as well as the
+ method-level, both class-level and/or default-level as well as
+ method-level will apply.
+
+ There are four possible styles of the interceptor element syntax :
+
+ 1.
+ <interceptor-binding>
+ <ejb-name>*</ejb-name>
+ <interceptor-class>INTERCEPTOR</interceptor-class>
+ </interceptor-binding>
+
+ Specifying the ejb-name as the wildcard value "*" designates
+ default interceptors (interceptors that apply to all session and
+ message-driven beans contained in the ejb-jar file or .war file).
+
+ 2.
+ <interceptor-binding>
+ <ejb-name>EJBNAME</ejb-name>
+ <interceptor-class>INTERCEPTOR</interceptor-class>
+ </interceptor-binding>
+
+ This style is used to refer to interceptors associated with the
+ specified enterprise bean(class-level interceptors).
+
+ 3.
+ <interceptor-binding>
+ <ejb-name>EJBNAME</ejb-name>
+ <interceptor-class>INTERCEPTOR</interceptor-class>
+ <method>
+ <method-name>METHOD</method-name>
+ </method>
+ </interceptor-binding>
+
+ This style is used to associate a method-level interceptor with
+ the specified enterprise bean. If there are multiple methods
+ with the same overloaded name, the element of this style refers
+ to all the methods with the overloaded name. Method-level
+ interceptors can only be associated with business methods of the
+ bean class. Note that the wildcard value "*" cannot be used
+ to specify method-level interceptors.
+
+ 4.
+ <interceptor-binding>
+ <ejb-name>EJBNAME</ejb-name>
+ <interceptor-class>INTERCEPTOR</interceptor-class>
+ <method>
+ <method-name>METHOD</method-name>
+ <method-params>
+ <method-param>PARAM-1</method-param>
+ <method-param>PARAM-2</method-param>
+ ...
+ <method-param>PARAM-N</method-param>
+ </method-params>
+ </method>
+ </interceptor-binding>
+
+ This style is used to associate a method-level interceptor with
+ the specified method of the specified enterprise bean. This
+ style is used to refer to a single method within a set of methods
+ with an overloaded name. The values PARAM-1 through PARAM-N
+ are the fully-qualified Java types of the method's input parameters
+ (if the method has no input arguments, the method-params element
+ contains no method-param elements). Arrays are specified by the
+ array element's type, followed by one or more pair of square
+ brackets (e.g. int[][]).
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="ejb-name"
+ type="javaee:string"/>
+ <xsd:choice>
+ <xsd:element name="interceptor-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="interceptor-order"
+ type="javaee:interceptor-orderType"
+ minOccurs="1"/>
+ </xsd:choice>
+ <xsd:element name="exclude-default-interceptors"
+ type="javaee:true-falseType"
+ minOccurs="0"/>
+ <xsd:element name="exclude-class-interceptors"
+ type="javaee:true-falseType"
+ minOccurs="0"/>
+ <xsd:element name="method"
+ type="javaee:named-methodType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="interceptor-orderType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The interceptor-orderType element describes a total ordering
+ of interceptor classes.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="interceptor-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="1"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="named-methodType">
+ <xsd:sequence>
+ <xsd:element name="method-name"
+ type="javaee:string"/>
+ <xsd:element name="method-params"
+ type="javaee:method-paramsType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="init-methodType">
+ <xsd:sequence>
+ <xsd:element name="create-method"
+ type="javaee:named-methodType"/>
+ <xsd:element name="bean-method"
+ type="javaee:named-methodType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="remove-methodType">
+ <xsd:sequence>
+ <xsd:element name="bean-method"
+ type="javaee:named-methodType"/>
+ <xsd:element name="retain-if-exception"
+ type="javaee:true-falseType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="message-driven-beanType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The message-driven element declares a message-driven
+ bean. The declaration consists of:
+
+ - an optional description
+ - an optional display name
+ - an optional icon element that contains a small and a large
+ icon file name.
+ - a name assigned to the enterprise bean in
+ the deployment descriptor
+ - an optional mapped-name element that can be used to provide
+ vendor-specific deployment information such as the physical
+ jndi-name of destination from which this message-driven bean
+ should consume. This element is not required to be supported
+ by all implementations. Any use of this element is non-portable.
+ - the message-driven bean's implementation class
+ - an optional declaration of the bean's messaging
+ type
+ - an optional declaration of the bean's timeout method for
+ handling programmatically created timers
+ - an optional declaration of timers to be automatically created at
+ deployment time
+ - the optional message-driven bean's transaction management
+ type. If it is not defined, it is defaulted to Container.
+ - an optional declaration of the bean's
+ message-destination-type
+ - an optional declaration of the bean's
+ message-destination-link
+ - an optional declaration of the message-driven bean's
+ activation configuration properties
+ - an optional list of the message-driven bean class and/or
+ superclass around-invoke methods.
+ - an optional list of the message-driven bean class and/or
+ superclass around-timeout methods.
+ - an optional declaration of the bean's environment
+ entries
+ - an optional declaration of the bean's EJB references
+ - an optional declaration of the bean's local EJB
+ references
+ - an optional declaration of the bean's web service
+ references
+ - an optional declaration of the security role
+ references
+ - an optional declaration of the security
+ identity to be used for the execution of the bean's
+ methods
+ - an optional declaration of the bean's
+ resource manager connection factory
+ references
+ - an optional declaration of the bean's resource
+ environment references.
+ - an optional declaration of the bean's message
+ destination references
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="ejb-name"
+ type="javaee:ejb-nameType"/>
+ <xsd:element name="mapped-name"
+ type="javaee:xsdStringType"
+ minOccurs="0"/>
+ <xsd:element name="ejb-class"
+ type="javaee:ejb-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-class element specifies the fully qualified name
+ of the bean class for this ejb. It is required unless
+ there is a component-defining annotation for the same
+ ejb-name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="messaging-type"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The messaging-type element specifies the message
+ listener interface of the message-driven bean.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="timeout-method"
+ type="javaee:named-methodType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The timeout-method element specifies the method that
+ will receive callbacks for programmatically
+ created timers.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="timer"
+ type="javaee:timerType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="transaction-type"
+ type="javaee:transaction-typeType"
+ minOccurs="0"/>
+ <xsd:element name="message-destination-type"
+ type="javaee:message-destination-typeType"
+ minOccurs="0"/>
+ <xsd:element name="message-destination-link"
+ type="javaee:message-destination-linkType"
+ minOccurs="0"/>
+ <xsd:element name="activation-config"
+ type="javaee:activation-configType"
+ minOccurs="0"/>
+ <xsd:element name="around-invoke"
+ type="javaee:around-invokeType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="around-timeout"
+ type="javaee:around-timeoutType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
+ <xsd:element name="security-role-ref"
+ type="javaee:security-role-refType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ </xsd:element>
+ <xsd:element name="security-identity"
+ type="javaee:security-identityType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="methodType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The methodType is used to denote a method of an enterprise
+ bean. The method may be any of the following or a set of
+ any of the following methods may be designated:
+ business interface method
+ home interface method
+ component interface method
+ web service endpoint interface method
+ no-interface view method
+ singleton session bean lifecycle callback method
+ stateful session bean lifecycle callback method (see
+ limitations)
+ timeout callback method
+ message-driven bean message listener method
+
+ The ejb-name element must be the name of one of the enterprise
+ beans declared in the deployment descriptor.
+ The optional method-intf element allows distinguishing between a
+ method with the same signature that is multiply defined
+ across any of the above.
+ The method-name element specifies the method name.
+ The optional method-params elements identify a single method
+ among multiple methods with an overloaded method name.
+
+ There are three possible styles of using methodType element
+ within a method element:
+
+ 1.
+ <method>
+ <ejb-name>EJBNAME</ejb-name>
+ <method-name>*</method-name>
+ </method>
+
+ This style is used to refer to all of the following methods
+ of the specified enterprise bean:
+ business interface methods
+ home interface methods
+ component interface methods
+ web service endpoint interface methods
+ no-interface view methods
+ singleton session bean lifecycle callback methods
+ timeout callback methods
+ message-driven bean message listener method
+
+ This style may be used for stateful session bean lifecycle
+ callback methods to specify their transaction attributes,
+ if used with the method-intf element that contains
+ LifecycleCallback as the value.
+
+ 2.
+ <method>
+ <ejb-name>EJBNAME</ejb-name>
+ <method-name>METHOD</method-name>
+ </method>
+
+ This style is used to refer to the specified method of
+ the specified enterprise bean. If there are multiple
+ methods with the same overloaded name, the element of
+ this style refers to all the methods with the overloaded
+ name.
+
+ This style may be used to refer to stateful session bean
+ lifecycle callback methods to specify their transaction
+ attributes if any of the following is true:
+ there is only one method with this name in the specified
+ enterprise bean
+ all overloaded methods with this name in the specified
+ enterprise bean are lifecycle callback methods
+ method-intf element is specified and it contains
+ LifecycleCallback as the value
+
+ 3.
+ <method>
+ <ejb-name>EJBNAME</ejb-name>
+ <method-name>METHOD</method-name>
+ <method-params>
+ <method-param>PARAM-1</method-param>
+ <method-param>PARAM-2</method-param>
+ ...
+ <method-param>PARAM-n</method-param>
+ </method-params>
+ </method>
+
+ This style is used to refer to a single method within a
+ set of methods with an overloaded name. PARAM-1 through
+ PARAM-n are the fully-qualified Java types of the
+ method's input parameters (if the method has no input
+ arguments, the method-params element contains no
+ method-param elements). Arrays are specified by the
+ array element's type, followed by one or more pair of
+ square brackets (e.g. int[][]).
+ If a method with the same name and signature is defined
+ on more than one interface of an enterprise bean, this
+ style refers to all those methods.
+
+ Examples:
+
+ Style 1: The following method element refers to all of the
+ following methods of the EmployeeService bean:
+ no interface view methods
+ business interface methods
+ home interface methods
+ component business interface methods
+ singleton session bean lifecycle callback methods, if any
+ timeout callback methods
+ web service endpoint interface methods
+ message-driven bean message listener methods (if the bean
+ a message-driven bean)
+
+ <method>
+ <ejb-name>EmployeeService</ejb-name>
+ <method-name>*</method-name>
+ </method>
+
+ Style 2: The following method element refers to all the
+ create methods of the EmployeeService bean's home
+ interface(s).
+
+ <method>
+ <ejb-name>EmployeeService</ejb-name>
+ <method-name>create</method-name>
+ </method>
+
+ Style 3: The following method element refers to the
+ create(String firstName, String LastName) method of the
+ EmployeeService bean's home interface(s).
+
+ <method>
+ <ejb-name>EmployeeService</ejb-name>
+ <method-name>create</method-name>
+ <method-params>
+ <method-param>java.lang.String</method-param>
+ <method-param>java.lang.String</method-param>
+ </method-params>
+ </method>
+
+ The following example illustrates a Style 3 element with
+ more complex parameter types. The method
+ foobar(char s, int i, int[] iar, mypackage.MyClass mycl,
+ mypackage.MyClass[][] myclaar) would be specified as:
+
+ <method>
+ <ejb-name>EmployeeService</ejb-name>
+ <method-name>foobar</method-name>
+ <method-params>
+ <method-param>char</method-param>
+ <method-param>int</method-param>
+ <method-param>int[]</method-param>
+ <method-param>mypackage.MyClass</method-param>
+ <method-param>mypackage.MyClass[][]</method-param>
+ </method-params>
+ </method>
+
+ The optional method-intf element can be used when it becomes
+ necessary to differentiate between a method that is defined
+ multiple times with the same name and signature across any
+ of the following methods of an enterprise bean:
+ business interface methods
+ home interface methods
+ component interface methods
+ web service endpoint methods
+ no-interface view methods
+ singleton or stateful session bean lifecycle callback methods
+ timeout callback methods
+ message-driven bean message listener methods
+
+ However, if the same method is a method of both the local
+ business interface, and the local component interface,
+ the same attribute applies to the method for both interfaces.
+ Likewise, if the same method is a method of both the remote
+ business interface and the remote component interface, the same
+ attribute applies to the method for both interfaces.
+
+ For example, the method element
+
+ <method>
+ <ejb-name>EmployeeService</ejb-name>
+ <method-intf>Remote</method-intf>
+ <method-name>create</method-name>
+ <method-params>
+ <method-param>java.lang.String</method-param>
+ <method-param>java.lang.String</method-param>
+ </method-params>
+ </method>
+
+ can be used to differentiate the create(String, String)
+ method defined in the remote interface from the
+ create(String, String) method defined in the remote home
+ interface, which would be defined as
+
+ <method>
+ <ejb-name>EmployeeService</ejb-name>
+ <method-intf>Home</method-intf>
+ <method-name>create</method-name>
+ <method-params>
+ <method-param>java.lang.String</method-param>
+ <method-param>java.lang.String</method-param>
+ </method-params>
+ </method>
+
+ and the create method that is defined in the local home
+ interface which would be defined as
+
+ <method>
+ <ejb-name>EmployeeService</ejb-name>
+ <method-intf>LocalHome</method-intf>
+ <method-name>create</method-name>
+ <method-params>
+ <method-param>java.lang.String</method-param>
+ <method-param>java.lang.String</method-param>
+ </method-params>
+ </method>
+
+ The method-intf element can be used with all three Styles
+ of the method element usage. For example, the following
+ method element example could be used to refer to all the
+ methods of the EmployeeService bean's remote home interface
+ and the remote business interface.
+
+ <method>
+ <ejb-name>EmployeeService</ejb-name>
+ <method-intf>Home</method-intf>
+ <method-name>*</method-name>
+ </method>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="ejb-name"
+ type="javaee:ejb-nameType"/>
+ <xsd:element name="method-intf"
+ type="javaee:method-intfType"
+ minOccurs="0">
+ </xsd:element>
+ <xsd:element name="method-name"
+ type="javaee:method-nameType"/>
+ <xsd:element name="method-params"
+ type="javaee:method-paramsType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="method-intfType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The method-intf element allows a method element to
+ differentiate between the methods with the same name and
+ signature that are multiply defined across the home and
+ component interfaces (e.g, in both an enterprise bean's
+ remote and local interfaces or in both an enterprise bean's
+ home and remote interfaces, etc.); the component and web
+ service endpoint interfaces, and so on.
+
+ Local applies to the local component interface, local business
+ interfaces, and the no-interface view.
+
+ Remote applies to both remote component interface and the remote
+ business interfaces.
+
+ ServiceEndpoint refers to methods exposed through a web service
+ endpoint.
+
+ Timer refers to the bean's timeout callback methods.
+
+ MessageEndpoint refers to the methods of a message-driven bean's
+ message-listener interface.
+
+ LifecycleCallback refers to the lifecycle callback methods of
+ a singleton or stateful session bean.
+
+ The method-intf element must be one of the following:
+
+ Home
+ Remote
+ LocalHome
+ Local
+ ServiceEndpoint
+ Timer
+ MessageEndpoint
+ LifecycleCallback
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Home"/>
+ <xsd:enumeration value="Remote"/>
+ <xsd:enumeration value="LocalHome"/>
+ <xsd:enumeration value="Local"/>
+ <xsd:enumeration value="ServiceEndpoint"/>
+ <xsd:enumeration value="Timer"/>
+ <xsd:enumeration value="MessageEndpoint"/>
+ <xsd:enumeration value="LifecycleCallback"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="method-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The method-nameType contains a name of an enterprise
+ bean method or the asterisk (*) character. The asterisk is
+ used when the element denotes all the methods of an
+ enterprise bean's client view interfaces.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="method-paramsType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The method-paramsType defines a list of the
+ fully-qualified Java type names of the method parameters.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="method-param"
+ type="javaee:java-typeType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The method-param element contains a primitive
+ or a fully-qualified Java type name of a method
+ parameter.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="method-permissionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The method-permissionType specifies that one or more
+ security roles are allowed to invoke one or more enterprise
+ bean methods. The method-permissionType consists of an
+ optional description, a list of security role names or an
+ indicator to state that the method is unchecked for
+ authorization, and a list of method elements.
+
+ The security roles used in the method-permissionType
+ must be defined in the security-role elements of the
+ deployment descriptor, and the methods must be methods
+ defined in the enterprise bean's no-interface view,
+ business, home, component and/or web service endpoint
+ interfaces.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:choice>
+ <xsd:element name="role-name"
+ type="javaee:role-nameType"
+ maxOccurs="unbounded"/>
+ <xsd:element name="unchecked"
+ type="javaee:emptyType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The unchecked element specifies that a method is
+ not checked for authorization by the container
+ prior to invocation of the method.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ <xsd:element name="method"
+ type="javaee:methodType"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="multiplicityType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The multiplicityType describes the multiplicity of the
+ role that participates in a relation.
+
+ The value must be one of the two following:
+
+ One
+ Many
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="One"/>
+ <xsd:enumeration value="Many"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="persistence-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The persistence-typeType specifies an entity bean's persistence
+ management type.
+
+ The persistence-type element must be one of the two following:
+
+ Bean
+ Container
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Bean"/>
+ <xsd:enumeration value="Container"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="queryType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The queryType defines a finder or select
+ query. It contains
+ - an optional description of the query
+ - the specification of the finder or select
+ method it is used by
+ - an optional specification of the result type
+ mapping, if the query is for a select method
+ and entity objects are returned.
+ - the EJB QL query string that defines the query.
+
+ Queries that are expressible in EJB QL must use the ejb-ql
+ element to specify the query. If a query is not expressible
+ in EJB QL, the description element should be used to
+ describe the semantics of the query and the ejb-ql element
+ should be empty.
+
+ The result-type-mapping is an optional element. It can only
+ be present if the query-method specifies a select method
+ that returns entity objects. The default value for the
+ result-type-mapping element is "Local".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"/>
+ <xsd:element name="query-method"
+ type="javaee:query-methodType"/>
+ <xsd:element name="result-type-mapping"
+ type="javaee:result-type-mappingType"
+ minOccurs="0"/>
+ <xsd:element name="ejb-ql"
+ type="javaee:xsdStringType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="query-methodType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The query-method specifies the method for a finder or select
+ query.
+
+ The method-name element specifies the name of a finder or select
+ method in the entity bean's implementation class.
+
+ Each method-param must be defined for a query-method using the
+ method-params element.
+
+ It is used by the query-method element.
+
+ Example:
+
+ <query>
+ <description>Method finds large orders</description>
+ <query-method>
+ <method-name>findLargeOrders</method-name>
+ <method-params></method-params>
+ </query-method>
+ <ejb-ql>
+ SELECT OBJECT(o) FROM Order o
+ WHERE o.amount &gt; 1000
+ </ejb-ql>
+ </query>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="method-name"
+ type="javaee:method-nameType"/>
+ <xsd:element name="method-params"
+ type="javaee:method-paramsType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="relationship-role-sourceType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The relationship-role-sourceType designates the source of a
+ role that participates in a relationship. A
+ relationship-role-sourceType is used by
+ relationship-role-source elements to uniquely identify an
+ entity bean.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="ejb-name"
+ type="javaee:ejb-nameType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="relationshipsType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The relationshipsType describes the relationships in
+ which entity beans with container-managed persistence
+ participate. The relationshipsType contains an optional
+ description; and a list of ejb-relation elements, which
+ specify the container managed relationships.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="ejb-relation"
+ type="javaee:ejb-relationType"
+ maxOccurs="unbounded">
+ <xsd:unique name="role-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-relationship-role-name contains the name of a
+ relationship role. The name must be unique within
+ a relationship, but can be reused in different
+ relationships.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath=".//javaee:ejb-relationship-role-name"/>
+ <xsd:field xpath="."/>
+ </xsd:unique>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="result-type-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The result-type-mappingType is used in the query element to
+ specify whether an abstract schema type returned by a query
+ for a select method is to be mapped to an EJBLocalObject or
+ EJBObject type.
+
+ The value must be one of the following:
+
+ Local
+ Remote
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Local"/>
+ <xsd:enumeration value="Remote"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="security-identityType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The security-identityType specifies whether the caller's
+ security identity is to be used for the execution of the
+ methods of the enterprise bean or whether a specific run-as
+ identity is to be used. It contains an optional description
+ and a specification of the security identity to be used.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:choice>
+ <xsd:element name="use-caller-identity"
+ type="javaee:emptyType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The use-caller-identity element specifies that
+ the caller's security identity be used as the
+ security identity for the execution of the
+ enterprise bean's methods.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="run-as"
+ type="javaee:run-asType"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="session-beanType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The session-beanType declares an session bean. The
+ declaration consists of:
+
+ - an optional description
+ - an optional display name
+ - an optional icon element that contains a small and a large
+ icon file name
+ - a name assigned to the enterprise bean
+ in the deployment description
+ - an optional mapped-name element that can be used to provide
+ vendor-specific deployment information such as the physical
+ jndi-name of the session bean's remote home/business interface.
+ This element is not required to be supported by all
+ implementations. Any use of this element is non-portable.
+ - the names of all the remote or local business interfaces,
+ if any
+ - the names of the session bean's remote home and
+ remote interfaces, if any
+ - the names of the session bean's local home and
+ local interfaces, if any
+ - an optional declaration that this bean exposes a
+ no-interface view
+ - the name of the session bean's web service endpoint
+ interface, if any
+ - the session bean's implementation class
+ - the session bean's state management type
+ - an optional declaration of a stateful session bean's timeout value
+ - an optional declaration of the session bean's timeout method for
+ handling programmatically created timers
+ - an optional declaration of timers to be automatically created at
+ deployment time
+ - an optional declaration that a Singleton bean has eager
+ initialization
+ - an optional declaration of a Singleton/Stateful bean's concurrency
+ management type
+ - an optional declaration of the method locking metadata
+ for a Singleton with container managed concurrency
+ - an optional declaration of the other Singleton beans in the
+ application that must be initialized before this bean
+ - an optional declaration of the session bean's asynchronous
+ methods
+ - the optional session bean's transaction management type.
+ If it is not present, it is defaulted to Container.
+ - an optional declaration of a stateful session bean's
+ afterBegin, beforeCompletion, and/or afterCompletion methods
+ - an optional list of the session bean class and/or
+ superclass around-invoke methods.
+ - an optional list of the session bean class and/or
+ superclass around-timeout methods.
+ - an optional declaration of the bean's
+ environment entries
+ - an optional declaration of the bean's EJB references
+ - an optional declaration of the bean's local
+ EJB references
+ - an optional declaration of the bean's web
+ service references
+ - an optional declaration of the security role
+ references
+ - an optional declaration of the security identity
+ to be used for the execution of the bean's methods
+ - an optional declaration of the bean's resource
+ manager connection factory references
+ - an optional declaration of the bean's resource
+ environment references.
+ - an optional declaration of the bean's message
+ destination references
+ - an optional specification as to whether the stateful
+ session bean is passivation capable or not. If not
+ specified, the bean is assumed to be passivation capable
+
+ The elements that are optional are "optional" in the sense
+ that they are omitted when if lists represented by them are
+ empty.
+
+ The service-endpoint element may only be specified if the
+ bean is a stateless session bean.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="ejb-name"
+ type="javaee:ejb-nameType"/>
+ <xsd:element name="mapped-name"
+ type="javaee:xsdStringType"
+ minOccurs="0"/>
+ <xsd:element name="home"
+ type="javaee:homeType"
+ minOccurs="0"/>
+ <xsd:element name="remote"
+ type="javaee:remoteType"
+ minOccurs="0"/>
+ <xsd:element name="local-home"
+ type="javaee:local-homeType"
+ minOccurs="0"/>
+ <xsd:element name="local"
+ type="javaee:localType"
+ minOccurs="0"/>
+ <xsd:element name="business-local"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="business-remote"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="local-bean"
+ type="javaee:emptyType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The local-bean element declares that this
+ session bean exposes a no-interface Local client view.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="service-endpoint"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The service-endpoint element contains the
+ fully-qualified name of the enterprise bean's web
+ service endpoint interface. The service-endpoint
+ element may only be specified for a stateless
+ session bean. The specified interface must be a
+ valid JAX-RPC service endpoint interface.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="ejb-class"
+ type="javaee:ejb-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-class element specifies the fully qualified name
+ of the bean class for this ejb. It is required unless
+ there is a component-defining annotation for the same
+ ejb-name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="session-type"
+ type="javaee:session-typeType"
+ minOccurs="0"/>
+ <xsd:element name="stateful-timeout"
+ type="javaee:stateful-timeoutType"
+ minOccurs="0"/>
+ <xsd:element name="timeout-method"
+ type="javaee:named-methodType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The timeout-method element specifies the method that
+ will receive callbacks for programmatically
+ created timers.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="timer"
+ type="javaee:timerType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="init-on-startup"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The init-on-startup element specifies that a Singleton
+ bean has eager initialization.
+ This element can only be specified for singleton session
+ beans.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="concurrency-management-type"
+ type="javaee:concurrency-management-typeType"
+ minOccurs="0"/>
+ <xsd:element name="concurrent-method"
+ type="javaee:concurrent-methodType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="depends-on"
+ type="javaee:depends-onType"
+ minOccurs="0"/>
+ <xsd:element name="init-method"
+ type="javaee:init-methodType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The init-method element specifies the mappings for
+ EJB 2.x style create methods for an EJB 3.x bean.
+ This element can only be specified for stateful
+ session beans.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="remove-method"
+ type="javaee:remove-methodType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The remove-method element specifies the mappings for
+ EJB 2.x style remove methods for an EJB 3.x bean.
+ This element can only be specified for stateful
+ session beans.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="async-method"
+ type="javaee:async-methodType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="transaction-type"
+ type="javaee:transaction-typeType"
+ minOccurs="0"/>
+ <xsd:element name="after-begin-method"
+ type="javaee:named-methodType"
+ minOccurs="0"/>
+ <xsd:element name="before-completion-method"
+ type="javaee:named-methodType"
+ minOccurs="0"/>
+ <xsd:element name="after-completion-method"
+ type="javaee:named-methodType"
+ minOccurs="0"/>
+ <xsd:element name="around-invoke"
+ type="javaee:around-invokeType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="around-timeout"
+ type="javaee:around-timeoutType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
+ <xsd:element name="post-activate"
+ type="javaee:lifecycle-callbackType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="pre-passivate"
+ type="javaee:lifecycle-callbackType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="security-role-ref"
+ type="javaee:security-role-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="security-identity"
+ type="javaee:security-identityType"
+ minOccurs="0"/>
+ <xsd:element name="passivation-capable"
+ type="xsd:boolean"
+ default="true"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The passivation-capable element specifies whether the
+ stateful session bean is passivation capable or not.
+ If not specified, the bean is assumed to be passivation
+ capable.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="session-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The session-typeType describes whether the session bean is a
+ singleton, stateful or stateless session. It is used by
+ session-type elements.
+
+ The value must be one of the three following:
+
+ Singleton
+ Stateful
+ Stateless
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Singleton"/>
+ <xsd:enumeration value="Stateful"/>
+ <xsd:enumeration value="Stateless"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="stateful-timeoutType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The stateful-timeoutType represents the amount of time
+ a stateful session bean can be idle(not receive any client
+ invocations) before it is eligible for removal by the container.
+
+ A timeout value of 0 means the bean is immediately eligible for removal.
+
+ A timeout value of -1 means the bean will never be removed due to timeout.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="timeout"
+ type="javaee:xsdIntegerType"/>
+ <xsd:element name="unit"
+ type="javaee:time-unit-typeType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="time-unit-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The time-unit-typeType represents a time duration at a given
+ unit of granularity.
+
+ The time unit type must be one of the following :
+
+ Days
+ Hours
+ Minutes
+ Seconds
+ Milliseconds
+ Microseconds
+ Nanoseconds
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Days"/>
+ <xsd:enumeration value="Hours"/>
+ <xsd:enumeration value="Minutes"/>
+ <xsd:enumeration value="Seconds"/>
+ <xsd:enumeration value="Milliseconds"/>
+ <xsd:enumeration value="Microseconds"/>
+ <xsd:enumeration value="Nanoseconds"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="timer-scheduleType">
+ <xsd:sequence>
+ <xsd:element name="second"
+ type="javaee:string"
+ minOccurs="0"/>
+ <xsd:element name="minute"
+ type="javaee:string"
+ minOccurs="0"/>
+ <xsd:element name="hour"
+ type="javaee:string"
+ minOccurs="0"/>
+ <xsd:element name="day-of-month"
+ type="javaee:string"
+ minOccurs="0"/>
+ <xsd:element name="month"
+ type="javaee:string"
+ minOccurs="0"/>
+ <xsd:element name="day-of-week"
+ type="javaee:string"
+ minOccurs="0"/>
+ <xsd:element name="year"
+ type="javaee:string"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="timerType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The timerType specifies an enterprise bean timer. Each
+ timer is automatically created by the container upon
+ deployment. Timer callbacks occur based on the
+ schedule attributes. All callbacks are made to the
+ timeout-method associated with the timer.
+
+ A timer can have an optional start and/or end date. If
+ a start date is specified, it takes precedence over the
+ associated timer schedule such that any matching
+ expirations prior to the start time will not occur.
+ Likewise, no matching expirations will occur after any
+ end date. Start/End dates are specified using the
+ XML Schema dateTime type, which follows the ISO-8601
+ standard for date(and optional time-within-the-day)
+ representation.
+
+ An optional flag can be used to control whether
+ this timer has persistent(true) delivery semantics or
+ non-persistent(false) delivery semantics. If not specified,
+ the value defaults to persistent(true).
+
+ A time zone can optionally be associated with a timer.
+ If specified, the timer's schedule is evaluated in the context
+ of that time zone, regardless of the default time zone in which
+ the container is executing. Time zones are specified as an
+ ID string. The set of required time zone IDs is defined by
+ the Zone Name(TZ) column of the public domain zoneinfo database.
+
+ An optional info string can be assigned to the timer and
+ retrieved at runtime through the Timer.getInfo() method.
+
+ The timerType can only be specified on stateless session
+ beans, singleton session beans, and message-driven beans.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="schedule"
+ type="javaee:timer-scheduleType"/>
+ <xsd:element name="start"
+ type="xsd:dateTime"
+ minOccurs="0"/>
+ <xsd:element name="end"
+ type="xsd:dateTime"
+ minOccurs="0"/>
+ <xsd:element name="timeout-method"
+ type="javaee:named-methodType"/>
+ <xsd:element name="persistent"
+ type="javaee:true-falseType"
+ minOccurs="0"/>
+ <xsd:element name="timezone"
+ type="javaee:string"
+ minOccurs="0"/>
+ <xsd:element name="info"
+ type="javaee:string"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="trans-attributeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The trans-attributeType specifies how the container must
+ manage the transaction boundaries when delegating a method
+ invocation to an enterprise bean's business method.
+
+ The value must be one of the following:
+
+ NotSupported
+ Supports
+ Required
+ RequiresNew
+ Mandatory
+ Never
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="NotSupported"/>
+ <xsd:enumeration value="Supports"/>
+ <xsd:enumeration value="Required"/>
+ <xsd:enumeration value="RequiresNew"/>
+ <xsd:enumeration value="Mandatory"/>
+ <xsd:enumeration value="Never"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="transaction-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The transaction-typeType specifies an enterprise bean's
+ transaction management type.
+
+ The transaction-type must be one of the two following:
+
+ Bean
+ Container
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Bean"/>
+ <xsd:enumeration value="Container"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+</xsd:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_7.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_7.xsd
new file mode 100644
index 0000000000..72ea7a1d64
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_7.xsd
@@ -0,0 +1,3063 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="7">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2009-2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following definitions that appear in the common
+ shareable schema(s) of Java EE deployment descriptors should be
+ interpreted with respect to the context they are included:
+
+ Deployment Component may indicate one of the following:
+ java ee application;
+ application client;
+ web application;
+ enterprise bean;
+ resource adapter;
+
+ Deployment File may indicate one of the following:
+ ear file;
+ war file;
+ jar file;
+ rar file;
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+
+ <xsd:include schemaLocation="javaee_web_services_client_1_4.xsd"/>
+
+ <xsd:group name="descriptionGroup">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This group keeps the usage of the contained description related
+ elements consistent across Java EE deployment descriptors.
+
+ All elements may occur multiple times with different languages,
+ to support localization of the content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="display-name"
+ type="javaee:display-nameType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="icon"
+ type="javaee:iconType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:group>
+
+ <xsd:group name="jndiEnvironmentRefsGroup">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This group keeps the usage of the contained JNDI environment
+ reference elements consistent across Java EE deployment descriptors.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="env-entry"
+ type="javaee:env-entryType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="ejb-ref"
+ type="javaee:ejb-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="ejb-local-ref"
+ type="javaee:ejb-local-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:group ref="javaee:service-refGroup"/>
+ <xsd:element name="resource-ref"
+ type="javaee:resource-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="resource-env-ref"
+ type="javaee:resource-env-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="message-destination-ref"
+ type="javaee:message-destination-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="persistence-context-ref"
+ type="javaee:persistence-context-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="persistence-unit-ref"
+ type="javaee:persistence-unit-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="post-construct"
+ type="javaee:lifecycle-callbackType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="pre-destroy"
+ type="javaee:lifecycle-callbackType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="data-source"
+ type="javaee:data-sourceType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="jms-connection-factory"
+ type="javaee:jms-connection-factoryType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="jms-destination"
+ type="javaee:jms-destinationType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="mail-session"
+ type="javaee:mail-sessionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="connection-factory"
+ type="javaee:connection-factory-resourceType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="administered-object"
+ type="javaee:administered-objectType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:group>
+
+ <xsd:group name="resourceGroup">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This group collects elements that are common to most
+ JNDI resource elements.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:resourceBaseGroup"/>
+ <xsd:element name="lookup-name"
+ type="javaee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The JNDI name to be looked up to resolve a resource reference.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:group>
+
+ <xsd:group name="resourceBaseGroup">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This group collects elements that are common to all the
+ JNDI resource elements. It does not include the lookup-name
+ element, that is only applicable to some resource elements.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="mapped-name"
+ type="javaee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A product specific name that this resource should be
+ mapped to. The name of this resource, as defined by the
+ resource's name element or defaulted, is a name that is
+ local to the application component using the resource.
+ (It's a name in the JNDI java:comp/env namespace.) Many
+ application servers provide a way to map these local
+ names to names of resources known to the application
+ server. This mapped name is often a global JNDI name,
+ but may be a name of any form.
+
+ Application servers are not required to support any
+ particular form or type of mapped name, nor the ability
+ to use mapped names. The mapped name is
+ product-dependent and often installation-dependent. No
+ use of a mapped name is portable.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="injection-target"
+ type="javaee:injection-targetType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:group>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="administered-objectType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Configuration of an administered object.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Description of this administered object.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="name"
+ type="javaee:jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name element specifies the JNDI name of the
+ administered object being defined.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="interface-name"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The administered object's interface type.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="class-name"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The administered object's class name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="resource-adapter"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Resource adapter name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property"
+ type="javaee:propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Property of the administered object property. This may be a
+ vendor-specific property.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="connection-factory-resourceType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Configuration of a Connector Connection Factory resource.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Description of this resource.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="name"
+ type="javaee:jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name element specifies the JNDI name of the
+ resource being defined.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="class-name"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The fully qualified domain name of the connection factory
+ interface class.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="resource-adapter"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Resource adapter name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="max-pool-size"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Maximum number of connections that should be concurrently
+ allocated for a connection pool.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="min-pool-size"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Minimum number of connections that should be concurrently
+ allocated for a connection pool.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="transaction-support"
+ type="javaee:transaction-supportType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The level of transaction support the connection factory
+ needs to support.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property"
+ type="javaee:propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Resource property. This may be a vendor-specific
+ property.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="data-sourceType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Configuration of a DataSource.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Description of this DataSource.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="name"
+ type="javaee:jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name element specifies the JNDI name of the
+ data source being defined.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="class-name"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DataSource, XADataSource or ConnectionPoolDataSource
+ implementation class.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="server-name"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Database server name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="port-number"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Port number where a server is listening for requests.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="database-name"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Name of a database on a server.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="url"
+ type="javaee:jdbc-urlType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ A JDBC URL. If the <code>url</code> property is specified
+ along with other standard <code>DataSource</code> properties
+ such as <code>serverName</code>, <code>databaseName</code>
+ and <code>portNumber</code>, the more specific properties will
+ take precedence and <code>url</code> will be ignored.
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="user"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ User name to use for connection authentication.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="password"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Password to use for connection authentication.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property"
+ type="javaee:propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ JDBC DataSource property. This may be a vendor-specific
+ property or a less commonly used DataSource property.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="login-timeout"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Sets the maximum time in seconds that this data source
+ will wait while attempting to connect to a database.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="transactional"
+ type="javaee:xsdBooleanType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Set to false if connections should not participate in
+ transactions.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="isolation-level"
+ type="javaee:isolation-levelType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Isolation level for connections.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="initial-pool-size"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Number of connections that should be created when a
+ connection pool is initialized.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="max-pool-size"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Maximum number of connections that should be concurrently
+ allocated for a connection pool.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="min-pool-size"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Minimum number of connections that should be concurrently
+ allocated for a connection pool.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="max-idle-time"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The number of seconds that a physical connection should
+ remain unused in the pool before the connection is
+ closed for a connection pool.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="max-statements"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The total number of statements that a connection pool
+ should keep open.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="descriptionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The description type is used by a description element to
+ provide text describing the parent element. The elements
+ that use this type should include any information that the
+ Deployment Component's Deployment File file producer wants
+ to provide to the consumer of the Deployment Component's
+ Deployment File (i.e., to the Deployer). Typically, the
+ tools used by such a Deployment File consumer will display
+ the description when processing the parent element that
+ contains the description.
+
+ The lang attribute defines the language that the
+ description is provided in. The default value is "en" (English).
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:xsdStringType">
+ <xsd:attribute ref="xml:lang"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="dewey-versionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type defines a dewey decimal that is used
+ to describe versions of documents.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:token">
+ <xsd:pattern value="\.?[0-9]+(\.[0-9]+)*"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="display-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The display-name type contains a short name that is intended
+ to be displayed by tools. It is used by display-name
+ elements. The display name need not be unique.
+
+ Example:
+
+ ...
+ <display-name xml:lang="en">
+ Employee Self Service
+ </display-name>
+
+ The value of the xml:lang attribute is "en" (English) by default.
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:string">
+ <xsd:attribute ref="xml:lang"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ejb-linkType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The ejb-linkType is used by ejb-link
+ elements in the ejb-ref or ejb-local-ref elements to specify
+ that an EJB reference is linked to enterprise bean.
+
+ The value of the ejb-link element must be the ejb-name of an
+ enterprise bean in the same ejb-jar file or in another ejb-jar
+ file in the same Java EE application unit.
+
+ Alternatively, the name in the ejb-link element may be
+ composed of a path name specifying the ejb-jar containing the
+ referenced enterprise bean with the ejb-name of the target
+ bean appended and separated from the path name by "#". The
+ path name is relative to the Deployment File containing
+ Deployment Component that is referencing the enterprise
+ bean. This allows multiple enterprise beans with the same
+ ejb-name to be uniquely identified.
+
+ Examples:
+
+ <ejb-link>EmployeeRecord</ejb-link>
+
+ <ejb-link>../products/product.jar#ProductEJB</ejb-link>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ejb-local-refType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-local-refType is used by ejb-local-ref elements for
+ the declaration of a reference to an enterprise bean's local
+ home or to the local business interface of a 3.0 bean.
+ The declaration consists of:
+
+ - an optional description
+ - the EJB reference name used in the code of the Deployment
+ Component that's referencing the enterprise bean.
+ - the optional expected type of the referenced enterprise bean
+ - the optional expected local interface of the referenced
+ enterprise bean or the local business interface of the
+ referenced enterprise bean.
+ - the optional expected local home interface of the referenced
+ enterprise bean. Not applicable if this ejb-local-ref refers
+ to the local business interface of a 3.0 bean.
+ - optional ejb-link information, used to specify the
+ referenced enterprise bean
+ - optional elements to define injection of the named enterprise
+ bean into a component field or property.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="ejb-ref-name"
+ type="javaee:ejb-ref-nameType"/>
+ <xsd:element name="ejb-ref-type"
+ type="javaee:ejb-ref-typeType"
+ minOccurs="0"/>
+ <xsd:element name="local-home"
+ type="javaee:local-homeType"
+ minOccurs="0"/>
+ <xsd:element name="local"
+ type="javaee:localType"
+ minOccurs="0"/>
+ <xsd:element name="ejb-link"
+ type="javaee:ejb-linkType"
+ minOccurs="0"/>
+ <xsd:group ref="javaee:resourceGroup"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ejb-ref-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The ejb-ref-name element contains the name of an EJB
+ reference. The EJB reference is an entry in the
+ Deployment Component's environment and is relative to the
+ java:comp/env context. The name must be unique within the
+ Deployment Component.
+
+ It is recommended that name is prefixed with "ejb/".
+
+ Example:
+
+ <ejb-ref-name>ejb/Payroll</ejb-ref-name>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:jndi-nameType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ejb-refType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-refType is used by ejb-ref elements for the
+ declaration of a reference to an enterprise bean's home or
+ to the remote business interface of a 3.0 bean.
+ The declaration consists of:
+
+ - an optional description
+ - the EJB reference name used in the code of
+ the Deployment Component that's referencing the enterprise
+ bean.
+ - the optional expected type of the referenced enterprise bean
+ - the optional remote interface of the referenced enterprise bean
+ or the remote business interface of the referenced enterprise
+ bean
+ - the optional expected home interface of the referenced
+ enterprise bean. Not applicable if this ejb-ref
+ refers to the remote business interface of a 3.0 bean.
+ - optional ejb-link information, used to specify the
+ referenced enterprise bean
+ - optional elements to define injection of the named enterprise
+ bean into a component field or property
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="ejb-ref-name"
+ type="javaee:ejb-ref-nameType"/>
+ <xsd:element name="ejb-ref-type"
+ type="javaee:ejb-ref-typeType"
+ minOccurs="0"/>
+ <xsd:element name="home"
+ type="javaee:homeType"
+ minOccurs="0"/>
+ <xsd:element name="remote"
+ type="javaee:remoteType"
+ minOccurs="0"/>
+ <xsd:element name="ejb-link"
+ type="javaee:ejb-linkType"
+ minOccurs="0"/>
+ <xsd:group ref="javaee:resourceGroup"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ejb-ref-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-ref-typeType contains the expected type of the
+ referenced enterprise bean.
+
+ The ejb-ref-type designates a value
+ that must be one of the following:
+
+ Entity
+ Session
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Entity"/>
+ <xsd:enumeration value="Session"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="emptyType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type is used to designate an empty
+ element when used.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="env-entryType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The env-entryType is used to declare an application's
+ environment entry. The declaration consists of an optional
+ description, the name of the environment entry, a type
+ (optional if the value is injected, otherwise required), and
+ an optional value.
+
+ It also includes optional elements to define injection of
+ the named resource into fields or JavaBeans properties.
+
+ If a value is not specified and injection is requested,
+ no injection will occur and no entry of the specified name
+ will be created. This allows an initial value to be
+ specified in the source code without being incorrectly
+ changed when no override has been specified.
+
+ If a value is not specified and no injection is requested,
+ a value must be supplied during deployment.
+
+ This type is used by env-entry elements.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="env-entry-name"
+ type="javaee:jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The env-entry-name element contains the name of a
+ Deployment Component's environment entry. The name
+ is a JNDI name relative to the java:comp/env
+ context. The name must be unique within a
+ Deployment Component. The uniqueness
+ constraints must be defined within the declared
+ context.
+
+ Example:
+
+ <env-entry-name>minAmount</env-entry-name>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="env-entry-type"
+ type="javaee:env-entry-type-valuesType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The env-entry-type element contains the Java language
+ type of the environment entry. If an injection target
+ is specified for the environment entry, the type may
+ be omitted, or must match the type of the injection
+ target. If no injection target is specified, the type
+ is required.
+
+ Example:
+
+ <env-entry-type>java.lang.Integer</env-entry-type>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="env-entry-value"
+ type="javaee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The env-entry-value designates the value of a
+ Deployment Component's environment entry. The value
+ must be a String that is valid for the
+ constructor of the specified type that takes a
+ single String parameter, or for java.lang.Character,
+ a single character.
+
+ Example:
+
+ <env-entry-value>100.00</env-entry-value>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:group ref="javaee:resourceGroup"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="env-entry-type-valuesType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ This type contains the fully-qualified Java type of the
+ environment entry value that is expected by the
+ application's code.
+
+ The following are the legal values of env-entry-type-valuesType:
+
+ java.lang.Boolean
+ java.lang.Byte
+ java.lang.Character
+ java.lang.String
+ java.lang.Short
+ java.lang.Integer
+ java.lang.Long
+ java.lang.Float
+ java.lang.Double
+ java.lang.Class
+ any enumeration type (i.e. a subclass of java.lang.Enum)
+
+ Examples:
+
+ <env-entry-type>java.lang.Boolean</env-entry-type>
+ <env-entry-type>java.lang.Class</env-entry-type>
+ <env-entry-type>com.example.Color</env-entry-type>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:fully-qualified-classType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The elements that use this type designate the name of a
+ Java class or interface. The name is in the form of a
+ "binary name", as defined in the JLS. This is the form
+ of name used in Class.forName(). Tools that need the
+ canonical name (the name used in source code) will need
+ to convert this binary name to the canonical name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="generic-booleanType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type defines four different values which can designate
+ boolean values. This includes values yes and no which are
+ not designated by xsd:boolean
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="true"/>
+ <xsd:enumeration value="false"/>
+ <xsd:enumeration value="yes"/>
+ <xsd:enumeration value="no"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="iconType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The icon type contains small-icon and large-icon elements
+ that specify the file names for small and large GIF, JPEG,
+ or PNG icon images used to represent the parent element in a
+ GUI tool.
+
+ The xml:lang attribute defines the language that the
+ icon file names are provided in. Its value is "en" (English)
+ by default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="small-icon"
+ type="javaee:pathType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The small-icon element contains the name of a file
+ containing a small (16 x 16) icon image. The file
+ name is a relative path within the Deployment
+ Component's Deployment File.
+
+ The image may be in the GIF, JPEG, or PNG format.
+ The icon can be used by tools.
+
+ Example:
+
+ <small-icon>employee-service-icon16x16.jpg</small-icon>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="large-icon"
+ type="javaee:pathType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The large-icon element contains the name of a file
+ containing a large
+ (32 x 32) icon image. The file name is a relative
+ path within the Deployment Component's Deployment
+ File.
+
+ The image may be in the GIF, JPEG, or PNG format.
+ The icon can be used by tools.
+
+ Example:
+
+ <large-icon>employee-service-icon32x32.jpg</large-icon>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute ref="xml:lang"/>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="injection-targetType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ An injection target specifies a class and a name within
+ that class into which a resource should be injected.
+
+ The injection target class specifies the fully qualified
+ class name that is the target of the injection. The
+ Java EE specifications describe which classes can be an
+ injection target.
+
+ The injection target name specifies the target within
+ the specified class. The target is first looked for as a
+ JavaBeans property name. If not found, the target is
+ looked for as a field name.
+
+ The specified resource will be injected into the target
+ during initialization of the class by either calling the
+ set method for the target property or by setting a value
+ into the named field.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="injection-target-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="injection-target-name"
+ type="javaee:java-identifierType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:simpleType name="isolation-levelType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following transaction isolation levels are allowed
+ (see documentation for the java.sql.Connection interface):
+ TRANSACTION_READ_UNCOMMITTED
+ TRANSACTION_READ_COMMITTED
+ TRANSACTION_REPEATABLE_READ
+ TRANSACTION_SERIALIZABLE
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="TRANSACTION_READ_UNCOMMITTED"/>
+ <xsd:enumeration value="TRANSACTION_READ_COMMITTED"/>
+ <xsd:enumeration value="TRANSACTION_REPEATABLE_READ"/>
+ <xsd:enumeration value="TRANSACTION_SERIALIZABLE"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The java-identifierType defines a Java identifier.
+ The users of this type should further verify that
+ the content does not contain Java reserved keywords.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:pattern value="($|_|\p{L})(\p{L}|\p{Nd}|_|$)*"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="java-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This is a generic type that designates a Java primitive
+ type or a fully qualified name of a Java interface/type,
+ or an array of such types.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:pattern value="[^\p{Z}]*"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="jdbc-urlType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The jdbc-urlType contains the url pattern of the mapping.
+ It must follow the rules specified in Section 9.3 of the
+ JDBC Specification where the format is:
+
+ jdbc:<subprotocol>:<subname>
+
+ Example:
+
+ <url>jdbc:mysql://localhost:3307/testdb</url>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:pattern value="jdbc:(.*):(.*)"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="jms-connection-factoryType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Configuration of a JMS Connection Factory.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Description of this JMS Connection Factory.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="name"
+ type="javaee:jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name element specifies the JNDI name of the
+ JMS connection factory being defined.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="class-name"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ javax.jms.ConnectionFactory, javax.jms.QueueConnectionFactory, or javax.jms.TopicConnectionFactory
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="resource-adapter"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Resource adapter name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="user"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ User name to use for connection authentication.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="password"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Password to use for connection authentication.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="client-id"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Client id to use for connection.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property"
+ type="javaee:propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ JMS Connection Factory property. This may be a vendor-specific
+ property or a less commonly used ConnectionFactory property.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="transactional"
+ type="javaee:xsdBooleanType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Set to false if connections should not participate in
+ transactions.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="max-pool-size"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Maximum number of connections that should be concurrently
+ allocated for a connection pool.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="min-pool-size"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Minimum number of connections that should be concurrently
+ allocated for a connection pool.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="jms-destinationType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Configuration of a JMS Destination.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Description of this JMS Destination.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="name"
+ type="javaee:jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name element specifies the JNDI name of the
+ JMS destination being defined.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="class-name"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ javax.jms.Queue or javax.jms.Topic
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="resource-adapter"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Resource adapter name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="destination-name"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Name of the queue or topic.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property"
+ type="javaee:propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ JMS Destination property. This may be a vendor-specific
+ property or a less commonly used Destination property.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The jndi-nameType type designates a JNDI name in the
+ Deployment Component's environment and is relative to the
+ java:comp/env context. A JNDI name must be unique within the
+ Deployment Component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="homeType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The homeType defines the fully-qualified name of
+ an enterprise bean's home interface.
+
+ Example:
+
+ <home>com.aardvark.payroll.PayrollHome</home>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:fully-qualified-classType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="lifecycle-callbackType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The lifecycle-callback type specifies a method on a
+ class to be called when a lifecycle event occurs.
+ Note that each class may have only one lifecycle callback
+ method for any given event and that the method may not
+ be overloaded.
+
+ If the lifefycle-callback-class element is missing then
+ the class defining the callback is assumed to be the
+ component class in scope at the place in the descriptor
+ in which the callback definition appears.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="lifecycle-callback-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"/>
+ <xsd:element name="lifecycle-callback-method"
+ type="javaee:java-identifierType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="listenerType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The listenerType indicates the deployment properties for a web
+ application listener bean.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="listener-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The listener-class element declares a class in the
+ application must be registered as a web
+ application listener bean. The value is the fully
+ qualified classname of the listener class.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="localType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The localType defines the fully-qualified name of an
+ enterprise bean's local interface.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:fully-qualified-classType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="local-homeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The local-homeType defines the fully-qualified
+ name of an enterprise bean's local home interface.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:fully-qualified-classType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="mail-sessionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Configuration of a Mail Session resource.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Description of this Mail Session resource.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="name"
+ type="javaee:jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name element specifies the JNDI name of the
+ Mail Session resource being defined.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="store-protocol"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Storage protocol.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="store-protocol-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Service provider store protocol implementation class
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="transport-protocol"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Transport protocol.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="transport-protocol-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Service provider transport protocol implementation class
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="host"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Mail server host name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="user"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Mail server user name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="password"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Password.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="from"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Email address to indicate the message sender.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property"
+ type="javaee:propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Mail server property. This may be a vendor-specific
+ property.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="param-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type is a general type that can be used to declare
+ parameter/value lists.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="param-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The param-name element contains the name of a
+ parameter.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="param-value"
+ type="javaee:xsdStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The param-value element contains the value of a
+ parameter.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The elements that use this type designate either a relative
+ path or an absolute path starting with a "/".
+
+ In elements that specify a pathname to a file within the
+ same Deployment File, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the Deployment File's namespace. Absolute filenames (i.e.,
+ those starting with "/") also specify names in the root of
+ the Deployment File's namespace. In general, relative names
+ are preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="persistence-context-refType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The persistence-context-ref element contains a declaration
+ of Deployment Component's reference to a persistence context
+ associated within a Deployment Component's
+ environment. It consists of:
+
+ - an optional description
+ - the persistence context reference name
+ - an optional persistence unit name. If not specified,
+ the default persistence unit is assumed.
+ - an optional specification as to whether
+ the persistence context type is Transaction or
+ Extended. If not specified, Transaction is assumed.
+ - an optional specification as to whether
+ the persistence context synchronization with the current
+ transaction is Synchronized or Unsynchronized. If not
+ specified, Synchronized is assumed.
+ - an optional list of persistence properties
+ - optional injection targets
+
+ Examples:
+
+ <persistence-context-ref>
+ <persistence-context-ref-name>myPersistenceContext
+ </persistence-context-ref-name>
+ </persistence-context-ref>
+
+ <persistence-context-ref>
+ <persistence-context-ref-name>myPersistenceContext
+ </persistence-context-ref-name>
+ <persistence-unit-name>PersistenceUnit1
+ </persistence-unit-name>
+ <persistence-context-type>Extended</persistence-context-type>
+ </persistence-context-ref>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="persistence-context-ref-name"
+ type="javaee:jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The persistence-context-ref-name element specifies
+ the name of a persistence context reference; its
+ value is the environment entry name used in
+ Deployment Component code. The name is a JNDI name
+ relative to the java:comp/env context.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="persistence-unit-name"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The Application Assembler(or BeanProvider) may use the
+ following syntax to avoid the need to rename persistence
+ units to have unique names within a Java EE application.
+
+ The Application Assembler specifies the pathname of the
+ root of the persistence.xml file for the referenced
+ persistence unit and appends the name of the persistence
+ unit separated from the pathname by #. The pathname is
+ relative to the referencing application component jar file.
+ In this manner, multiple persistence units with the same
+ persistence unit name may be uniquely identified when the
+ Application Assembler cannot change persistence unit names.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="persistence-context-type"
+ type="javaee:persistence-context-typeType"
+ minOccurs="0"/>
+ <xsd:element name="persistence-context-synchronization"
+ type="javaee:persistence-context-synchronizationType"
+ minOccurs="0"/>
+ <xsd:element name="persistence-property"
+ type="javaee:propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Used to specify properties for the container or persistence
+ provider. Vendor-specific properties may be included in
+ the set of properties. Properties that are not recognized
+ by a vendor must be ignored. Entries that make use of the
+ namespace javax.persistence and its subnamespaces must not
+ be used for vendor-specific properties. The namespace
+ javax.persistence is reserved for use by the specification.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:group ref="javaee:resourceBaseGroup"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="persistence-context-synchronizationType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The persistence-context-synchronizationType specifies
+ whether a container-managed persistence context is automatically
+ synchronized with the current transaction.
+
+ The value of the persistence-context-synchronization element
+ must be one of the following:
+ Synchronized
+ Unsynchronized
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Synchronized"/>
+ <xsd:enumeration value="Unsynchronized"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="persistence-context-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The persistence-context-typeType specifies the transactional
+ nature of a persistence context reference.
+
+ The value of the persistence-context-type element must be
+ one of the following:
+ Transaction
+ Extended
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Transaction"/>
+ <xsd:enumeration value="Extended"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="propertyType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Specifies a name/value pair.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="name"
+ type="javaee:xsdStringType">
+ </xsd:element>
+ <xsd:element name="value"
+ type="javaee:xsdStringType">
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="persistence-unit-refType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The persistence-unit-ref element contains a declaration
+ of Deployment Component's reference to a persistence unit
+ associated within a Deployment Component's
+ environment. It consists of:
+
+ - an optional description
+ - the persistence unit reference name
+ - an optional persistence unit name. If not specified,
+ the default persistence unit is assumed.
+ - optional injection targets
+
+ Examples:
+
+ <persistence-unit-ref>
+ <persistence-unit-ref-name>myPersistenceUnit
+ </persistence-unit-ref-name>
+ </persistence-unit-ref>
+
+ <persistence-unit-ref>
+ <persistence-unit-ref-name>myPersistenceUnit
+ </persistence-unit-ref-name>
+ <persistence-unit-name>PersistenceUnit1
+ </persistence-unit-name>
+ </persistence-unit-ref>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="persistence-unit-ref-name"
+ type="javaee:jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The persistence-unit-ref-name element specifies
+ the name of a persistence unit reference; its
+ value is the environment entry name used in
+ Deployment Component code. The name is a JNDI name
+ relative to the java:comp/env context.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="persistence-unit-name"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The Application Assembler(or BeanProvider) may use the
+ following syntax to avoid the need to rename persistence
+ units to have unique names within a Java EE application.
+
+ The Application Assembler specifies the pathname of the
+ root of the persistence.xml file for the referenced
+ persistence unit and appends the name of the persistence
+ unit separated from the pathname by #. The pathname is
+ relative to the referencing application component jar file.
+ In this manner, multiple persistence units with the same
+ persistence unit name may be uniquely identified when the
+ Application Assembler cannot change persistence unit names.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:group ref="javaee:resourceBaseGroup"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="remoteType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The remote element contains the fully-qualified name
+ of the enterprise bean's remote interface.
+
+ Example:
+
+ <remote>com.wombat.empl.EmployeeService</remote>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:fully-qualified-classType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="resource-env-refType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The resource-env-refType is used to define
+ resource-env-ref elements. It contains a declaration of a
+ Deployment Component's reference to an administered object
+ associated with a resource in the Deployment Component's
+ environment. It consists of an optional description, the
+ resource environment reference name, and an optional
+ indication of the resource environment reference type
+ expected by the Deployment Component code.
+
+ It also includes optional elements to define injection of
+ the named resource into fields or JavaBeans properties.
+
+ The resource environment type must be supplied unless an
+ injection target is specified, in which case the type
+ of the target is used. If both are specified, the type
+ must be assignment compatible with the type of the injection
+ target.
+
+ Example:
+
+ <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>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="resource-env-ref-name"
+ type="javaee:jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The resource-env-ref-name element specifies the name
+ of a resource environment reference; its value is
+ the environment entry name used in
+ the Deployment Component code. The name is a JNDI
+ name relative to the java:comp/env context and must
+ be unique within a Deployment Component.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="resource-env-ref-type"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The resource-env-ref-type element specifies the type
+ of a resource environment reference. It is the
+ fully qualified name of a Java language class or
+ interface.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:group ref="javaee:resourceGroup"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="resource-refType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The resource-refType contains a declaration of a
+ Deployment Component's reference to an external resource. It
+ consists of an optional description, the resource manager
+ connection factory reference name, an optional indication of
+ the resource manager connection factory type expected by the
+ Deployment Component code, an optional type of authentication
+ (Application or Container), and an optional specification of
+ the shareability of connections obtained from the resource
+ (Shareable or Unshareable).
+
+ It also includes optional elements to define injection of
+ the named resource into fields or JavaBeans properties.
+
+ The connection factory type must be supplied unless an
+ injection target is specified, in which case the type
+ of the target is used. If both are specified, the type
+ must be assignment compatible with the type of the injection
+ target.
+
+ Example:
+
+ <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>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="res-ref-name"
+ type="javaee:jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The res-ref-name element specifies the name of a
+ resource manager connection factory reference.
+ The name is a JNDI name relative to the
+ java:comp/env context.
+ The name must be unique within a Deployment File.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="res-type"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The res-type element specifies the type of the data
+ source. The type is specified by the fully qualified
+ Java language class or interface
+ expected to be implemented by the data source.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="res-auth"
+ type="javaee:res-authType"
+ minOccurs="0"/>
+ <xsd:element name="res-sharing-scope"
+ type="javaee:res-sharing-scopeType"
+ minOccurs="0"/>
+ <xsd:group ref="javaee:resourceGroup"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="res-authType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The res-authType specifies whether the Deployment Component
+ code signs on programmatically to the resource manager, or
+ whether the Container will sign on to the resource manager
+ on behalf of the Deployment Component. In the latter case,
+ the Container uses information that is supplied by the
+ Deployer.
+
+ The value must be one of the two following:
+
+ Application
+ Container
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Application"/>
+ <xsd:enumeration value="Container"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="res-sharing-scopeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The res-sharing-scope type specifies whether connections
+ obtained through the given resource manager connection
+ factory reference can be shared. The value, if specified,
+ must be one of the two following:
+
+ Shareable
+ Unshareable
+
+ The default value is Shareable.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Shareable"/>
+ <xsd:enumeration value="Unshareable"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="run-asType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The run-asType specifies the run-as identity to be
+ used for the execution of a component. It contains an
+ optional description, and the name of a security role.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="role-name"
+ type="javaee:role-nameType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="role-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The role-nameType designates the name of a security role.
+
+ The name must conform to the lexical rules for a token.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="security-roleType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The security-roleType contains the definition of a security
+ role. The definition consists of an optional description of
+ the security role, and the security role name.
+
+ Example:
+
+ <security-role>
+ <description>
+ This role includes all employees who are authorized
+ to access the employee service application.
+ </description>
+ <role-name>employee</role-name>
+ </security-role>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="role-name"
+ type="javaee:role-nameType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="security-role-refType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The security-role-refType contains the declaration of a
+ security role reference in a component's or a
+ Deployment Component's code. The declaration consists of an
+ optional description, the security role name used in the
+ code, and an optional link to a security role. If the
+ security role is not specified, the Deployer must choose an
+ appropriate security role.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="role-name"
+ type="javaee:role-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The value of the role-name element must be the String used
+ as the parameter to the
+ EJBContext.isCallerInRole(String roleName) method or the
+ HttpServletRequest.isUserInRole(String role) method.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="role-link"
+ type="javaee:role-nameType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The role-link element is a reference to a defined
+ security role. The role-link element must contain
+ the name of one of the security roles defined in the
+ security-role elements.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </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="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="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="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="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="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="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="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:complexType name="string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This is a special string datatype that is defined by Java EE as
+ a base type for defining collapsed strings. When schemas
+ require trailing/leading space elimination as well as
+ collapsing the existing whitespace, this base type may be
+ used.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:token">
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="true-falseType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This simple type designates a boolean with only two
+ permissible values
+
+ - true
+ - false
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:xsdBooleanType">
+ <xsd:pattern value="(true|false)"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="url-patternType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The url-patternType contains the url pattern of the mapping.
+ It must follow the rules specified in Section 11.2 of the
+ Servlet API Specification. This pattern is assumed to be in
+ URL-decoded form and must not contain CR(#xD) or LF(#xA).
+ If it contains those characters, the container must inform
+ the developer with a descriptive error message.
+ The container must preserve all characters including whitespaces.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="message-destinationType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The message-destinationType specifies a message
+ destination. The logical destination described by this
+ element is mapped to a physical destination by the Deployer.
+
+ The message destination element contains:
+
+ - an optional description
+ - an optional display-name
+ - an optional icon
+ - a message destination name which must be unique
+ among message destination names within the same
+ Deployment File.
+ - an optional mapped name
+ - an optional lookup name
+
+ Example:
+
+ <message-destination>
+ <message-destination-name>CorporateStocks
+ </message-destination-name>
+ </message-destination>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="message-destination-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The message-destination-name element specifies a
+ name for a message destination. This name must be
+ unique among the names of message destinations
+ within the Deployment File.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="mapped-name"
+ type="javaee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A product specific name that this message destination
+ should be mapped to. Each message-destination-ref
+ element that references this message destination will
+ define a name in the namespace of the referencing
+ component or in one of the other predefined namespaces.
+ Many application servers provide a way to map these
+ local names to names of resources known to the
+ application server. This mapped name is often a global
+ JNDI name, but may be a name of any form. Each of the
+ local names should be mapped to this same global name.
+
+ Application servers are not required to support any
+ particular form or type of mapped name, nor the ability
+ to use mapped names. The mapped name is
+ product-dependent and often installation-dependent. No
+ use of a mapped name is portable.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="lookup-name"
+ type="javaee:xsdStringType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The JNDI name to be looked up to resolve the message destination.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="message-destination-refType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The message-destination-ref element contains a declaration
+ of Deployment Component's reference to a message destination
+ associated with a resource in Deployment Component's
+ environment. It consists of:
+
+ - an optional description
+ - the message destination reference name
+ - an optional message destination type
+ - an optional specification as to whether
+ the destination is used for
+ consuming or producing messages, or both.
+ if not specified, "both" is assumed.
+ - an optional link to the message destination
+ - optional injection targets
+
+ The message destination type must be supplied unless an
+ injection target is specified, in which case the type
+ of the target is used. If both are specified, the type
+ must be assignment compatible with the type of the injection
+ target.
+
+ Examples:
+
+ <message-destination-ref>
+ <message-destination-ref-name>jms/StockQueue
+ </message-destination-ref-name>
+ <message-destination-type>javax.jms.Queue
+ </message-destination-type>
+ <message-destination-usage>Consumes
+ </message-destination-usage>
+ <message-destination-link>CorporateStocks
+ </message-destination-link>
+ </message-destination-ref>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="message-destination-ref-name"
+ type="javaee:jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The message-destination-ref-name element specifies
+ the name of a message destination reference; its
+ value is the environment entry name used in
+ Deployment Component code.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="message-destination-type"
+ type="javaee:message-destination-typeType"
+ minOccurs="0"/>
+ <xsd:element name="message-destination-usage"
+ type="javaee:message-destination-usageType"
+ minOccurs="0"/>
+ <xsd:element name="message-destination-link"
+ type="javaee:message-destination-linkType"
+ minOccurs="0"/>
+ <xsd:group ref="javaee:resourceGroup"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="message-destination-usageType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The message-destination-usageType specifies the use of the
+ message destination indicated by the reference. The value
+ indicates whether messages are consumed from the message
+ destination, produced for the destination, or both. The
+ Assembler makes use of this information in linking producers
+ of a destination with its consumers.
+
+ The value of the message-destination-usage element must be
+ one of the following:
+ Consumes
+ Produces
+ ConsumesProduces
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="Consumes"/>
+ <xsd:enumeration value="Produces"/>
+ <xsd:enumeration value="ConsumesProduces"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="message-destination-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The message-destination-typeType specifies the type of
+ the destination. The type is specified by the Java interface
+ expected to be implemented by the destination.
+
+ Example:
+
+ <message-destination-type>javax.jms.Queue
+ </message-destination-type>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:fully-qualified-classType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="message-destination-linkType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The message-destination-linkType is used to link a message
+ destination reference or message-driven bean to a message
+ destination.
+
+ The Assembler sets the value to reflect the flow of messages
+ between producers and consumers in the application.
+
+ The value must be the message-destination-name of a message
+ destination in the same Deployment File or in another
+ Deployment File in the same Java EE application unit.
+
+ Alternatively, the value may be composed of a path name
+ specifying a Deployment File containing the referenced
+ message destination with the message-destination-name of the
+ destination appended and separated from the path name by
+ "#". The path name is relative to the Deployment File
+ containing Deployment Component that is referencing the
+ message destination. This allows multiple message
+ destinations with the same name to be uniquely identified.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="transaction-supportType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The transaction-supportType specifies the level of
+ transaction support provided by the resource adapter. It is
+ used by transaction-support elements.
+
+ The value must be one of the following:
+
+ NoTransaction
+ LocalTransaction
+ XATransaction
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="NoTransaction"/>
+ <xsd:enumeration value="LocalTransaction"/>
+ <xsd:enumeration value="XATransaction"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+</xsd:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_web_services_1_4.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_web_services_1_4.xsd
new file mode 100644
index 0000000000..577b2dbb64
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_web_services_1_4.xsd
@@ -0,0 +1,572 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="1.4">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2009-2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ (C) Copyright International Business Machines Corporation 2002
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The webservices element is the root element for the web services
+ deployment descriptor. It specifies the set of web service
+ descriptions that are to be deployed into the Java EE Application
+ Server and the dependencies they have on container resources and
+ services. The deployment descriptor must be named
+ "META-INF/webservices.xml" in the web services' jar file.
+
+ Used in: webservices.xml
+
+ All webservices deployment descriptors must indicate the
+ webservices schema by using the Java EE namespace:
+
+ http://xmlns.jcp.org/xml/ns/javaee
+
+ and by indicating the version of the schema by using the version
+ element as shown below:
+
+ <webservices xmlns="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
+ http://xmlns.jcp.org/xml/ns/javaee/javaee_web_services_1_4.xsd"
+ version="1.4">
+ ...
+ </webservices>
+
+ The instance documents may indicate the published version of the
+ schema using the xsi:schemaLocation attribute for the Java EE
+ namespace with the following location:
+
+ http://xmlns.jcp.org/xml/ns/javaee/javaee_web_services_1_4.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all Java EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="javaee_7.xsd"/>
+
+
+<!-- **************************************************** -->
+
+ <xsd:element name="webservices"
+ type="javaee:webservicesType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The webservices element is the root element for the web services
+ deployment descriptor. It specifies the set of web service
+ descriptions that are to be deployed into the Java EE Application Server
+ and the dependencies they have on container resources and services.
+
+ Used in: webservices.xml
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:key name="webservice-description-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The webservice-description-name identifies the collection of
+ port-components associated with a WSDL file and JAX-RPC mapping. The
+ name must be unique within the deployment descriptor.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:webservice-description"/>
+ <xsd:field xpath="javaee:webservice-description-name"/>
+ </xsd:key>
+ </xsd:element>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="port-componentType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The port-component element associates a WSDL port with a web service
+ interface and implementation. It defines the name of the port as a
+ component, optional description, optional display name, optional iconic
+ representations, WSDL port QName, Service Endpoint Interface, Service
+ Implementation Bean.
+
+ This element also associates a WSDL service with a JAX-WS Provider
+ implementation.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <xsd:element name="display-name"
+ type="javaee:display-nameType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <xsd:element name="icon"
+ type="javaee:iconType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <xsd:element name="port-component-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The port-component-name element specifies a port component's
+ name. This name is assigned by the module producer to name
+ the service implementation bean in the module's deployment
+ descriptor. The name must be unique among the port component
+ names defined in the same module.
+
+ Used in: port-component
+
+ Example:
+ <port-component-name>EmployeeService
+ </port-component-name>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="wsdl-service"
+ type="javaee:xsdQNameType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the name space and local name part of the WSDL
+ service QName. This is required to be specified for
+ port components that are JAX-WS Provider implementations.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="wsdl-port"
+ type="javaee:xsdQNameType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the name space and local name part of the WSDL
+ port QName. This is not required to be specified for port
+ components that are JAX-WS Provider implementations
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="enable-mtom"
+ type="javaee:true-falseType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Used to enable or disable SOAP MTOM/XOP mechanism for an
+ endpoint implementation.
+
+ Not to be specified for JAX-RPC runtime
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="mtom-threshold"
+ type="javaee:xsdNonNegativeIntegerType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ When MTOM is enabled, binary data above this size in bytes
+ will be XOP encoded or sent as attachment. Default value is 0.
+
+ Not to be specified for JAX-RPC runtime
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="addressing"
+ type="javaee:addressingType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This specifies the WS-Addressing requirements for a JAX-WS
+ web service. It corresponds to javax.xml.ws.soap.Addressing
+ annotation or its feature javax.xml.ws.soap.AddressingFeature.
+
+ See the addressingType for more information.
+
+ Not to be specified for JAX-RPC runtime
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="respect-binding"
+ type="javaee:respect-bindingType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Corresponds to the javax.xml.ws.RespectBinding annotation
+ or its corresponding javax.xml.ws.RespectBindingFeature web
+ service feature. This is used to control whether a JAX-WS
+ implementation must respect/honor the contents of the
+ wsdl:binding in the WSDL that is associated with the service.
+
+ Not to be specified for JAX-RPC runtime
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="protocol-binding"
+ type="javaee:protocol-bindingType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Used to specify the protocol binding used by the port-component.
+ If this element is not specified, then the default binding is
+ used (SOAP 1.1 over HTTP)
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="service-endpoint-interface"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The service-endpoint-interface element contains the
+ fully-qualified name of the port component's Service Endpoint
+ Interface.
+
+ Used in: port-component
+
+ Example:
+ <remote>com.wombat.empl.EmployeeService</remote>
+
+ This may not be specified in case there is no Service
+ Enpoint Interface as is the case with directly using an
+ implementation class with the @WebService annotation.
+
+ When the port component is a Provider implementation
+ this is not specified.
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="service-impl-bean"
+ type="javaee:service-impl-beanType"/>
+ <xsd:choice>
+ <xsd:element name="handler"
+ type="javaee:handlerType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ To be used with JAX-RPC based runtime only.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="handler-chains"
+ type="javaee:handler-chainsType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ To be used with JAX-WS based runtime only.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="service-impl-beanType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The service-impl-bean element defines the web service implementation.
+ A service implementation can be an EJB bean class or JAX-RPC web
+ component. Existing EJB implementations are exposed as a web service
+ using an ejb-link.
+
+ Used in: port-component
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:choice>
+ <xsd:element name="ejb-link"
+ type="javaee:ejb-linkType"/>
+ <xsd:element name="servlet-link"
+ type="javaee:servlet-linkType"/>
+ </xsd:choice>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="servlet-linkType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The servlet-link element is used in the service-impl-bean element
+ to specify that a Service Implementation Bean is defined as a
+ JAX-RPC Service Endpoint.
+
+ The value of the servlet-link element must be the servlet-name of
+ a JAX-RPC Service Endpoint in the same WAR file.
+
+ Used in: service-impl-bean
+
+ Example:
+ <servlet-link>StockQuoteService</servlet-link>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="webservice-descriptionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The webservice-description element defines a WSDL document file
+ and the set of Port components associated with the WSDL ports
+ defined in the WSDL document. There may be multiple
+ webservice-descriptions defined within a module.
+
+ All WSDL file ports must have a corresponding port-component element
+ defined.
+
+ Used in: webservices
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <xsd:element name="display-name"
+ type="javaee:display-nameType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <xsd:element name="icon"
+ type="javaee:iconType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <xsd:element name="webservice-description-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The webservice-description-name identifies the collection of
+ port-components associated with a WSDL file and JAX-RPC
+ mapping. The name must be unique within the deployment descriptor.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="wsdl-file"
+ type="javaee:pathType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The wsdl-file element contains the name of a WSDL file in the
+ module. The file name is a relative path within the module.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="jaxrpc-mapping-file"
+ type="javaee:pathType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The jaxrpc-mapping-file element contains the name of a file that
+ describes the JAX-RPC mapping between the Java interaces used by
+ the application and the WSDL description in the wsdl-file. The
+ file name is a relative path within the module.
+
+ This is not required when JAX-WS based runtime is used.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="port-component"
+ type="javaee:port-componentType"
+ minOccurs="1"
+ maxOccurs="unbounded">
+ <xsd:key name="port-component_handler-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the name of the handler. The name must be unique
+ within the module.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:handler"/>
+ <xsd:field xpath="javaee:handler-name"/>
+ </xsd:key>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="webservicesType">
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="webservice-description"
+ type="javaee:webservice-descriptionType"
+ minOccurs="1"
+ maxOccurs="unbounded">
+ <xsd:key name="port-component-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ The port-component-name element specifies a port
+ component's name. This name is assigned by the module
+ producer to name the service implementation bean in the
+ module's deployment descriptor. The name must be unique
+ among the port component names defined in the same module.
+
+ Used in: port-component
+
+ Example:
+ <port-component-name>EmployeeService
+ </port-component-name>
+
+
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:port-component"/>
+ <xsd:field xpath="javaee:port-component-name"/>
+ </xsd:key>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="version"
+ type="javaee:dewey-versionType"
+ fixed="1.4"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The required value for the version is 1.4.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+</xsd:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_web_services_client_1_4.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_web_services_client_1_4.xsd
new file mode 100644
index 0000000000..d474a8d2fb
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/javaee_web_services_client_1_4.xsd
@@ -0,0 +1,737 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="1.4">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2009-2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ (C) Copyright International Business Machines Corporation 2002
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="service-refType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The service-ref element declares a reference to a Web
+ service. It contains optional description, display name and
+ icons, a declaration of the required Service interface,
+ an optional WSDL document location, an optional set
+ of JAX-RPC mappings, an optional QName for the service element,
+ an optional set of Service Endpoint Interfaces to be resolved
+ by the container to a WSDL port, and an optional set of handlers.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="service-ref-name"
+ type="javaee:jndi-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The service-ref-name element declares logical name that the
+ components in the module use to look up the Web service. It
+ is recommended that all service reference names start with
+ "service/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="service-interface"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The service-interface element declares the fully qualified class
+ name of the JAX-RPC Service interface the client depends on.
+ In most cases the value will be javax.xml.rpc.Service. A JAX-RPC
+ generated Service Interface class may also be specified.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="service-ref-type"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The service-ref-type element declares the type of the service-ref
+ element that is injected or returned when a JNDI lookup is done.
+ This must be either a fully qualified name of Service class or
+ the fully qualified name of service endpoint interface class.
+ This is only used with JAX-WS runtime where the corresponding
+ @WebServiceRef annotation can be used to denote both a Service
+ or a Port.
+
+ If this is not specified, then the type of service-ref element
+ that is injected or returned when a JNDI lookup is done is
+ always a Service interface/class.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="wsdl-file"
+ type="javaee:xsdAnyURIType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The wsdl-file element contains the URI location of a WSDL
+ file. The location is relative to the root of the module.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="jaxrpc-mapping-file"
+ type="javaee:pathType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The jaxrpc-mapping-file element contains the name of a file that
+ describes the JAX-RPC mapping between the Java interaces used by
+ the application and the WSDL description in the wsdl-file. The
+ file name is a relative path within the module file.
+
+ This is not required when JAX-WS based runtime is used.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="service-qname"
+ type="javaee:xsdQNameType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The service-qname element declares the specific WSDL service
+ element that is being refered to. It is not specified if no
+ wsdl-file is declared.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="port-component-ref"
+ type="javaee:port-component-refType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The port-component-ref element declares a client dependency
+ on the container for resolving a Service Endpoint Interface
+ to a WSDL port. It optionally associates the Service Endpoint
+ Interface with a particular port-component. This is only used
+ by the container for a Service.getPort(Class) method call.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:choice>
+ <xsd:element name="handler"
+ type="javaee:handlerType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Declares the handler for a port-component. Handlers can
+ access the init-param name/value pairs using the
+ HandlerInfo interface. If port-name is not specified, the
+ handler is assumed to be associated with all ports of the
+ service.
+
+ To be used with JAX-RPC based runtime only.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="handler-chains"
+ type="javaee:handler-chainsType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ To be used with JAX-WS based runtime only.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ <xsd:group ref="javaee:resourceGroup"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="port-component-refType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The port-component-ref element declares a client dependency
+ on the container for resolving a Service Endpoint Interface
+ to a WSDL port. It optionally associates the Service Endpoint
+ Interface with a particular port-component. This is only used
+ by the container for a Service.getPort(Class) method call.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="service-endpoint-interface"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The service-endpoint-interface element defines a fully qualified
+ Java class that represents the Service Endpoint Interface of a
+ WSDL port.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="enable-mtom"
+ type="javaee:true-falseType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Used to enable or disable SOAP MTOM/XOP mechanism on the client
+ side for a port-component.
+
+ Not to be specified for JAX-RPC runtime
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="mtom-threshold"
+ type="javaee:xsdNonNegativeIntegerType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ When MTOM is enabled, binary data above this size in bytes
+ should be XOP encoded or sent as attachment. Default value is 0.
+
+ Not to be specified for JAX-RPC runtime
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="addressing"
+ type="javaee:addressingType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This specifies the WS-Addressing requirements for a JAX-WS
+ web service. It corresponds to javax.xml.ws.soap.Addressing
+ annotation or its feature javax.xml.ws.soap.AddressingFeature.
+
+ See the addressingType for more information.
+
+ Not to be specified for JAX-RPC runtime
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="respect-binding"
+ type="javaee:respect-bindingType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Corresponds to the javax.xml.ws.RespectBinding annotation
+ or its corresponding javax.xml.ws.RespectBindingFeature web
+ service feature. This is used to control whether a JAX-WS
+ implementation must respect/honor the contents of the
+ wsdl:binding in the WSDL that is associated with the service.
+
+ Not to be specified for JAX-RPC runtime
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="port-component-link"
+ type="javaee:string"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The port-component-link element links a port-component-ref
+ to a specific port-component required to be made available
+ by a service reference.
+
+ The value of a port-component-link must be the
+ port-component-name of a port-component in the same module
+ or another module in the same application unit. The syntax
+ for specification follows the syntax defined for ejb-link
+ in the EJB 2.0 specification.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="handler-chainsType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The handler-chains element defines the handlerchains associated with this
+ service or service endpoint.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="handler-chain"
+ type="javaee:handler-chainType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="handler-chainType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The handler-chain element defines the handlerchain.
+ Handlerchain can be defined such that the handlers in the
+ handlerchain operate,all ports of a service, on a specific
+ port or on a list of protocol-bindings. The choice of elements
+ service-name-pattern, port-name-pattern and protocol-bindings
+ are used to specify whether the handlers in handler-chain are
+ for a service, port or protocol binding. If none of these
+ choices are specified with the handler-chain element then the
+ handlers specified in the handler-chain will be applied on
+ everything.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:choice minOccurs="0"
+ maxOccurs="1">
+ <xsd:element name="service-name-pattern"
+ type="javaee:qname-pattern"/>
+ <xsd:element name="port-name-pattern"
+ type="javaee:qname-pattern"/>
+ <xsd:element name="protocol-bindings"
+ type="javaee:protocol-bindingListType"/>
+ </xsd:choice>
+ <xsd:element name="handler"
+ type="javaee:handlerType"
+ minOccurs="1"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:simpleType name="protocol-bindingListType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the type used for specifying a list of
+ protocol-bindingType(s). For e.g.
+
+ ##SOAP11_HTTP ##SOAP12_HTTP ##XML_HTTP
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:list itemType="javaee:protocol-bindingType"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="protocol-bindingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the type used for specifying the URI for the
+ protocol binding used by the port-component. For
+ portability one could use one of the following tokens that
+ alias the standard binding types:
+
+ ##SOAP11_HTTP
+ ##SOAP11_HTTP_MTOM
+ ##SOAP12_HTTP
+ ##SOAP12_HTTP_MTOM
+ ##XML_HTTP
+
+ Other specifications could define tokens that start with ##
+ to alias new standard binding URIs that are introduced.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:union memberTypes="xsd:anyURI javaee:protocol-URIAliasType"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="protocol-URIAliasType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the type that is used for specifying tokens that
+ start with ## which are used to alias existing standard
+ protocol bindings and support aliases for new standard
+ binding URIs that are introduced in future specifications.
+
+ The following tokens alias the standard protocol binding
+ URIs:
+
+ ##SOAP11_HTTP = "http://schemas.xmlsoap.org/wsdl/soap/http"
+ ##SOAP11_HTTP_MTOM =
+ "http://schemas.xmlsoap.org/wsdl/soap/http?mtom=true"
+ ##SOAP12_HTTP = "http://www.w3.org/2003/05/soap/bindings/HTTP/"
+ ##SOAP12_HTTP_MTOM =
+ "http://www.w3.org/2003/05/soap/bindings/HTTP/?mtom=true"
+ ##XML_HTTP = "http://www.w3.org/2004/08/wsdl/http"
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:token">
+ <xsd:pattern value="##.+"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="qname-pattern">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This is used to specify the QName pattern in the
+ attribute service-name-pattern and port-name-pattern in
+ the handler-chain element
+
+ For example, the various forms acceptable here for
+ service-name-pattern attribute in handler-chain element
+ are :
+
+ Exact Name: service-name-pattern="ns1:EchoService"
+
+ In this case, handlers specified in this
+ handler-chain element will apply to all ports with
+ this exact service name. The namespace prefix must
+ have been declared in a namespace declaration
+ attribute in either the start-tag of the element
+ where the prefix is used or in an an ancestor
+ element (i.e. an element in whose content the
+ prefixed markup occurs)
+
+
+ Pattern : service-name-pattern="ns1:EchoService*"
+
+ In this case, handlers specified in this
+ handler-chain element will apply to all ports whose
+ Service names are like EchoService1, EchoServiceFoo
+ etc. The namespace prefix must have been declared in
+ a namespace declaration attribute in either the
+ start-tag of the element where the prefix is used or
+ in an an ancestor element (i.e. an element in whose
+ content the prefixed markup occurs)
+
+ Wild Card : service-name-pattern="*"
+
+ In this case, handlers specified in this handler-chain
+ element will apply to ports of all service names.
+
+ The same can be applied to port-name attribute in
+ handler-chain element.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:token">
+ <xsd:pattern value="\*|([\i-[:]][\c-[:]]*:)?[\i-[:]][\c-[:]]*\*?"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="addressingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This specifies the WS-Addressing requirements for a JAX-WS web service.
+ It corresponds to javax.xml.ws.soap.Addressing annotation or its
+ feature javax.xml.ws.soap.AddressingFeature.
+
+ If the "enabled" element is "true", WS-Addressing is enabled.
+ It means that the endpoint supports WS-Addressing but does not require
+ its use. The default value for "enabled" is "true".
+
+ If the WS-Addressing is enabled and the "required" element is "true",
+ it means that the endpoint requires WS-Addressing. The default value
+ for "required" is "false".
+
+ If WS-Addressing is enabled, the "responses" element determines
+ if an endpoint requires the use of only anonymous responses,
+ or only non-anonymous responses, or all. The value of the "responses"
+ element must be one of the following:
+
+ ANONYMOUS
+ NON_ANONYMOUS
+ ALL
+
+ The default value for the "responses" is ALL.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="enabled"
+ type="javaee:true-falseType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <xsd:element name="required"
+ type="javaee:true-falseType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <xsd:element name="responses"
+ type="javaee:addressing-responsesType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="addressing-responsesType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ If WS-Addressing is enabled, this type determines if an endpoint
+ requires the use of only anonymous responses, or only non-anonymous
+ responses, or all.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="ANONYMOUS"/>
+ <xsd:enumeration value="NON_ANONYMOUS"/>
+ <xsd:enumeration value="ALL"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="respect-bindingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Corresponds to the javax.xml.ws.RespectBinding annotation
+ or its corresponding javax.xml.ws.RespectBindingFeature web
+ service feature. This is used to control whether a JAX-WS
+ implementation must respect/honor the contents of the
+ wsdl:binding in the WSDL that is associated with the service.
+
+ If the "enabled" element is "true", wsdl:binding in the
+ associated WSDL, if any, must be respected/honored.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="enabled"
+ type="javaee:true-falseType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="handlerType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Declares the handler for a port-component, service-ref. Handlers can
+ access the init-param name/value pairs using the HandlerInfo interface.
+
+ Used in: port-component, service-ref
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="handler-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the name of the handler. The name must be unique within the
+ module.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="handler-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines a fully qualified class name for the handler implementation.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="init-param"
+ type="javaee:param-valueType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Not to be specified for JAX-WS runtime
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="soap-header"
+ type="javaee:xsdQNameType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the QName of a SOAP header that will be processed by the
+ handler.
+
+ Not to be specified for JAX-WS runtime
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="soap-role"
+ type="javaee:string"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The soap-role element contains a SOAP actor definition that the
+ Handler will play as a role.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="port-name"
+ type="javaee:string"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The port-name element defines the WSDL port-name that a
+ handler should be associated with. If port-name is not
+ specified, the handler is assumed to be associated with
+ all ports of the service.
+
+ Not to be specified for JAX-WS runtime
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:group name="service-refGroup">
+ <xsd:sequence>
+ <xsd:element name="service-ref"
+ type="javaee:service-refType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:key name="service-ref_handler-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the name of the handler. The name must be unique
+ within the module.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:handler"/>
+ <xsd:field xpath="javaee:handler-name"/>
+ </xsd:key>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:group>
+
+</xsd:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/jsp_2_3.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/jsp_2_3.xsd
new file mode 100644
index 0000000000..564d309dc7
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/jsp_2_3.xsd
@@ -0,0 +1,389 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="2.3">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2009-2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This is the XML Schema for the JSP 2.3 deployment descriptor
+ types. The JSP 2.3 schema contains all the special
+ structures and datatypes that are necessary to use JSP files
+ from a web application.
+
+ The contents of this schema is used by the web-common_3_1.xsd
+ file to define JSP specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all Java EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="javaee_7.xsd"/>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="jsp-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The jsp-configType is used to provide global configuration
+ information for the JSP files in a web application. It has
+ two subelements, taglib and jsp-property-group.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="taglib"
+ type="javaee:taglibType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="jsp-property-group"
+ type="javaee:jsp-property-groupType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="jsp-fileType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The jsp-file element contains the full path to a JSP file
+ within the web application beginning with a `/'.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:pathType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="jsp-property-groupType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The jsp-property-groupType is used to group a number of
+ files so they can be given global property information.
+ All files so described are deemed to be JSP files. The
+ following additional properties can be described:
+
+ - Control whether EL is ignored.
+ - Control whether scripting elements are invalid.
+ - Indicate pageEncoding information.
+ - Indicate that a resource is a JSP document (XML).
+ - Prelude and Coda automatic includes.
+ - Control whether the character sequence #{ is allowed
+ when used as a String literal.
+ - Control whether template text containing only
+ whitespaces must be removed from the response output.
+ - Indicate the default contentType information.
+ - Indicate the default buffering model for JspWriter
+ - Control whether error should be raised for the use of
+ undeclared namespaces in a JSP page.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="url-pattern"
+ type="javaee:url-patternType"
+ maxOccurs="unbounded"/>
+ <xsd:element name="el-ignored"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Can be used to easily set the isELIgnored
+ property of a group of JSP pages. By default, the
+ EL evaluation is enabled for Web Applications using
+ a Servlet 2.4 or greater web.xml, and disabled
+ otherwise.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="page-encoding"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The valid values of page-encoding are those of the
+ pageEncoding page directive. It is a
+ translation-time error to name different encodings
+ in the pageEncoding attribute of the page directive
+ of a JSP page and in a JSP configuration element
+ matching the page. It is also a translation-time
+ error to name different encodings in the prolog
+ or text declaration of a document in XML syntax and
+ in a JSP configuration element matching the document.
+ It is legal to name the same encoding through
+ mulitple mechanisms.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="scripting-invalid"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Can be used to easily disable scripting in a
+ group of JSP pages. By default, scripting is
+ enabled.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="is-xml"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ If true, denotes that the group of resources
+ that match the URL pattern are JSP documents,
+ and thus must be interpreted as XML documents.
+ If false, the resources are assumed to not
+ be JSP documents, unless there is another
+ property group that indicates otherwise.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="include-prelude"
+ type="javaee:pathType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The include-prelude element is a context-relative
+ path that must correspond to an element in the
+ Web Application. When the element is present,
+ the given path will be automatically included (as
+ in an include directive) at the beginning of each
+ JSP page in this jsp-property-group.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="include-coda"
+ type="javaee:pathType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The include-coda element is a context-relative
+ path that must correspond to an element in the
+ Web Application. When the element is present,
+ the given path will be automatically included (as
+ in an include directive) at the end of each
+ JSP page in this jsp-property-group.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="deferred-syntax-allowed-as-literal"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The character sequence #{ is reserved for EL expressions.
+ Consequently, a translation error occurs if the #{
+ character sequence is used as a String literal, unless
+ this element is enabled (true). Disabled (false) by
+ default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="trim-directive-whitespaces"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Indicates that template text containing only whitespaces
+ must be removed from the response output. It has no
+ effect on JSP documents (XML syntax). Disabled (false)
+ by default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="default-content-type"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The valid values of default-content-type are those of the
+ contentType page directive. It specifies the default
+ response contentType if the page directive does not include
+ a contentType attribute.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="buffer"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The valid values of buffer are those of the
+ buffer page directive. It specifies if buffering should be
+ used for the output to response, and if so, the size of the
+ buffer to use.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="error-on-undeclared-namespace"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The default behavior when a tag with unknown namespace is used
+ in a JSP page (regular syntax) is to silently ignore it. If
+ set to true, then an error must be raised during the translation
+ time when an undeclared tag is used in a JSP page. Disabled
+ (false) by default.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="taglibType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The taglibType defines the syntax for declaring in
+ the deployment descriptor that a tag library is
+ available to the application. This can be done
+ to override implicit map entries from TLD files and
+ from the container.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="taglib-uri"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A taglib-uri element describes a URI identifying a
+ tag library used in the web application. The body
+ of the taglib-uri element may be either an
+ absolute URI specification, or a relative URI.
+ There should be no entries in web.xml with the
+ same taglib-uri value.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="taglib-location"
+ type="javaee:pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ the taglib-location element contains the location
+ (as a resource relative to the root of the web
+ application) where to find the Tag Library
+ Description file for the tag library.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+</xsd:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-app_3_1.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-app_3_1.xsd
new file mode 100644
index 0000000000..29645735a0
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-app_3_1.xsd
@@ -0,0 +1,272 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="3.1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2009-2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ This is the XML Schema for the Servlet 3.1 deployment descriptor.
+ The deployment descriptor must be named "WEB-INF/web.xml" in the
+ web application's war file. All Servlet deployment descriptors
+ must indicate the web application schema by using the Java EE
+ namespace:
+
+ http://xmlns.jcp.org/xml/ns/javaee
+
+ and by indicating the version of the schema by
+ using the version element as shown below:
+
+ <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="..."
+ version="3.1">
+ ...
+ </web-app>
+
+ The instance documents may indicate the published version of
+ the schema using the xsi:schemaLocation attribute for Java EE
+ namespace with the following location:
+
+ http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all Java EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="web-common_3_1.xsd"/>
+
+
+<!-- **************************************************** -->
+
+ <xsd:element name="web-app"
+ type="javaee:web-appType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The web-app element is the root of the deployment
+ descriptor for a web application. Note that the sub-elements
+ of this element can be in the arbitrary order. Because of
+ that, the multiplicity of the elements of distributable,
+ session-config, welcome-file-list, jsp-config, login-config,
+ and locale-encoding-mapping-list was changed from "?" to "*"
+ in this schema. However, the deployment descriptor instance
+ file must not contain multiple elements of session-config,
+ jsp-config, and login-config. When there are multiple elements of
+ welcome-file-list or locale-encoding-mapping-list, the container
+ must concatenate the element contents. The multiple occurence
+ of the element distributable is redundant and the container
+ treats that case exactly in the same way when there is only
+ one distributable.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:unique name="web-common-servlet-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet element contains the name of a servlet.
+ The name must be unique within the web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:servlet"/>
+ <xsd:field xpath="javaee:servlet-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-filter-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The filter element contains the name of a filter.
+ The name must be unique within the web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:filter"/>
+ <xsd:field xpath="javaee:filter-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-ejb-local-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-local-ref-name element contains the name of an EJB
+ reference. The EJB reference is an entry in the web
+ application's environment and is relative to the
+ java:comp/env context. The name must be unique within
+ the web application.
+
+ It is recommended that name is prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-local-ref"/>
+ <xsd:field xpath="javaee:ejb-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-ejb-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-ref-name element contains the name of an EJB
+ reference. The EJB reference is an entry in the web
+ application's environment and is relative to the
+ java:comp/env context. The name must be unique within
+ the web application.
+
+ It is recommended that name is prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-ref"/>
+ <xsd:field xpath="javaee:ejb-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-resource-env-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The resource-env-ref-name element specifies the name of
+ a resource environment reference; its value is the
+ environment entry name used in the web application code.
+ The name is a JNDI name relative to the java:comp/env
+ context and must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-env-ref"/>
+ <xsd:field xpath="javaee:resource-env-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-message-destination-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The message-destination-ref-name element specifies the name of
+ a message destination reference; its value is the
+ environment entry name used in the web application code.
+ The name is a JNDI name relative to the java:comp/env
+ context and must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:message-destination-ref"/>
+ <xsd:field xpath="javaee:message-destination-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-res-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The res-ref-name element specifies the name of a
+ resource manager connection factory reference. The name
+ is a JNDI name relative to the java:comp/env context.
+ The name must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-ref"/>
+ <xsd:field xpath="javaee:res-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-env-entry-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The env-entry-name element contains the name of a web
+ application's environment entry. The name is a JNDI
+ name relative to the java:comp/env context. The name
+ must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:env-entry"/>
+ <xsd:field xpath="javaee:env-entry-name"/>
+ </xsd:unique>
+ <xsd:key name="web-common-role-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A role-name-key is specified to allow the references
+ from the security-role-refs.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:security-role"/>
+ <xsd:field xpath="javaee:role-name"/>
+ </xsd:key>
+ <xsd:keyref name="web-common-role-name-references"
+ refer="javaee:web-common-role-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The keyref indicates the references from
+ security-role-ref to a specified role-name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:servlet/javaee:security-role-ref"/>
+ <xsd:field xpath="javaee:role-link"/>
+ </xsd:keyref>
+ </xsd:element>
+
+</xsd:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-common_3_1.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-common_3_1.xsd
new file mode 100644
index 0000000000..0f54557206
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-common_3_1.xsd
@@ -0,0 +1,1579 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="3.1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2009-2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ This is the common XML Schema for the Servlet 3.1 deployment descriptor.
+ This file is in turn used by web.xml and web-fragment.xml
+ web application's war file. All Servlet deployment descriptors
+ must indicate the web common schema by using the Java EE
+ namespace:
+
+ http://xmlns.jcp.org/xml/ns/javaee
+
+ and by indicating the version of the schema by
+ using the version element as shown below:
+
+ <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="..."
+ version="3.1">
+ ...
+ </web-app>
+
+ The instance documents may indicate the published version of
+ the schema using the xsi:schemaLocation attribute for Java EE
+ namespace with the following location:
+
+ http://xmlns.jcp.org/xml/ns/javaee/web-common_3_1.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all Java EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="javaee_7.xsd"/>
+
+ <xsd:include schemaLocation="jsp_2_3.xsd"/>
+
+ <xsd:group name="web-commonType">
+ <xsd:choice>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="distributable"
+ type="javaee:emptyType"/>
+ <xsd:element name="context-param"
+ type="javaee:param-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The context-param element contains the declaration
+ of a web application's servlet context
+ initialization parameters.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="filter"
+ type="javaee:filterType"/>
+ <xsd:element name="filter-mapping"
+ type="javaee:filter-mappingType"/>
+ <xsd:element name="listener"
+ type="javaee:listenerType"/>
+ <xsd:element name="servlet"
+ type="javaee:servletType"/>
+ <xsd:element name="servlet-mapping"
+ type="javaee:servlet-mappingType"/>
+ <xsd:element name="session-config"
+ type="javaee:session-configType"/>
+ <xsd:element name="mime-mapping"
+ type="javaee:mime-mappingType"/>
+ <xsd:element name="welcome-file-list"
+ type="javaee:welcome-file-listType"/>
+ <xsd:element name="error-page"
+ type="javaee:error-pageType"/>
+ <xsd:element name="jsp-config"
+ type="javaee:jsp-configType"/>
+ <xsd:element name="security-constraint"
+ type="javaee:security-constraintType"/>
+ <xsd:element name="login-config"
+ type="javaee:login-configType"/>
+ <xsd:element name="security-role"
+ type="javaee:security-roleType"/>
+ <xsd:group ref="javaee:jndiEnvironmentRefsGroup"/>
+ <xsd:element name="message-destination"
+ type="javaee:message-destinationType"/>
+ <xsd:element name="locale-encoding-mapping-list"
+ type="javaee:locale-encoding-mapping-listType"/>
+ </xsd:choice>
+ </xsd:group>
+
+ <xsd:attributeGroup name="web-common-attributes">
+ <xsd:attribute name="version"
+ type="javaee:web-app-versionType"
+ use="required"/>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ <xsd:attribute name="metadata-complete"
+ type="xsd:boolean">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The metadata-complete attribute defines whether this
+ deployment descriptor and other related deployment
+ descriptors for this module (e.g., web service
+ descriptors) are complete, or whether the class
+ files available to this module and packaged with
+ this application should be examined for annotations
+ that specify deployment information.
+
+ If metadata-complete is set to "true", the deployment
+ tool must ignore any annotations that specify deployment
+ information, which might be present in the class files
+ of the application.
+
+ If metadata-complete is not specified or is set to
+ "false", the deployment tool must examine the class
+ files of the application for annotations, as
+ specified by the specifications.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:attributeGroup>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="web-appType">
+ <xsd:choice minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:element name="module-name"
+ type="javaee:string"
+ minOccurs="0"/>
+ <xsd:group ref="javaee:web-commonType"/>
+ <xsd:element name="absolute-ordering"
+ type="javaee:absoluteOrderingType"/>
+ </xsd:choice>
+ <xsd:attributeGroup ref="javaee:web-common-attributes"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="web-fragmentType">
+ <xsd:choice minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:element name="name"
+ type="javaee:java-identifierType"/>
+ <xsd:group ref="javaee:web-commonType"/>
+ <xsd:element name="ordering"
+ type="javaee:orderingType"/>
+ </xsd:choice>
+ <xsd:attributeGroup ref="javaee:web-common-attributes"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="auth-constraintType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The auth-constraintType indicates the user roles that
+ should be permitted access to this resource
+ collection. The role-name used here must either correspond
+ to the role-name of one of the security-role elements
+ defined for this web application, or be the specially
+ reserved role-name "*" that is a compact syntax for
+ indicating all roles in the web application. If both "*"
+ and rolenames appear, the container interprets this as all
+ roles. If no roles are defined, no user is allowed access
+ to the portion of the web application described by the
+ containing security-constraint. The container matches
+ role names case sensitively when determining access.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="role-name"
+ type="javaee:role-nameType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="auth-methodType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The auth-methodType is used to configure the authentication
+ mechanism for the web application. As a prerequisite to
+ gaining access to any web resources which are protected by
+ an authorization constraint, a user must have authenticated
+ using the configured mechanism. Legal values are "BASIC",
+ "DIGEST", "FORM", "CLIENT-CERT", or a vendor-specific
+ authentication scheme.
+
+ Used in: login-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="dispatcherType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The dispatcher has five legal values: FORWARD, REQUEST,
+ INCLUDE, ASYNC, and ERROR.
+
+ A value of FORWARD means the Filter will be applied under
+ RequestDispatcher.forward() calls.
+ A value of REQUEST means the Filter will be applied under
+ ordinary client calls to the path or servlet.
+ A value of INCLUDE means the Filter will be applied under
+ RequestDispatcher.include() calls.
+ A value of ASYNC means the Filter will be applied under
+ calls dispatched from an AsyncContext.
+ A value of ERROR means the Filter will be applied under the
+ error page mechanism.
+
+ The absence of any dispatcher elements in a filter-mapping
+ indicates a default of applying filters only under ordinary
+ client calls to the path or servlet.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="FORWARD"/>
+ <xsd:enumeration value="INCLUDE"/>
+ <xsd:enumeration value="REQUEST"/>
+ <xsd:enumeration value="ASYNC"/>
+ <xsd:enumeration value="ERROR"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="error-codeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The error-code contains an HTTP error code, ex: 404
+
+ Used in: error-page
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:xsdPositiveIntegerType">
+ <xsd:pattern value="\d{3}"/>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="error-pageType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The error-pageType contains a mapping between an error code
+ or exception type to the path of a resource in the web
+ application.
+
+ Error-page declarations using the exception-type element in
+ the deployment descriptor must be unique up to the class name of
+ the exception-type. Similarly, error-page declarations using the
+ error-code element must be unique in the deployment descriptor
+ up to the status code.
+
+ If an error-page element in the deployment descriptor does not
+ contain an exception-type or an error-code element, the error
+ page is a default error page.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:choice minOccurs="0"
+ maxOccurs="1">
+ <xsd:element name="error-code"
+ type="javaee:error-codeType"/>
+ <xsd:element name="exception-type"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The exception-type contains a fully qualified class
+ name of a Java exception type.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ <xsd:element name="location"
+ type="javaee:war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The location element contains the location of the
+ resource in the web application relative to the root of
+ the web application. The value of the location must have
+ a leading `/'.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="filterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The filterType is used to declare a filter in the web
+ application. The filter is mapped to either a servlet or a
+ URL pattern in the filter-mapping element, using the
+ filter-name value to reference. Filters can access the
+ initialization parameters declared in the deployment
+ descriptor at runtime via the FilterConfig interface.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="filter-name"
+ type="javaee:filter-nameType"/>
+ <xsd:element name="filter-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The fully qualified classname of the filter.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="async-supported"
+ type="javaee:true-falseType"
+ minOccurs="0"/>
+ <xsd:element name="init-param"
+ type="javaee:param-valueType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The init-param element contains a name/value pair as
+ an initialization param of a servlet filter
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="filter-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Declaration of the filter mappings in this web
+ application is done by using filter-mappingType.
+ The container uses the filter-mapping
+ declarations to decide which filters to apply to a request,
+ and in what order. The container matches the request URI to
+ a Servlet in the normal way. To determine which filters to
+ apply it matches filter-mapping declarations either on
+ servlet-name, or on url-pattern for each filter-mapping
+ element, depending on which style is used. The order in
+ which filters are invoked is the order in which
+ filter-mapping declarations that match a request URI for a
+ servlet appear in the list of filter-mapping elements.The
+ filter-name value must be the value of the filter-name
+ sub-elements of one of the filter declarations in the
+ deployment descriptor.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="filter-name"
+ type="javaee:filter-nameType"/>
+ <xsd:choice minOccurs="1"
+ maxOccurs="unbounded">
+ <xsd:element name="url-pattern"
+ type="javaee:url-patternType"/>
+ <xsd:element name="servlet-name"
+ type="javaee:servlet-nameType"/>
+ </xsd:choice>
+ <xsd:element name="dispatcher"
+ type="javaee:dispatcherType"
+ minOccurs="0"
+ maxOccurs="5"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="nonEmptyStringType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type defines a string which contains at least one
+ character.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:minLength value="1"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="filter-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The logical name of the filter is declare
+ by using filter-nameType. This name is used to map the
+ filter. Each filter name is unique within the web
+ application.
+
+ Used in: filter, filter-mapping
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="form-login-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The form-login-configType specifies the login and error
+ pages that should be used in form based login. If form based
+ authentication is not used, these elements are ignored.
+
+ Used in: login-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="form-login-page"
+ type="javaee:war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The form-login-page element defines the location in the web
+ app where the page that can be used for login can be
+ found. The path begins with a leading / and is interpreted
+ relative to the root of the WAR.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="form-error-page"
+ type="javaee:war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The form-error-page element defines the location in
+ the web app where the error page that is displayed
+ when login is not successful can be found.
+ The path begins with a leading / and is interpreted
+ relative to the root of the WAR.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:simpleType name="http-methodType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A HTTP method type as defined in HTTP 1.1 section 2.2.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:token">
+ <xsd:pattern value="[!-~-[\(\)&#60;&#62;@,;:&#34;/\[\]?=\{\}\\\p{Z}]]+"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="load-on-startupType">
+ <xsd:union memberTypes="javaee:null-charType xsd:integer"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="null-charType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value=""/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="login-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The login-configType is used to configure the authentication
+ method that should be used, the realm name that should be
+ used for this application, and the attributes that are
+ needed by the form login mechanism.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="auth-method"
+ type="javaee:auth-methodType"
+ minOccurs="0"/>
+ <xsd:element name="realm-name"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The realm name element specifies the realm name to
+ use in HTTP Basic authorization.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="form-login-config"
+ type="javaee:form-login-configType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="mime-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The mime-mappingType defines a mapping between an extension
+ and a mime type.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The extension element contains a string describing an
+ extension. example: "txt"
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:element name="extension"
+ type="javaee:string"/>
+ <xsd:element name="mime-type"
+ type="javaee:mime-typeType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="mime-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The mime-typeType is used to indicate a defined mime type.
+
+ Example:
+ "text/plain"
+
+ Used in: mime-mapping
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:pattern value="[^\p{Cc}^\s]+/[^\p{Cc}^\s]+"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="security-constraintType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The security-constraintType is used to associate
+ security constraints with one or more web resource
+ collections
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="display-name"
+ type="javaee:display-nameType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="web-resource-collection"
+ type="javaee:web-resource-collectionType"
+ maxOccurs="unbounded"/>
+ <xsd:element name="auth-constraint"
+ type="javaee:auth-constraintType"
+ minOccurs="0"/>
+ <xsd:element name="user-data-constraint"
+ type="javaee:user-data-constraintType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="servletType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servletType is used to declare a servlet.
+ It contains the declarative data of a
+ servlet. If a jsp-file is specified and the load-on-startup
+ element is present, then the JSP should be precompiled and
+ loaded.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="servlet-name"
+ type="javaee:servlet-nameType"/>
+ <xsd:choice minOccurs="0"
+ maxOccurs="1">
+ <xsd:element name="servlet-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet-class element contains the fully
+ qualified class name of the servlet.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="jsp-file"
+ type="javaee:jsp-fileType"/>
+ </xsd:choice>
+ <xsd:element name="init-param"
+ type="javaee:param-valueType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="load-on-startup"
+ type="javaee:load-on-startupType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The load-on-startup element indicates that this
+ servlet should be loaded (instantiated and have
+ its init() called) on the startup of the web
+ application. The optional contents of these
+ element must be an integer indicating the order in
+ which the servlet should be loaded. If the value
+ is a negative integer, or the element is not
+ present, the container is free to load the servlet
+ whenever it chooses. If the value is a positive
+ integer or 0, the container must load and
+ initialize the servlet as the application is
+ deployed. The container must guarantee that
+ servlets marked with lower integers are loaded
+ before servlets marked with higher integers. The
+ container may choose the order of loading of
+ servlets with the same load-on-start-up value.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="enabled"
+ type="javaee:true-falseType"
+ minOccurs="0"/>
+ <xsd:element name="async-supported"
+ type="javaee:true-falseType"
+ minOccurs="0"/>
+ <xsd:element name="run-as"
+ type="javaee:run-asType"
+ minOccurs="0"/>
+ <xsd:element name="security-role-ref"
+ type="javaee:security-role-refType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="multipart-config"
+ type="javaee:multipart-configType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="servlet-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet-mappingType defines a mapping between a
+ servlet and a url pattern.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="servlet-name"
+ type="javaee:servlet-nameType"/>
+ <xsd:element name="url-pattern"
+ type="javaee:url-patternType"
+ minOccurs="1"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="servlet-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet-name element contains the canonical name of the
+ servlet. Each servlet name is unique within the web
+ application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="session-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The session-configType defines the session parameters
+ for this web application.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="session-timeout"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The session-timeout element defines the default
+ session timeout interval for all sessions created
+ in this web application. The specified timeout
+ must be expressed in a whole number of minutes.
+ If the timeout is 0 or less, the container ensures
+ the default behaviour of sessions is never to time
+ out. If this element is not specified, the container
+ must set its default timeout period.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="cookie-config"
+ type="javaee:cookie-configType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The cookie-config element defines the configuration of the
+ session tracking cookies created by this web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="tracking-mode"
+ type="javaee:tracking-modeType"
+ minOccurs="0"
+ maxOccurs="3">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The tracking-mode element defines the tracking modes
+ for sessions created by this web application
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cookie-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The cookie-configType defines the configuration for the
+ session tracking cookies of this web application.
+
+ Used in: session-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="name"
+ type="javaee:cookie-nameType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name that will be assigned to any session tracking
+ cookies created by this web application.
+ The default is JSESSIONID
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="domain"
+ type="javaee:cookie-domainType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The domain name that will be assigned to any session tracking
+ cookies created by this web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="path"
+ type="javaee:cookie-pathType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The path that will be assigned to any session tracking
+ cookies created by this web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="comment"
+ type="javaee:cookie-commentType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The comment that will be assigned to any session tracking
+ cookies created by this web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="http-only"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Specifies whether any session tracking cookies created
+ by this web application will be marked as HttpOnly
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="secure"
+ type="javaee:true-falseType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Specifies whether any session tracking cookies created
+ by this web application will be marked as secure
+ even if the request that initiated the corresponding session
+ is using plain HTTP instead of HTTPS
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="max-age"
+ type="javaee:xsdIntegerType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The lifetime (in seconds) that will be assigned to any
+ session tracking cookies created by this web application.
+ Default is -1
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cookie-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The name that will be assigned to any session tracking
+ cookies created by this web application.
+ The default is JSESSIONID
+
+ Used in: cookie-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cookie-domainType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The domain name that will be assigned to any session tracking
+ cookies created by this web application.
+
+ Used in: cookie-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cookie-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The path that will be assigned to any session tracking
+ cookies created by this web application.
+
+ Used in: cookie-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="cookie-commentType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The comment that will be assigned to any session tracking
+ cookies created by this web application.
+
+ Used in: cookie-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:nonEmptyStringType"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="tracking-modeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The tracking modes for sessions created by this web
+ application
+
+ Used in: session-config
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="COOKIE"/>
+ <xsd:enumeration value="URL"/>
+ <xsd:enumeration value="SSL"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="transport-guaranteeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The transport-guaranteeType specifies that the communication
+ between client and server should be NONE, INTEGRAL, or
+ CONFIDENTIAL. NONE means that the application does not
+ require any transport guarantees. A value of INTEGRAL means
+ that the application requires that the data sent between the
+ client and server be sent in such a way that it can't be
+ changed in transit. CONFIDENTIAL means that the application
+ requires that the data be transmitted in a fashion that
+ prevents other entities from observing the contents of the
+ transmission. In most cases, the presence of the INTEGRAL or
+ CONFIDENTIAL flag will indicate that the use of SSL is
+ required.
+
+ Used in: user-data-constraint
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:enumeration value="NONE"/>
+ <xsd:enumeration value="INTEGRAL"/>
+ <xsd:enumeration value="CONFIDENTIAL"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="user-data-constraintType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The user-data-constraintType is used to indicate how
+ data communicated between the client and container should be
+ protected.
+
+ Used in: security-constraint
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="transport-guarantee"
+ type="javaee:transport-guaranteeType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="war-pathType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The elements that use this type designate a path starting
+ with a "/" and interpreted relative to the root of a WAR
+ file.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:pattern value="/.*"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="web-app-versionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type contains the recognized versions of
+ web-application supported. It is used to designate the
+ version of the web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="3.1"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="web-resource-collectionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The web-resource-collectionType is used to identify the
+ resources and HTTP methods on those resources to which a
+ security constraint applies. If no HTTP methods are specified,
+ then the security constraint applies to all HTTP methods.
+ If HTTP methods are specified by http-method-omission
+ elements, the security constraint applies to all methods
+ except those identified in the collection.
+ http-method-omission and http-method elements are never
+ mixed in the same collection.
+
+ Used in: security-constraint
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="web-resource-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The web-resource-name contains the name of this web
+ resource collection.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="description"
+ type="javaee:descriptionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="url-pattern"
+ type="javaee:url-patternType"
+ maxOccurs="unbounded"/>
+ <xsd:choice minOccurs="0"
+ maxOccurs="1">
+ <xsd:element name="http-method"
+ type="javaee:http-methodType"
+ minOccurs="1"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Each http-method names an HTTP method to which the
+ constraint applies.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="http-method-omission"
+ type="javaee:http-methodType"
+ minOccurs="1"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Each http-method-omission names an HTTP method to
+ which the constraint does not apply.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="welcome-file-listType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The welcome-file-list contains an ordered list of welcome
+ files elements.
+
+ Used in: web-app
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="welcome-file"
+ type="xsd:string"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The welcome-file element contains file name to use
+ as a default welcome file, such as index.html
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:simpleType name="localeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The localeType defines valid locale defined by ISO-639-1
+ and ISO-3166.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="[a-z]{2}(_|-)?([\p{L}\-\p{Nd}]{2})?"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="encodingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The encodingType defines IANA character sets.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="[^\s]+"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="locale-encoding-mapping-listType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The locale-encoding-mapping-list contains one or more
+ locale-encoding-mapping(s).
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="locale-encoding-mapping"
+ type="javaee:locale-encoding-mappingType"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="locale-encoding-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The locale-encoding-mapping contains locale name and
+ encoding name. The locale name must be either "Language-code",
+ such as "ja", defined by ISO-639 or "Language-code_Country-code",
+ such as "ja_JP". "Country code" is defined by ISO-3166.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="locale"
+ type="javaee:localeType"/>
+ <xsd:element name="encoding"
+ type="javaee:encodingType"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ordering-othersType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This element indicates that the ordering sub-element in which
+ it was placed should take special action regarding the ordering
+ of this application resource relative to other application
+ configuration resources.
+ See section 8.2.2 of the specification for details.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="absoluteOrderingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Please see section 8.2.2 of the specification for details.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:choice minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:element name="name"
+ type="javaee:java-identifierType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="others"
+ type="javaee:ordering-othersType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ </xsd:choice>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="orderingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Please see section 8.2.2 of the specification for details.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="after"
+ type="javaee:ordering-orderingType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <xsd:element name="before"
+ type="javaee:ordering-orderingType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="ordering-orderingType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This element contains a sequence of "name" elements, each of
+ which
+ refers to an application configuration resource by the "name"
+ declared on its web.xml fragment. This element can also contain
+ a single "others" element which specifies that this document
+ comes
+ before or after other documents within the application.
+ See section 8.2.2 of the specification for details.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="name"
+ type="javaee:java-identifierType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="others"
+ type="javaee:ordering-othersType"
+ minOccurs="0"
+ maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="multipart-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This element specifies configuration information related to the
+ handling of multipart/form-data requests.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="location"
+ type="javaee:string"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The directory location where uploaded files will be stored
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="max-file-size"
+ type="xsd:long"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The maximum size limit of uploaded files
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="max-request-size"
+ type="xsd:long"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The maximum size limit of multipart/form-data requests
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="file-size-threshold"
+ type="xsd:integer"
+ minOccurs="0"
+ maxOccurs="1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The size threshold after which an uploaded file will be
+ written to disk
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+
+</xsd:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-facelettaglibrary_2_2.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-facelettaglibrary_2_2.xsd
new file mode 100644
index 0000000000..df140eea06
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-facelettaglibrary_2_2.xsd
@@ -0,0 +1,611 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:xml="http://www.w3.org/XML/1998/namespace"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="2.2">
+ <xsd:include schemaLocation="javaee_7.xsd"/>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2011-2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ [
+ The XML Schema for the Tag Libraries in the JavaServer Faces
+ Standard Facelets View Declaration Language (Facelets VDL)
+ (Version 2.2).
+
+ JSF 2.2 Facelet Tag Libraries that wish to conform to this
+ schema must declare it in the following manner.
+
+ <facelet-taglib xmlns="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facelettaglibary_2_2.xsd"
+ version="2.2">
+
+ ...
+
+ </facelet-taglib>
+
+ The instance documents may indicate the published
+ version of the schema using xsi:schemaLocation attribute
+ for javaee namespace with the following location:
+
+ http://xmlns.jcp.org/xml/ns/javaee/web-facelettaglibary_2_2.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+
+<!-- **************************************************** -->
+
+ <xsd:element name="facelet-taglib"
+ type="javaee:facelet-taglibType">
+ <xsd:unique name="facelet-taglib-tagname-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ tag-names must be unique within a document.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:tag"/>
+ <xsd:field xpath="javaee:tag-name"/>
+ </xsd:unique>
+ <xsd:unique name="faces-config-behavior-ID-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Behavior IDs must be unique within a document.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:behavior"/>
+ <xsd:field xpath="javaee:behavior-id"/>
+ </xsd:unique>
+ <xsd:unique name="faces-config-converter-ID-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Converter IDs must be unique within a document.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:converter"/>
+ <xsd:field xpath="javaee:converter-id"/>
+ </xsd:unique>
+ <xsd:unique name="faces-config-validator-ID-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Validator IDs must be unique within a document.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:validator"/>
+ <xsd:field xpath="javaee:validator-id"/>
+ </xsd:unique>
+ </xsd:element>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglibType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The top level XML element in a facelet tag library XML file.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:choice>
+ <xsd:element name="library-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:sequence>
+ <xsd:element name="namespace"
+ type="javaee:string"/>
+ <xsd:element minOccurs="0"
+ maxOccurs="1"
+ name="composite-library-name"
+ type="javaee:string"/>
+ <xsd:choice minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:element name="tag"
+ type="javaee:facelet-taglib-tagType"/>
+ <xsd:element name="function"
+ type="javaee:facelet-taglib-functionType"/>
+ </xsd:choice>
+ </xsd:sequence>
+ </xsd:choice>
+ <xsd:element name="taglib-extension"
+ type="javaee:facelet-taglib-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ <xsd:attribute name="version"
+ type="javaee:facelet-taglib-versionType"
+ use="required"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for facelet-taglib. It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-tagType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ If the tag library XML file contains individual tag
+ declarations rather than pointing to a library-class or a
+ declaring a composite-library name, the individual tags are
+ enclosed in tag elements.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="tag-name"
+ type="javaee:facelet-taglib-canonical-nameType"/>
+ <xsd:choice>
+ <xsd:element name="handler-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="behavior"
+ type="javaee:facelet-taglib-tag-behaviorType"/>
+ <xsd:element name="component"
+ type="javaee:facelet-taglib-tag-componentType"/>
+ <xsd:element name="converter"
+ type="javaee:facelet-taglib-tag-converterType"/>
+ <xsd:element name="validator"
+ type="javaee:facelet-taglib-tag-validatorType"/>
+ <xsd:element name="source"
+ type="javaee:string"/>
+ </xsd:choice>
+ <xsd:element name="attribute"
+ type="javaee:facelet-taglib-tag-attributeType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="tag-extension"
+ type="javaee:facelet-taglib-tag-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-tag-attributeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The attribute element defines an attribute for the nesting
+ tag. The attribute element may have several subelements
+ defining:
+
+ description a description of the attribute
+
+ name the name of the attribute
+
+ required whether the attribute is required or
+ optional
+
+ type the type of the attribute
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="name"
+ type="javaee:xsdNMTOKENType"/>
+ <xsd:element name="required"
+ type="javaee:generic-booleanType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines if the nesting attribute is required or
+ optional.
+
+ If not present then the default is "false", i.e
+ the attribute is optional.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:choice>
+ <xsd:element name="type"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the Java type of the attributes
+ value. If this element is omitted, the
+ expected type is assumed to be
+ "java.lang.Object".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="method-signature"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the method signature for a MethodExpression-
+ enabled attribute.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-tag-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for tag It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-functionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ If the tag library XML file contains individual function
+ declarations rather than pointing to a library-class or a
+ declaring a composite-library name, the individual functions are
+ enclosed in function elements.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="function-name"
+ type="javaee:string"/>
+ <xsd:element name="function-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="function-signature"
+ type="javaee:string"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-tag-behaviorType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Within a tag element, the behavior element encapsulates
+ information specific to a JSF Behavior.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element minOccurs="1"
+ maxOccurs="1"
+ name="behavior-id"
+ type="javaee:string"/>
+ <xsd:element minOccurs="0"
+ maxOccurs="1"
+ name="handler-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="behavior-extension"
+ type="javaee:facelet-taglib-tag-behavior-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-tag-behavior-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for behavior. It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-tag-componentType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Within a tag element, the component element encapsulates
+ information specific to a JSF UIComponent.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:choice minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:element name="component-type"
+ type="javaee:string"/>
+ <xsd:element name="resource-id"
+ type="javaee:string"/>
+ <xsd:element name="handler-class"
+ type="javaee:fully-qualified-classType"/>
+ </xsd:choice>
+ <xsd:element minOccurs="0"
+ maxOccurs="1"
+ name="renderer-type"
+ type="javaee:string"/>
+ <xsd:element name="component-extension"
+ type="javaee:facelet-taglib-tag-component-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-tag-component-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for component It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-tag-converterType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Within a tag element, the converter element encapsulates
+ information specific to a JSF Converter.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element minOccurs="1"
+ maxOccurs="1"
+ name="converter-id"
+ type="javaee:string"/>
+ <xsd:element minOccurs="0"
+ maxOccurs="1"
+ name="handler-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="converter-extension"
+ type="javaee:facelet-taglib-tag-converter-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-tag-converter-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for converter It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-tag-validatorType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Within a tag element, the validator element encapsulates
+ information specific to a JSF Validator.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element minOccurs="1"
+ maxOccurs="1"
+ name="validator-id"
+ type="javaee:string"/>
+ <xsd:element minOccurs="0"
+ maxOccurs="1"
+ name="handler-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="validator-extension"
+ type="javaee:facelet-taglib-tag-validator-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-tag-validator-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Extension element for validator It may contain
+ implementation specific content.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:simpleType name="facelet-taglib-versionType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ This type contains the recognized versions of
+ facelet-taglib supported.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="2.2"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-canonical-nameType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the canonical name of a tag or attribute being
+ defined.
+
+ The name must conform to the lexical rules for an NCName
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:NCName">
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+</xsd:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-facesconfig_2_2.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-facesconfig_2_2.xsd
new file mode 100644
index 0000000000..3d4347fa01
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-facesconfig_2_2.xsd
@@ -0,0 +1,3781 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ attributeFormDefault="unqualified"
+ elementFormDefault="qualified"
+ targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ version="2.2"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <xsd:include schemaLocation="javaee_7.xsd"/>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2011 - 2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p>The XML Schema for the JavaServer Faces Application
+ Configuration File (Version 2.2).</p>
+
+ <p>All JavaServer Faces configuration files must indicate
+ the JavaServer Faces schema by indicating the JavaServer
+ Faces namespace:</p>
+
+ <p>http://xmlns.jcp.org/xml/ns/javaee</p>
+
+ <p>and by indicating the version of the schema by
+ using the version element as shown below:</p>
+
+ <pre>&lt;faces-config xmlns="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="..."
+ version="2.2"&gt;
+ ...
+ &lt;/faces-config&gt;</pre>
+
+ <p>The instance documents may indicate the published
+ version of the schema using xsi:schemaLocation attribute
+ for javaee namespace with the following location:</p>
+
+ <p>http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+
+<!-- **************************************************** -->
+
+ <xsd:element name="faces-config"
+ type="javaee:faces-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p>The "faces-config" element is the root of the configuration
+ information hierarchy, and contains nested elements for all
+ of the other configuration settings.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:unique name="faces-config-behavior-ID-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p>Behavior IDs must be unique within a document.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:behavior"/>
+ <xsd:field xpath="javaee:behavior-id"/>
+ </xsd:unique>
+ <xsd:unique name="faces-config-converter-ID-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p>Converter IDs must be unique within a document.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:converter"/>
+ <xsd:field xpath="javaee:converter-id"/>
+ </xsd:unique>
+ <xsd:unique name="faces-config-converter-for-class-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p>'converter-for-class' element values must be unique
+ within a document.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:converter"/>
+ <xsd:field xpath="javaee:converter-for-class"/>
+ </xsd:unique>
+ <xsd:unique name="faces-config-validator-ID-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Validator IDs must be unique within a document.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:validator"/>
+ <xsd:field xpath="javaee:validator-id"/>
+ </xsd:unique>
+ <xsd:unique name="faces-config-managed-bean-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Managed bean names must be unique within a document.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:managed-bean"/>
+ <xsd:field xpath="javaee:managed-bean-name"/>
+ </xsd:unique>
+ </xsd:element>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "faces-config" element is the root of the configuration
+ information hierarchy, and contains nested elements for all
+ of the other configuration settings.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:choice minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:element name="application"
+ type="javaee:faces-config-applicationType"/>
+ <xsd:element name="ordering"
+ type="javaee:faces-config-orderingType"/>
+ <xsd:element name="absolute-ordering"
+ type="javaee:faces-config-absoluteOrderingType"
+ minOccurs="0"/>
+ <xsd:element name="factory"
+ type="javaee:faces-config-factoryType"/>
+ <xsd:element name="component"
+ type="javaee:faces-config-componentType"/>
+ <xsd:element name="converter"
+ type="javaee:faces-config-converterType"/>
+ <xsd:element name="managed-bean"
+ type="javaee:faces-config-managed-beanType"/>
+ <xsd:element name="flow-definition"
+ type="javaee:faces-config-flow-definitionType"/>
+ <xsd:element name="name"
+ type="javaee:java-identifierType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> <span class="changed_modified_2_2">The</span> "name" element
+ within the top level "faces-config"
+ element declares the name of this application
+ configuration resource. Such names are used
+ in the document ordering scheme specified in section
+ JSF.11.4.6.</p>
+
+ <p class="changed_added_2_2">This value is taken to be the
+ defining document id of any &lt;flow-definition&gt; elements
+ defined in this Application Configuration Resource file. If this
+ element is not specified, the runtime must take the empty string
+ as its value.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="navigation-rule"
+ type="javaee:faces-config-navigation-ruleType"/>
+ <xsd:element name="protected-views"
+ type="javaee:faces-config-protected-viewsType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="referenced-bean"
+ type="javaee:faces-config-referenced-beanType"/>
+ <xsd:element name="render-kit"
+ type="javaee:faces-config-render-kitType"/>
+ <xsd:element name="lifecycle"
+ type="javaee:faces-config-lifecycleType"/>
+ <xsd:element name="validator"
+ type="javaee:faces-config-validatorType"/>
+ <xsd:element name="behavior"
+ type="javaee:faces-config-behaviorType"/>
+ <xsd:element name="faces-config-extension"
+ type="javaee:faces-config-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:choice>
+ <xsd:attribute name="metadata-complete"
+ type="xsd:boolean"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The metadata-complete attribute defines whether this
+ JavaServer Faces application is complete, or whether
+ the class files available to this module and packaged with
+ this application should be examined for annotations
+ that specify configuration information.
+
+ This attribute is only inspected on the application
+ configuration resource file located at "WEB-INF/faces-config.xml".
+ The presence of this attribute on any application configuration
+ resource other than the one located at "WEB-INF/faces-config.xml",
+ including any files named using the javax.faces.CONFIG_FILES
+ attribute, must be ignored.
+
+ If metadata-complete is set to "true", the JavaServer Faces
+ runtime must ignore any annotations that specify configuration
+ information, which might be present in the class files
+ of the application.
+
+ If metadata-complete is not specified or is set to
+ "false", the JavaServer Faces runtime must examine the class
+ files of the application for annotations, as specified by
+ the specification.
+
+ If "WEB-INF/faces-config.xml" is not present, the JavaServer
+ Faces runtime will assume metadata-complete to be "false".
+
+ The value of this attribute will have no impact on
+ runtime annotations such as @ResourceDependency or
+ @ListenerFor.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ <xsd:attribute name="version"
+ type="javaee:faces-config-versionType"
+ use="required"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for faces-config. It may contain
+ implementation specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-orderingType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Please see section JSF.11.4.6 for the specification of this element.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="after"
+ type="javaee:faces-config-ordering-orderingType"
+ minOccurs="0"/>
+ <xsd:element name="before"
+ type="javaee:faces-config-ordering-orderingType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-ordering-orderingType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> This element contains a sequence of "id" elements, each of which
+ refers to an application configuration resource by the "id"
+ declared on its faces-config element. This element can also contain
+ a single "others" element which specifies that this document comes
+ before or after other documents within the application.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="name"
+ type="javaee:java-identifierType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="others"
+ type="javaee:faces-config-ordering-othersType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-ordering-othersType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> This element indicates that the ordering sub-element in which
+ it was placed should take special action regarding the ordering
+ of this application resource relative to other
+ application configuration resources. See section JSF.11.4.6
+ for the complete specification.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-absoluteOrderingType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Only relevant if this is placed within the /WEB-INF/faces-config.xml.
+ Please see section JSF.11.4.6 for the specification for details.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:choice minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:element name="name"
+ type="javaee:java-identifierType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="others"
+ type="javaee:faces-config-ordering-othersType"
+ minOccurs="0"/>
+ </xsd:choice>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-applicationType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "application" element provides a mechanism to define the
+ various per-application-singleton implementation artifacts for
+ a particular web application that is utilizing
+ JavaServer Faces. For nested elements that are not specified,
+ the JSF implementation must provide a suitable default.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:choice minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:element name="action-listener"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "action-listener" element contains the fully
+ qualified class name of the concrete
+ ActionListener implementation class that will be
+ called during the Invoke Application phase of the
+ request processing lifecycle.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="default-render-kit-id"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "default-render-kit-id" element allows the
+ application to define a renderkit to be used other
+ than the standard one.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="message-bundle"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The base name of a resource bundle representing
+ the message resources for this application. See
+ the JavaDocs for the "java.util.ResourceBundle"
+ class for more information on the syntax of
+ resource bundle names.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="navigation-handler"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "navigation-handler" element contains the
+ fully qualified class name of the concrete
+ NavigationHandler implementation class that will
+ be called during the Invoke Application phase
+ of the request processing lifecycle, if the
+ default ActionListener (provided by the JSF
+ implementation) is used.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="view-handler"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "view-handler" element contains the fully
+ qualified class name of the concrete ViewHandler
+ implementation class that will be called during
+ the Restore View and Render Response phases of the
+ request processing lifecycle. The faces
+ implementation must provide a default
+ implementation of this class.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="state-manager"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "state-manager" element contains the fully
+ qualified class name of the concrete StateManager
+ implementation class that will be called during
+ the Restore View and Render Response phases of the
+ request processing lifecycle. The faces
+ implementation must provide a default
+ implementation of this class.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="el-resolver"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "el-resolver" element contains the fully
+ qualified class name of the concrete
+ javax.el.ELResolver implementation class
+ that will be used during the processing of
+ EL expressions.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property-resolver"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "property-resolver" element contains the fully
+ qualified class name of the concrete
+ PropertyResolver implementation class that will
+ be used during the processing of value binding
+ expressions.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="variable-resolver"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "variable-resolver" element contains the fully
+ qualified class name of the concrete
+ VariableResolver implementation class that will
+ be used during the processing of value binding
+ expressions.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="resource-handler"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "resource-handler" element contains the
+ fully qualified class name of the concrete
+ ResourceHandler implementation class that
+ will be used during rendering and decoding
+ of resource requests The standard
+ constructor based decorator pattern used for
+ other application singletons will be
+ honored.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="resource-library-contracts"
+ type="javaee:faces-config-application-resource-library-contractsType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">The "resource-library-contracts" element
+ specifies the mappings between views in the application and resource
+ library contracts that, if present in the application, must be made
+ available for use as templates of the specified views.
+ </p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="system-event-listener"
+ type="javaee:faces-config-system-event-listenerType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="locale-config"
+ type="javaee:faces-config-locale-configType"/>
+ <xsd:element name="resource-bundle"
+ type="javaee:faces-config-application-resource-bundleType"/>
+ <xsd:element name="application-extension"
+ type="javaee:faces-config-application-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="default-validators"
+ type="javaee:faces-config-default-validatorsType"/>
+ </xsd:choice>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-application-resource-bundleType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The resource-bundle element inside the application element
+ references a java.util.ResourceBundle instance by name
+ using the var element. ResourceBundles referenced in this
+ manner may be returned by a call to
+ Application.getResourceBundle() passing the current
+ FacesContext for this request and the value of the var
+ element below.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="base-name"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The fully qualified class name of the
+ java.util.ResourceBundle instance.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="var"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The name by which this ResourceBundle instance
+ is retrieved by a call to
+ Application.getResourceBundle().</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-application-resource-library-contractsType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">The "resource-library-contracts" element
+ specifies the mappings between views in the application and resource
+ library contracts that, if present in the application, must be made
+ available for use as templates of the specified views.
+ </p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="contract-mapping"
+ type="javaee:faces-config-application-resource-library-contracts-contract-mappingType"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p classes="changed_added_2_2">Declare a mapping between a collection
+ of views in the application and the list of contracts (if present in the application)
+ that may be used as a source for templates and resources for those views.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-application-resource-library-contracts-contract-mappingType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">The "contract-mapping" element
+ specifies the mappings between a collection of views in the application and resource
+ library contracts that, if present in the application, must be made
+ available for use as templates of the specified views.
+ </p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="url-pattern"
+ type="javaee:url-patternType"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">The "url-pattern" element
+ specifies the collection of views in this application that
+ are allowed to use the corresponding contracts.
+ </p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="contracts"
+ type="javaee:string"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">The "contracts" element
+ is a comma separated list of resource library contracts that,
+ if available to the application, may be used by the views
+ matched by the corresponding "url-pattern"
+ </p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-application-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for application. It may contain
+ implementation specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-factoryType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "factory" element provides a mechanism to define the
+ various Factories that comprise parts of the implementation
+ of JavaServer Faces. For nested elements that are not
+ specified, the JSF implementation must provide a suitable
+ default.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:choice minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:element name="application-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "application-factory" element contains the
+ fully qualified class name of the concrete
+ ApplicationFactory implementation class that will
+ be called when
+ FactoryFinder.getFactory(APPLICATION_FACTORY) is
+ called.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="exception-handler-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "exception-handler-factory" element contains the
+ fully qualified class name of the concrete
+ ExceptionHandlerFactory implementation class that will
+ be called when
+ FactoryFinder.getFactory(EXCEPTION_HANDLER_FACTORY)
+ is called.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="external-context-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "external-context-factory" element contains the
+ fully qualified class name of the concrete
+ ExternalContextFactory implementation class that will
+ be called when
+ FactoryFinder.getFactory(EXTERNAL_CONTEXT_FACTORY)
+ is called.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="faces-context-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "faces-context-factory" element contains the
+ fully qualified class name of the concrete
+ FacesContextFactory implementation class that will
+ be called when
+ FactoryFinder.getFactory(FACES_CONTEXT_FACTORY)
+ is called.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="facelet-cache-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "facelet-cache-factory" element contains the
+ fully qualified class name of the concrete
+ FaceletCacheFactory implementation class that will
+ be called when
+ FactoryFinder.getFactory(FACELET_CACHE_FACTORY)
+ is called.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="partial-view-context-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "partial-view-context-factory" element contains the
+ fully qualified class name of the concrete
+ PartialViewContextFactory implementation class that will
+ be called when FactoryFinder.getFactory
+ (FactoryFinder.PARTIAL_VIEW_CONTEXT_FACTORY) is called.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="lifecycle-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "lifecycle-factory" element contains the fully
+ qualified class name of the concrete LifecycleFactory
+ implementation class that will be called when
+ FactoryFinder.getFactory(LIFECYCLE_FACTORY) is called.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="view-declaration-language-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "view-declaration-language-factory" element contains
+ the fully qualified class name of the concrete
+ ViewDeclarationLanguageFactory
+ implementation class that will be called when
+ FactoryFinder.getFactory(VIEW_DECLARATION_FACTORY) is called.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="tag-handler-delegate-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "tag-handler-delegate-factory" element contains
+ the fully qualified class name of the concrete
+ ViewDeclarationLanguageFactory
+ implementation class that will be called when
+ FactoryFinder.getFactory(TAG_HANDLER_DELEGATE_FACTORY) is called.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="render-kit-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "render-kit-factory" element contains the fully
+ qualified class name of the concrete RenderKitFactory
+ implementation class that will be called when
+ FactoryFinder.getFactory(RENDER_KIT_FACTORY) is
+ called.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="visit-context-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "visit-context-factory" element contains the fully
+ qualified class name of the concrete VisitContextFactory
+ implementation class that will be called when
+ FactoryFinder.getFactory(VISIT_CONTEXT_FACTORY) is
+ called.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="flash-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2"> The "flash-factory" element contains the
+ fully qualified class name of the concrete
+ FaceletFactory implementation class that will
+ be called when
+ FactoryFinder.getFactory(FLASH_FACTORY) is
+ called.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="flow-handler-factory"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "flow-handler-factory" element contains the
+ fully qualified class name of the concrete
+ FlowHandlerFactory implementation class that will
+ be called when
+ FactoryFinder.getFactory(FLOW_HANDLER_FACTORY) is
+ called.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="factory-extension"
+ type="javaee:faces-config-factory-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:choice>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-factory-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for factory. It may contain
+ implementation specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-attributeType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "attribute" element represents a named, typed, value
+ associated with the parent UIComponent via the generic
+ attributes mechanism.</p>
+
+ <p>Attribute names must be unique within the scope of the parent
+ (or related) component.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="attribute-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "attribute-name" element represents the name under
+ which the corresponding value will be stored, in the
+ generic attributes of the UIComponent we are related
+ to.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="attribute-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "attribute-class" element represents the Java type
+ of the value associated with this attribute name.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="default-value"
+ type="javaee:faces-config-default-valueType"
+ minOccurs="0"/>
+ <xsd:element name="suggested-value"
+ type="javaee:faces-config-suggested-valueType"
+ minOccurs="0"/>
+ <xsd:element name="attribute-extension"
+ type="javaee:faces-config-attribute-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-attribute-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for attribute. It may contain
+ implementation specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-componentType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "component" element represents a concrete UIComponent
+ implementation class that should be registered under the
+ specified type identifier, along with its associated
+ properties and attributes. Component types must be unique
+ within the entire web application.</p>
+
+ <p>Nested "attribute" elements identify generic attributes that
+ are recognized by the implementation logic of this component.
+ Nested "property" elements identify JavaBeans properties of
+ the component class that may be exposed for manipulation
+ via tools.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="component-type"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "component-type" element represents the name under
+ which the corresponding UIComponent class should be
+ registered.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="component-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "component-class" element represents the fully
+ qualified class name of a concrete UIComponent
+ implementation class.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="facet"
+ type="javaee:faces-config-facetType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="attribute"
+ type="javaee:faces-config-attributeType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="property"
+ type="javaee:faces-config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="component-extension"
+ type="javaee:faces-config-component-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-component-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for component. It may contain
+ implementation specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-default-localeType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "default-locale" element declares the default locale
+ for this application instance.</p>
+
+ <p>It must be specified as :language:[_:country:[_:variant:]]
+ without the colons, for example "ja_JP_SJIS". The
+ separators between the segments may be '-' or '_'.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:faces-config-localeType">
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-default-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "default-value" contains the value for the property or
+ attribute in which this element resides. This value differs
+ from the "suggested-value" in that the property or attribute
+ must take the value, whereas in "suggested-value" taking the
+ value is optional.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="faces-config-el-expressionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> EL expressions present within a faces config file
+ must start with the character sequence of '#{' and
+ end with '}'.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="#\{.*\}"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-facetType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Define the name and other design-time information for a facet
+ that is associated with a renderer or a component.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="facet-name"
+ type="javaee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "facet-name" element represents the facet name
+ under which a UIComponent will be added to its parent.
+ It must be of type "Identifier".</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="facet-extension"
+ type="javaee:faces-config-facet-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-facet-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for facet. It may contain implementation
+ specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-from-view-idType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p><span class="changed_modified_2_2">The</span>
+ value of from-view-id must contain one of the following
+ values:</p>
+
+ <ul>
+
+ <li><p>The exact match for a view identifier that is recognized
+ by the the ViewHandler implementation being used (such as
+ "/index.jsp" if you are using the default ViewHandler).</p></li>
+
+ <li><p class="changed_added_2_2">The exact match of a flow node id
+ in the current flow, or a flow id of another flow.</p></li>
+
+ <li><p> A proper prefix of a view identifier, plus a trailing
+ "*" character. This pattern indicates that all view
+ identifiers that match the portion of the pattern up to the
+ asterisk will match the surrounding rule. When more than one
+ match exists, the match with the longest pattern is selected.
+ </p></li>
+
+ <li><p>An "*" character, which means that this pattern applies
+ to all view identifiers. </p></li>
+
+ </ul>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-from-actionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "from-action" element contains an action reference
+ expression that must have been executed (by the default
+ ActionListener for handling application level events)
+ in order to select the navigation rule. If not specified,
+ this rule will be relevant no matter which action reference
+ was executed (or if no action reference was executed).</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:faces-config-el-expressionType">
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-ifType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p>The "if" element defines a condition that must resolve
+ to true in order for the navigation case on which it is
+ defined to be matched, with the existing match criteria
+ (action method and outcome) as a prerequiste, if present.
+ The condition is defined declaratively using a value
+ expression in the body of this element. The expression is
+ evaluated at the time the navigation case is being matched.
+ If the "from-outcome" is omitted and this element is
+ present, the navigation handler will match a null outcome
+ and use the condition return value to determine if the
+ case should be considered a match.</p>
+
+ <div class="changed_added_2_2">
+
+ <p>When used in a <code>&lt;switch&gt;</code> within a flow, if the
+ expresion returns <code>true</code>, the
+ <code>&lt;from-outcome&gt;</code> sibling element's outcome is used as
+ the id of the node in the flow graph to which control must be
+ passed.</p>
+
+ </div>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:faces-config-el-expressionType">
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-parameter-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2"></p>
+
+ <div class="changed_added_2_2">
+
+ </div>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:faces-config-el-expressionType">
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-converterType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "converter" element represents a concrete Converter
+ implementation class that should be registered under the
+ specified converter identifier. Converter identifiers must
+ be unique within the entire web application.</p>
+
+ <p>Nested "attribute" elements identify generic attributes that
+ may be configured on the corresponding UIComponent in order
+ to affect the operation of the Converter. Nested "property"
+ elements identify JavaBeans properties of the Converter
+ implementation class that may be configured to affect the
+ operation of the Converter. "attribute" and "property"
+ elements are intended to allow component developers to
+ more completely describe their components to tools and users.
+ These elements have no required runtime semantics.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:choice>
+ <xsd:element name="converter-id"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "converter-id" element represents the
+ identifier under which the corresponding
+ Converter class should be registered.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="converter-for-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "converter-for-class" element represents the
+ fully qualified class name for which a Converter
+ class will be registered.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ <xsd:element name="converter-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "converter-class" element represents the fully
+ qualified class name of a concrete Converter
+ implementation class.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="attribute"
+ type="javaee:faces-config-attributeType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Nested "attribute" elements identify generic
+ attributes that may be configured on the
+ corresponding UIComponent in order to affect the
+ operation of the Converter. This attribute is
+ primarily for design-time tools and is not
+ specified to have any meaning at runtime.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property"
+ type="javaee:faces-config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Nested "property" elements identify JavaBeans
+ properties of the Converter implementation class
+ that may be configured to affect the operation of
+ the Converter. This attribute is primarily for
+ design-time tools and is not specified to have
+ any meaning at runtime.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="converter-extension"
+ type="javaee:faces-config-converter-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-converter-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for converter. It may contain
+ implementation specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-lifecycleType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "lifecycle" element provides a mechanism to specify
+ modifications to the behaviour of the default Lifecycle
+ implementation for this web application.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="phase-listener"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "phase-listener" element contains the fully
+ qualified class name of the concrete PhaseListener
+ implementation class that will be registered on
+ the Lifecycle.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="lifecycle-extension"
+ type="javaee:faces-config-lifecycle-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-lifecycle-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for lifecycle. It may contain
+ implementation specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:simpleType name="faces-config-localeType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The localeType defines valid locale defined by ISO-639-1
+ and ISO-3166.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="([a-z]{2})[_|\-]?([\p{L}]{2})?[_|\-]?(\w+)?"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-locale-configType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "locale-config" element allows the app developer to
+ declare the supported locales for this application.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="default-locale"
+ type="javaee:faces-config-default-localeType"
+ minOccurs="0"/>
+ <xsd:element name="supported-locale"
+ type="javaee:faces-config-supported-localeType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-default-validatorsType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "default-validators" element allows the app developer to
+ register a set of validators, referenced by identifier, that
+ are automatically assigned to any EditableValueHolder component
+ in the application, unless overridden or disabled locally.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="validator-id"
+ type="javaee:string"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "validator-id" element represents the identifier
+ of a registered validator.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-managed-beanType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "managed-bean" element represents a JavaBean, of a
+ particular class, that will be dynamically instantiated
+ at runtime (by the default VariableResolver implementation)
+ if it is referenced as the first element of a value binding
+ expression, and no corresponding bean can be identified in
+ any scope. In addition to the creation of the managed bean,
+ and the optional storing of it into the specified scope,
+ the nested managed-property elements can be used to
+ initialize the contents of settable JavaBeans properties of
+ the created instance.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="managed-bean-name"
+ type="javaee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "managed-bean-name" element represents the
+ attribute name under which a managed bean will
+ be searched for, as well as stored (unless the
+ "managed-bean-scope" value is "none").</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="managed-bean-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "managed-bean-class" element represents the fully
+ qualified class name of the Java class that will be
+ used`to instantiate a new instance if creation of the
+ specified`managed bean is requested.</p>
+
+ <p>The specified class must conform to standard JavaBeans
+ conventions. In particular, it must have a public
+ zero-arguments constructor, and zero or more public
+ property setters.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="managed-bean-scope"
+ type="javaee:faces-config-managed-bean-scopeOrNoneType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "managed-bean-scope" element represents the scope
+ into which a newly created instance of the specified
+ managed bean will be stored (unless the value is
+ "none").</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:choice>
+ <xsd:element name="managed-property"
+ type="javaee:faces-config-managed-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="map-entries"
+ type="javaee:faces-config-map-entriesType"/>
+ <xsd:element name="list-entries"
+ type="javaee:faces-config-list-entriesType"/>
+ </xsd:choice>
+ <xsd:element name="managed-bean-extension"
+ type="javaee:faces-config-managed-bean-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="eager"
+ type="xsd:boolean"
+ use="optional">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> This attribute is only considered when associated with
+ an application-scoped managed bean. If the value of the eager
+ attribute is true the runtime must instantiate this class
+ and store the instance within the application scope when the
+ application starts.</p>
+
+ <p>If eager is unspecified or is false, the default "lazy"
+ instantiation and scoped storage of the managed bean
+ will occur.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definitionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">Top level element for a flow
+ definition.</p>
+
+ <div class="changed_added_2_2">
+
+ <p>If there is no <code>&lt;start-node&gt;</code> element declared, it
+ is assumed to be <code>&lt;flowName&gt;.xhtml</code>.</p>
+
+ </div>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="start-node"
+ type="javaee:java-identifierType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">Declare the id of the starting node in the
+ flow graph. The start node may be any of the node types mentioned in
+ the class javadocs for <code><a target="_"
+ href="javax/faces/flow/FlowHandler.html">FlowHandler</a></code>.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="view"
+ type="javaee:faces-config-flow-definition-viewType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="switch"
+ type="javaee:faces-config-flow-definition-switchType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="flow-return"
+ type="javaee:faces-config-flow-definition-flow-returnType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="navigation-rule"
+ type="javaee:faces-config-navigation-ruleType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="flow-call"
+ type="javaee:faces-config-flow-definition-flow-callType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="method-call"
+ type="javaee:faces-config-flow-definition-faces-method-callType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="initializer"
+ type="javaee:faces-config-flow-definition-initializerType"
+ minOccurs="0"/>
+ <xsd:element name="finalizer"
+ type="javaee:faces-config-flow-definition-finalizerType"
+ minOccurs="0"/>
+ <xsd:element name="inbound-parameter"
+ type="javaee:faces-config-flow-definition-inbound-parameterType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">The id of this flow. The id
+ must be unique within the Application configuration Resource
+ file in which this flow is defined. The value of this attribute,
+ combined with the value of the &lt;faces-config&gt;&lt;name&gt; element
+ must globally identify the flow within the application.<p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-faces-method-callType">
+ <xsd:sequence>
+ <xsd:element name="method"
+ type="javaee:faces-config-flow-definition-faces-method-call-methodType"/>
+ <xsd:element name="default-outcome"
+ type="javaee:string"/>
+ <xsd:element name="parameter"
+ type="javaee:faces-config-flow-definition-flow-call-parameterType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">A parameter to pass when calling the method
+ identified in the "method" element that is a sibling of this element.<p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-faces-method-call-methodType">
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:faces-config-el-expressionType">
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-flow-call-parameterType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">A parameter to pass when calling the method
+ identified in the "method" element that is a sibling of this element.<p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="class"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2"> The optional "class" element within a "parameter" element
+ will be interpreted as the fully qualified class name for the type
+ of the "value" element.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="value"
+ type="javaee:faces-config-flow-definition-parameter-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2"> The "value" element within an "parameter"
+ must be a literal string or an EL Expression whose "get" will be called when the "method"
+ associated with this element is invoked.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-viewType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">Define a view node in a flow graph.</p>
+
+ <p>This element must contain exactly one
+ <code>&lt;vdl-document&gt;</code> element.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="vdl-document"
+ type="javaee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">Define the vdl-document for the enclosing view.<p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">The id of this view. It must be
+ unique within the flow.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-switchType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">Define a switch node in a flow graph.</p>
+
+ <div class="changed_added_2_2">
+
+ <p>This element must contain one or more
+ <code>&lt;case&gt;</code> elements. When control passes to the
+ <code>&lt;switch&gt;</code> node, each of the cases must be considered
+ in order and control must past to the <code>&lt;from-outcome&gt;</code>
+ of the first one whose <code>&lt;if&gt;</code> expression evaluates to
+ <code>true</code>.</p>
+
+ </div>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="case"
+ type="javaee:faces-config-flow-definition-switch-caseType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">Defines a case that must be
+ considered in the list of cases in the
+ <code>&lt;switch&gt;</code>.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="default-outcome"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">Defines the default case that will
+ be taken if none of the other cases in the
+ <code>&lt;switch&gt;</code> are taken.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">The id of this switch. It must be
+ unique within the flow.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-switch-caseType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">Defines a case that will
+ be considered in the <code>&lt;switch&gt;</code>.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="if"
+ type="javaee:faces-config-ifType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">If this EL expression evaluates to
+ <code>true</code>, the corresponding <code>from-outcome</code> will
+ be the outcome taken by the enclosing <code>&lt;switch&gt;</code></p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="from-outcome"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p>The "from-outcome" element contains a logical outcome
+ string returned by the execution of an application
+ action method selected via an "actionRef" property
+ (or a literal value specified by an "action" property)
+ of a UICommand component. If specified, this rule
+ will be relevant only if the outcome value matches
+ this element's value. If not specified, this rule
+ will be relevant if the outcome value is non-null
+ or, if the "if" element is present, will be relevant
+ for any outcome value, with the assumption that the
+ condition specified in the "if" element ultimately
+ determines if this rule is a match.</p>
+
+ <p class="changed_added_2_2">If used in a faces flow, this element
+ represents the node id to which control will be passed.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID">
+ </xsd:attribute>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-flow-returnType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">Define a return node in a flow graph.</p>
+
+ <div class="changed_added_2_2">
+
+ <p>This element must contain exactly one <code>&lt;from-outcome&gt;</code> element.</p>
+ </div>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="from-outcome"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">This element
+ represents the node id to which control will be passed.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">The id of this flow-return.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-flow-callType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">Define a call node in a flow graph.</p>
+
+ <div class="changed_added_2_2">
+
+ <p>This element must contain exactly one <code>&lt;flow-reference&gt;</code> element,
+ which must contain exactly one <code>&lt;flow-id&gt;</code> element.</p>
+ </div>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="flow-reference"
+ type="javaee:faces-config-flow-definition-flow-call-flow-referenceType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">The flow id of the called flow.<p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="outbound-parameter"
+ type="javaee:faces-config-flow-definition-flow-call-outbound-parameterType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">A parameter to pass when calling the flow
+ identified in the "flow-reference" element that is a sibling of this element.<p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"
+ use="required">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">The id of this flow-return.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-flow-call-flow-referenceType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">Identifiy the called flow.</p>
+
+ <div class="changed_added_2_2">
+
+ </div>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="flow-document-id"
+ type="javaee:java-identifierType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p>The document id of the called flow.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="flow-id"
+ type="javaee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p>The id of the called flow.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-initializerType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">A <code>MethodExpression</code> that will be invoked when the flow is entered.<p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:faces-config-el-expressionType">
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-finalizerType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">A <code>MethodExpression</code> that will be invoked when the flow is exited.<p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:faces-config-el-expressionType">
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-inbound-parameterType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">A named parameter whose value will be populated
+ with a correspondingly named parameter within an "outbound-parameter" element.<p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="name"
+ type="javaee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2"> The "name" element within an "inbound-parameter"
+ element declares the name of this parameter
+ to be passed into a flow. There must be
+ a sibling "value" element in the same parent as this element.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="value"
+ type="javaee:faces-config-flow-definition-parameter-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2"> The "value" element within an "inbound-parameter"
+ must be an EL Expression whose value will be set with the correspondingly
+ named "outbound-parameter" when this flow is entered, if such a
+ parameter exists.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-flow-definition-flow-call-outbound-parameterType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">A named parameter whose value will be
+ passed to a correspondingly named parameter within an "inbound-parameter" element
+ on the target flow.<p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="name"
+ type="javaee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2"> The "name" element within an "outbound-parameter" element
+ declares the name of this parameter to be passed out of a flow. There must be
+ a sibling "value" element in the same parent as this element.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="value"
+ type="javaee:faces-config-flow-definition-parameter-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2"> The "value" element within an "outbound-parameter"
+ must be a literal string or an EL Expression whose "get" will be called when the "flow-call"
+ containing this element is traversed to go to a new flow.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-managed-bean-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for managed-bean. It may contain
+ implementation specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-managed-bean-scopeOrNoneType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ [
+
+ <p> Defines the legal values for the <managed-bean-scope>
+ element's body content, which includes all of the scopes
+ normally used in a web application, plus the "none" value
+ indicating that a created bean should not be stored into
+ any scope. Alternatively, an EL expression may be used
+ as the value of this element. The result of evaluating this
+ expression must by of type java.util.Map.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string">
+ <xsd:pattern value="view|request|session|application|none|#\{.*\}"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-managed-propertyType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "managed-property" element represents an individual
+ property of a managed bean that will be configured to the
+ specified value (or value set) if the corresponding
+ managed bean is automatically created.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="property-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "property-name" element represents the JavaBeans
+ property name under which the corresponding value may
+ be stored.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property-class"
+ type="javaee:java-typeType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "property-class" element represents the Java type
+ of the value associated with this property name.
+ If not specified, it can be inferred from existing
+ classes; however, this element should be specified
+ if the configuration file is going to be the source
+ for generating the corresponding classes.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:choice>
+ <xsd:element name="map-entries"
+ type="javaee:faces-config-map-entriesType"/>
+ <xsd:element name="null-value"
+ type="javaee:faces-config-null-valueType"/>
+ <xsd:element name="value"
+ type="javaee:faces-config-valueType"/>
+ <xsd:element name="list-entries"
+ type="javaee:faces-config-list-entriesType"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-map-entryType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "map-entry" element reprsents a single key-entry pair
+ that will be added to the computed value of a managed
+ property of type java.util.Map.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="key"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "key" element is the String representation of a
+ map key that will be stored in a managed property of
+ type java.util.Map.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:choice>
+ <xsd:element name="null-value"
+ type="javaee:faces-config-null-valueType"/>
+ <xsd:element name="value"
+ type="javaee:faces-config-valueType"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-map-entriesType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "map-entries' element represents a set of key-entry pairs
+ that will be added to the computed value of a managed property
+ of type java.util.Map. In addition, the Java class types
+ of the key and entry values may be optionally declared.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="key-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "key-class" element defines the Java type to which
+ each "key" element in a set of "map-entry" elements
+ will be converted to. If omitted, "java.lang.String"
+ is assumed.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="value-class"
+ type="javaee:faces-config-value-classType"
+ minOccurs="0"/>
+ <xsd:element name="map-entry"
+ type="javaee:faces-config-map-entryType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-navigation-caseType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "navigation-case" element describes a particular
+ combination of conditions that must match for this case to
+ be executed, and the view id of the component tree that
+ should be selected next.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="from-action"
+ type="javaee:faces-config-from-actionType"
+ minOccurs="0"/>
+ <xsd:element name="from-outcome"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p>The "from-outcome" element contains a logical outcome
+ string returned by the execution of an application
+ action method selected via an "actionRef" property
+ (or a literal value specified by an "action" property)
+ of a UICommand component. If specified, this rule
+ will be relevant only if the outcome value matches
+ this element's value. If not specified, this rule
+ will be relevant if the outcome value is non-null
+ or, if the "if" element is present, will be relevant
+ for any outcome value, with the assumption that the
+ condition specified in the "if" element ultimately
+ determines if this rule is a match.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="if"
+ type="javaee:faces-config-ifType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Please see section JSF.7.4.2 for the specification of this element.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="to-view-id"
+ type="javaee:faces-config-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p><span class="changed_modified_2_2">The "to-view-id" element
+ contains the view identifier (<span class="changed_added_2_2">or
+ flow node id, or flow id</span>)
+ of the next view (<span class="changed_added_2_2">or flow node or
+ flow</span>) that should be displayed if this
+ navigation rule is matched. If the contents is a
+ value expression, it should be resolved by the
+ navigation handler to obtain the view (
+ <span class="changed_added_2_2">or flow node or flow</span>)
+ identifier.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="to-flow-document-id"
+ type="javaee:java-identifierType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p>The document id of the called flow.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="redirect"
+ type="javaee:faces-config-redirectType"
+ minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-navigation-ruleType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "navigation-rule" element represents an individual
+ decision rule that will be utilized by the default
+ NavigationHandler implementation to make decisions on
+ what view should be displayed next, based on the
+ view id being processed.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="from-view-id"
+ type="javaee:faces-config-from-view-idType"
+ minOccurs="0"/>
+ <xsd:element name="navigation-case"
+ type="javaee:faces-config-navigation-caseType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="navigation-rule-extension"
+ type="javaee:faces-config-navigation-rule-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-navigation-rule-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for navigation-rule. It may contain
+ implementation specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-null-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "null-value" element indicates that the managed
+ property in which we are nested will be explicitly
+ set to null if our managed bean is automatically
+ created. This is different from omitting the managed
+ property element entirely, which will cause no
+ property setter to be called for this property.</p>
+
+ <p>The "null-value" element can only be used when the
+ associated "property-class" identifies a Java class,
+ not a Java primitive.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-propertyType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "property" element represents a JavaBean property of the
+ Java class represented by our parent element.</p>
+
+ <p>Property names must be unique within the scope of the Java
+ class that is represented by the parent element, and must
+ correspond to property names that will be recognized when
+ performing introspection against that class via
+ java.beans.Introspector.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="property-name"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "property-name" element represents the JavaBeans
+ property name under which the corresponding value
+ may be stored.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property-class"
+ type="javaee:java-typeType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "property-class" element represents the Java type
+ of the value associated with this property name.
+ If not specified, it can be inferred from existing
+ classes; however, this element should be specified if
+ the configuration file is going to be the source for
+ generating the corresponding classes.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="default-value"
+ type="javaee:faces-config-default-valueType"
+ minOccurs="0"/>
+ <xsd:element name="suggested-value"
+ type="javaee:faces-config-suggested-valueType"
+ minOccurs="0"/>
+ <xsd:element name="property-extension"
+ type="javaee:faces-config-property-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-protected-viewsType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p class="changed_added_2_2">Any view that matches any of the
+ url-patterns in this element may only be reached from another JSF
+ view in the same web application. Because the runtime is aware of
+ which views are protected, any navigation from an unprotected
+ view to a protected view is automatically subject to
+ protection.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="url-pattern"
+ type="javaee:url-patternType"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-property-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for property. It may contain
+ implementation specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-redirectType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "redirect" element indicates that navigation to the
+ specified "to-view-id" should be accomplished by
+ performing an HTTP redirect rather than the usual
+ ViewHandler mechanisms.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="view-param"
+ type="javaee:faces-config-redirect-viewParamType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="redirect-param"
+ type="javaee:faces-config-redirect-redirectParamType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ <xsd:attribute name="include-view-params"
+ type="xsd:boolean"
+ use="optional"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-redirect-viewParamType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> This element was introduced due to a specification
+ error, and is now deprecated. The correct name for
+ this element is "redirect-param" and its meaning is
+ documented therein. The "view-param" element is
+ maintained to preserve backwards compatibility.
+ Implementations must treat this element the same as
+ "redirect-param".</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="name"
+ type="javaee:string"/>
+ <xsd:element name="value"
+ type="javaee:string"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-redirect-redirectParamType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "redirect-param" element, only valid within
+ a "redirect" element, contains child "name"
+ and "value" elements that must be included in the
+ redirect url when the redirect is performed.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="name"
+ type="javaee:string"/>
+ <xsd:element name="value"
+ type="javaee:string"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-referenced-beanType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "referenced-bean" element represents at design time the
+ promise that a Java object of the specified type will exist at
+ runtime in some scope, under the specified key. This can be
+ used by design time tools to construct user interface dialogs
+ based on the properties of the specified class. The presence
+ or absence of a referenced bean element has no impact on the
+ JavaServer Faces runtime environment inside a web application.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="referenced-bean-name"
+ type="javaee:java-identifierType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "referenced-bean-name" element represents the
+ attribute name under which the corresponding
+ referenced bean may be assumed to be stored, in one
+ of 'request', 'session', 'view', 'application'
+ or a custom scope.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="referenced-bean-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "referenced-bean-class" element represents the
+ fully qualified class name of the Java class
+ (either abstract or concrete) or Java interface
+ implemented by the corresponding referenced bean.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-render-kitType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "render-kit" element represents a concrete RenderKit
+ implementation that should be registered under the specified
+ render-kit-id. If no render-kit-id is specified, the
+ identifier of the default RenderKit
+ (RenderKitFactory.DEFAULT_RENDER_KIT) is assumed.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="render-kit-id"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "render-kit-id" element represents an identifier
+ for the RenderKit represented by the parent
+ "render-kit" element.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="render-kit-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "render-kit-class" element represents the fully
+ qualified class name of a concrete RenderKit
+ implementation class.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="renderer"
+ type="javaee:faces-config-rendererType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="client-behavior-renderer"
+ type="javaee:faces-config-client-behavior-rendererType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="render-kit-extension"
+ type="javaee:faces-config-render-kit-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-client-behavior-rendererType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "client-behavior-renderer" element represents a concrete
+ ClientBehaviorRenderer implementation class that should be
+ registered under the specified behavior renderer type identifier,
+ in the RenderKit associated with the parent "render-kit"
+ element. Client Behavior renderer type must be unique within the RenderKit
+ associated with the parent "render-kit" element.</p>
+
+ <p>Nested "attribute" elements identify generic component
+ attributes that are recognized by this renderer.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="client-behavior-renderer-type"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "client-behavior-renderer-type" element represents a renderer type
+ identifier for the Client Behavior Renderer represented by the parent
+ "client-behavior-renderer" element.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="client-behavior-renderer-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "client-behavior-renderer-class" element represents the fully
+ qualified class name of a concrete Client Behavior Renderer
+ implementation class.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-rendererType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "renderer" element represents a concrete Renderer
+ implementation class that should be registered under the
+ specified component family and renderer type identifiers,
+ in the RenderKit associated with the parent "render-kit"
+ element. Combinations of component family and
+ renderer type must be unique within the RenderKit
+ associated with the parent "render-kit" element.</p>
+
+ <p>Nested "attribute" elements identify generic component
+ attributes that are recognized by this renderer.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="component-family"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "component-family" element represents the
+ component family for which the Renderer represented
+ by the parent "renderer" element will be used.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="renderer-type"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "renderer-type" element represents a renderer type
+ identifier for the Renderer represented by the parent
+ "renderer" element.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="renderer-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "renderer-class" element represents the fully
+ qualified class name of a concrete Renderer
+ implementation class.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="facet"
+ type="javaee:faces-config-facetType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="attribute"
+ type="javaee:faces-config-attributeType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="renderer-extension"
+ type="javaee:faces-config-renderer-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-renderer-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for renderer. It may contain implementation
+ specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-render-kit-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for render-kit. It may contain
+ implementation specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-suggested-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "suggested-value" contains the value for the property or
+ attribute in which this element resides. This value is
+ advisory only and is intended for tools to use when
+ populating pallettes.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:string"/>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-supported-localeType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "supported-locale" element allows authors to declare
+ which locales are supported in this application instance.</p>
+
+ <p>It must be specified as :language:[_:country:[_:variant:]]
+ without the colons, for example "ja_JP_SJIS". The
+ separators between the segments may be '-' or '_'.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="javaee:faces-config-localeType">
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-behaviorType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "behavior" element represents a concrete Behavior
+ implementation class that should be registered under the
+ specified behavior identifier. Behavior identifiers must
+ be unique within the entire web application.</p>
+
+ <p>Nested "attribute" elements identify generic attributes that
+ may be configured on the corresponding UIComponent in order
+ to affect the operation of the Behavior. Nested "property"
+ elements identify JavaBeans properties of the Behavior
+ implementation class that may be configured to affect the
+ operation of the Behavior. "attribute" and "property"
+ elements are intended to allow component developers to
+ more completely describe their components to tools and users.
+ These elements have no required runtime semantics.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="behavior-id"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "behavior-id" element represents the identifier
+ under which the corresponding Behavior class should
+ be registered.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="behavior-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "behavior-class" element represents the fully
+ qualified class name of a concrete Behavior
+ implementation class.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="attribute"
+ type="javaee:faces-config-attributeType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Nested "attribute" elements identify generic
+ attributes that may be configured on the
+ corresponding UIComponent in order to affect the
+ operation of the Behavior. This attribute is
+ primarily for design-time tools and is not
+ specified to have any meaning at runtime.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property"
+ type="javaee:faces-config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Nested "property" elements identify JavaBeans
+ properties of the Behavior implementation class
+ that may be configured to affect the operation of
+ the Behavior. This attribute is primarily for
+ design-time tools and is not specified to have
+ any meaning at runtime.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="behavior-extension"
+ type="javaee:faces-config-behavior-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-behavior-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for behavior. It may contain
+ implementation specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-validatorType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "validator" element represents a concrete Validator
+ implementation class that should be registered under the
+ specified validator identifier. Validator identifiers must
+ be unique within the entire web application.</p>
+
+ <p>Nested "attribute" elements identify generic attributes that
+ may be configured on the corresponding UIComponent in order
+ to affect the operation of the Validator. Nested "property"
+ elements identify JavaBeans properties of the Validator
+ implementation class that may be configured to affect the
+ operation of the Validator. "attribute" and "property"
+ elements are intended to allow component developers to
+ more completely describe their components to tools and users.
+ These elements have no required runtime semantics.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="validator-id"
+ type="javaee:string">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "validator-id" element represents the identifier
+ under which the corresponding Validator class should
+ be registered.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="validator-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "validator-class" element represents the fully
+ qualified class name of a concrete Validator
+ implementation class.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="attribute"
+ type="javaee:faces-config-attributeType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Nested "attribute" elements identify generic
+ attributes that may be configured on the
+ corresponding UIComponent in order to affect the
+ operation of the Validator. This attribute is
+ primarily for design-time tools and is not
+ specified to have any meaning at runtime.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="property"
+ type="javaee:faces-config-propertyType"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Nested "property" elements identify JavaBeans
+ properties of the Validator implementation class
+ that may be configured to affect the operation of
+ the Validator. This attribute is primarily for
+ design-time tools and is not specified to have
+ any meaning at runtime.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="validator-extension"
+ type="javaee:faces-config-validator-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-validator-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> Extension element for validator. It may contain
+ implementation specific content.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any minOccurs="0"
+ maxOccurs="unbounded"
+ namespace="##any"
+ processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:simpleType name="faces-config-valueType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "value" element is the String representation of
+ a literal value to which a scalar managed property
+ will be set, or a value binding expression ("#{...}")
+ that will be used to calculate the required value.
+ It will be converted as specified for the actual
+ property type.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:union memberTypes="javaee:faces-config-el-expressionType xsd:string"/>
+ </xsd:simpleType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-value-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "value-class" element defines the Java type to which each
+ "value" element's value will be converted to, prior to adding
+ it to the "list-entries" list for a managed property that is
+ a java.util.List, or a "map-entries" map for a managed
+ property that is a java.util.Map.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:restriction base="javaee:fully-qualified-classType">
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:restriction>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-list-entriesType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "list-entries" element represents a set of initialization
+ elements for a managed property that is a java.util.List or an
+ array. In the former case, the "value-class" element can
+ optionally be used to declare the Java type to which each
+ value should be converted before adding it to the Collection.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="value-class"
+ type="javaee:faces-config-value-classType"
+ minOccurs="0"/>
+ <xsd:choice minOccurs="0"
+ maxOccurs="unbounded">
+ <xsd:element name="null-value"
+ type="javaee:faces-config-null-valueType"/>
+ <xsd:element name="value"
+ type="javaee:faces-config-valueType"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+
+<!-- **************************************************** -->
+
+ <xsd:complexType name="faces-config-system-event-listenerType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The presence of this element within the "application" element in
+ an application configuration resource file indicates the
+ developer wants to add an SystemEventListener to this
+ application instance. Elements nested within this element allow
+ selecting the kinds of events that will be delivered to the
+ listener instance, and allow selecting the kinds of classes that
+ can be the source of events that are delivered to the listener
+ instance.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="system-event-listener-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "system-event-listener-class" element contains
+ the fully qualified class name of the concrete
+ SystemEventListener implementation class that will be
+ called when events of the type specified by the
+ "system-event-class" are sent by the runtime.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="system-event-class"
+ type="javaee:fully-qualified-classType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "system-event-class" element contains the fully
+ qualified class name of the SystemEvent subclass for
+ which events will be delivered to the class whose fully
+ qualified class name is given by the
+ "system-event-listener-class" element.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="source-class"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> The "source-class" element, if present, contains the
+ fully qualified class name of the class that will be the
+ source for the event to be delivered to the class whose
+ fully qualified class name is given by the
+ "system-event-listener-class" element.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="id"
+ type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:simpleType name="faces-config-versionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ <p> This type contains the recognized versions of
+ faces-config supported.</p>
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="2.2"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+</xsd:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-fragment_3_1.xsd b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-fragment_3_1.xsd
new file mode 100644
index 0000000000..0cefe4ec25
--- /dev/null
+++ b/bundles/org.eclipse.jst.standard.schemas/dtdsAndSchemas/web-fragment_3_1.xsd
@@ -0,0 +1,272 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="3.1">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright (c) 2009-2013 Oracle and/or its affiliates. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License"). You
+ may not use this file except in compliance with the License. You can
+ obtain a copy of the License at
+ https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
+ or packager/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at packager/legal/LICENSE.txt.
+
+ GPL Classpath Exception:
+ Oracle designates this particular file as subject to the "Classpath"
+ exception as provided by Oracle in the GPL Version 2 section of the License
+ file that accompanied this code.
+
+ Modifications:
+ If applicable, add the following below the License Header, with the fields
+ enclosed by brackets [] replaced by your own identifying information:
+ "Portions Copyright [year] [name of copyright owner]"
+
+ Contributor(s):
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+ <![CDATA[[
+ This is the XML Schema for the Servlet 3.1 deployment descriptor.
+ The deployment descriptor must be named "META-INF/web-fragment.xml"
+ in the web fragment's jar file. All Servlet deployment descriptors
+ must indicate the web application schema by using the Java EE
+ namespace:
+
+ http://xmlns.jcp.org/xml/ns/javaee
+
+ and by indicating the version of the schema by
+ using the version element as shown below:
+
+ <web-fragment xmlns="http://xmlns.jcp.org/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="..."
+ version="3.1">
+ ...
+ </web-fragment>
+
+ The instance documents may indicate the published version of
+ the schema using the xsi:schemaLocation attribute for Java EE
+ namespace with the following location:
+
+ http://xmlns.jcp.org/xml/ns/javaee/web-fragment_3_1.xsd
+
+ ]]>
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The following conventions apply to all Java EE
+ deployment descriptor elements unless indicated otherwise.
+
+ - In elements that specify a pathname to a file within the
+ same JAR file, relative filenames (i.e., those not
+ starting with "/") are considered relative to the root of
+ the JAR file's namespace. Absolute filenames (i.e., those
+ starting with "/") also specify names in the root of the
+ JAR file's namespace. In general, relative names are
+ preferred. The exception is .war files where absolute
+ names are preferred for consistency with the Servlet API.
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:include schemaLocation="web-common_3_1.xsd"/>
+
+
+<!-- **************************************************** -->
+
+ <xsd:element name="web-fragment"
+ type="javaee:web-fragmentType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The web-fragment element is the root of the deployment
+ descriptor for a web fragment. Note that the sub-elements
+ of this element can be in the arbitrary order. Because of
+ that, the multiplicity of the elements of distributable,
+ session-config, welcome-file-list, jsp-config, login-config,
+ and locale-encoding-mapping-list was changed from "?" to "*"
+ in this schema. However, the deployment descriptor instance
+ file must not contain multiple elements of session-config,
+ jsp-config, and login-config. When there are multiple elements of
+ welcome-file-list or locale-encoding-mapping-list, the container
+ must concatenate the element contents. The multiple occurence
+ of the element distributable is redundant and the container
+ treats that case exactly in the same way when there is only
+ one distributable.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:unique name="web-common-servlet-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The servlet element contains the name of a servlet.
+ The name must be unique within the web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:servlet"/>
+ <xsd:field xpath="javaee:servlet-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-filter-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The filter element contains the name of a filter.
+ The name must be unique within the web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:filter"/>
+ <xsd:field xpath="javaee:filter-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-ejb-local-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-local-ref-name element contains the name of an EJB
+ reference. The EJB reference is an entry in the web
+ application's environment and is relative to the
+ java:comp/env context. The name must be unique within
+ the web application.
+
+ It is recommended that name is prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-local-ref"/>
+ <xsd:field xpath="javaee:ejb-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-ejb-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The ejb-ref-name element contains the name of an EJB
+ reference. The EJB reference is an entry in the web
+ application's environment and is relative to the
+ java:comp/env context. The name must be unique within
+ the web application.
+
+ It is recommended that name is prefixed with "ejb/".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:ejb-ref"/>
+ <xsd:field xpath="javaee:ejb-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-resource-env-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The resource-env-ref-name element specifies the name of
+ a resource environment reference; its value is the
+ environment entry name used in the web application code.
+ The name is a JNDI name relative to the java:comp/env
+ context and must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-env-ref"/>
+ <xsd:field xpath="javaee:resource-env-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-message-destination-ref-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The message-destination-ref-name element specifies the name of
+ a message destination reference; its value is the
+ environment entry name used in the web application code.
+ The name is a JNDI name relative to the java:comp/env
+ context and must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:message-destination-ref"/>
+ <xsd:field xpath="javaee:message-destination-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-res-ref-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The res-ref-name element specifies the name of a
+ resource manager connection factory reference. The name
+ is a JNDI name relative to the java:comp/env context.
+ The name must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:resource-ref"/>
+ <xsd:field xpath="javaee:res-ref-name"/>
+ </xsd:unique>
+ <xsd:unique name="web-common-env-entry-name-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The env-entry-name element contains the name of a web
+ application's environment entry. The name is a JNDI
+ name relative to the java:comp/env context. The name
+ must be unique within a web application.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:env-entry"/>
+ <xsd:field xpath="javaee:env-entry-name"/>
+ </xsd:unique>
+ <xsd:key name="web-common-role-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ A role-name-key is specified to allow the references
+ from the security-role-refs.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:security-role"/>
+ <xsd:field xpath="javaee:role-name"/>
+ </xsd:key>
+ <xsd:keyref name="web-common-role-name-references"
+ refer="javaee:web-common-role-name-key">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The keyref indicates the references from
+ security-role-ref to a specified role-name.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:servlet/javaee:security-role-ref"/>
+ <xsd:field xpath="javaee:role-link"/>
+ </xsd:keyref>
+ </xsd:element>
+
+</xsd:schema>
diff --git a/bundles/org.eclipse.jst.standard.schemas/plugin.xml b/bundles/org.eclipse.jst.standard.schemas/plugin.xml
index 034a4bae6a..c4557ad50e 100644
--- a/bundles/org.eclipse.jst.standard.schemas/plugin.xml
+++ b/bundles/org.eclipse.jst.standard.schemas/plugin.xml
@@ -29,6 +29,9 @@
<uri
name="http://java.sun.com/xml/ns/javaee/application_6.xsd"
uri="dtdsAndSchemas/application_6.xsd" />
+ <uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/application_7.xsd"
+ uri="dtdsAndSchemas/application_7.xsd" />
<public
@@ -48,6 +51,9 @@
<uri
name="http://java.sun.com/xml/ns/javaee/application-client_6.xsd"
uri="dtdsAndSchemas/application-client_6.xsd" />
+ <uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/application-client_6.xsd"
+ uri="dtdsAndSchemas/application-client_7.xsd" />
<public
@@ -60,6 +66,9 @@
<uri
name="http://java.sun.com/xml/ns/j2ee/connector_1_6.xsd"
uri="dtdsAndSchemas/connector_1_6.xsd" />
+ <uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/connector_1_7.xsd"
+ uri="dtdsAndSchemas/connector_1_7.xsd" />
<public
@@ -79,6 +88,9 @@
<uri
name="http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd"
uri="dtdsAndSchemas/ejb-jar_3_1.xsd" />
+ <uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/ejb-jar_3_2.xsd"
+ uri="dtdsAndSchemas/ejb-jar_3_2.xsd" />
<uri
@@ -115,6 +127,9 @@
<uri
name="http://java.sun.com/xml/ns/javaee/javaee_6.xsd"
uri="dtdsAndSchemas/javaee_6.xsd" />
+ <uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/javaee_7.xsd"
+ uri="dtdsAndSchemas/javaee_7.xsd" />
<uri
@@ -124,11 +139,18 @@
name="http://java.sun.com/xml/ns/javaee/javaee_web_services_1_3.xsd"
uri="dtdsAndSchemas/javaee_web_services_1_3.xsd" />
<uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/javaee_web_services_1_4.xsd"
+ uri="dtdsAndSchemas/javaee_web_services_1_4.xsd" />
+
+ <uri
name="http://java.sun.com/xml/ns/javaee/javaee_web_services_client_1_2.xsd"
uri="dtdsAndSchemas/javaee_web_services_client_1_2.xsd" />
<uri
name="http://java.sun.com/xml/ns/javaee/javaee_web_services_client_1_3.xsd"
uri="dtdsAndSchemas/javaee_web_services_client_1_3.xsd" />
+ <uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/javaee_web_services_client_1_4.xsd"
+ uri="dtdsAndSchemas/javaee_web_services_client_1_4.xsd" />
<uri
name="http://java.sun.com/xml/ns/j2ee/jsp_2_0.xsd"
@@ -139,6 +161,9 @@
<uri
name="http://java.sun.com/xml/ns/javaee/jsp_2_2.xsd"
uri="dtdsAndSchemas/jsp_2_2.xsd" />
+ <uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/jsp_2_3.xsd"
+ uri="dtdsAndSchemas/jsp_2_3.xsd" />
<public
@@ -162,11 +187,22 @@
name="http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
uri="dtdsAndSchemas/web-app_3_0.xsd" />
<uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
+ uri="dtdsAndSchemas/web-app_3_1.xsd" />
+
+ <uri
name="http://java.sun.com/xml/ns/javaee/web-common_3_0.xsd"
uri="dtdsAndSchemas/web-common_3_0.xsd" />
<uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/web-common_3_1.xsd"
+ uri="dtdsAndSchemas/web-common_3_1.xsd" />
+
+ <uri
name="http://java.sun.com/xml/ns/javaee/web-fragment_3_0.xsd"
uri="dtdsAndSchemas/web-fragment_3_0.xsd" />
+ <uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/web-fragment_3_1.xsd"
+ uri="dtdsAndSchemas/web-fragment_3_1.xsd" />
<public
@@ -228,20 +264,29 @@
name="http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd"
uri="dtdsAndSchemas/web-facelettaglibrary_2_0.xsd"/>
<uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/web-facelettaglibrary_2_2.xsd"
+ uri="dtdsAndSchemas/web-facelettaglibrary_2_2.xsd"/>
+
+ <uri
name="http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
uri="dtdsAndSchemas/web-facesconfig_2_0.xsd"/>
<uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd"
+ uri="dtdsAndSchemas/web-facesconfig_2_2.xsd"/>
+
+ <uri
name="http://java.sun.com/xml/ns/javaee/web-facesuicomponent_2_0.xsd"
uri="dtdsAndSchemas/web-facesuicomponent_2_0.xsd"/>
<uri
name="http://java.sun.com/xml/ns/javaee/web-partialresponse_2_0.xsd"
uri="dtdsAndSchemas/web-partialresponse_2_0.xsd"/>
+
<uri
name="http://java.sun.com/xml/ns/javaee/beans_1_0.xsd"
- uri="dtdsAndSchemas/beans_1_0.xsd">
- </uri>
-
-
+ uri="dtdsAndSchemas/beans_1_0.xsd"/>
+ <uri
+ name="http://xmlns.jcp.org/xml/ns/javaee/beans_1_0.xsd"
+ uri="dtdsAndSchemas/beans_1_1.xsd"/>
</catalogContribution>

Back to the top