blob: 45096620862372fbc3917e455aea6aa0e755c6d4 [file] [log] [blame]
david_williamse073de12007-04-28 04:01:44 +00001<?xml version="1.0" encoding="UTF-8"?>
2
3<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
4 targetNamespace="http://java.sun.com/xml/ns/javaee"
5 xmlns:javaee="http://java.sun.com/xml/ns/javaee"
6 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
7 elementFormDefault="qualified"
8 attributeFormDefault="unqualified"
9 version="5">
10 <xsd:annotation>
11 <xsd:documentation>
12 @(#)application_5.xsds 1.17 08/05/05
13 </xsd:documentation>
14 </xsd:annotation>
15
16 <xsd:annotation>
17 <xsd:documentation>
18
19 Copyright 2003-2005 Sun Microsystems, Inc.
20 4150 Network Circle
21 Santa Clara, California 95054
22 U.S.A
23 All rights reserved.
24
25 Sun Microsystems, Inc. has intellectual property rights
26 relating to technology described in this document. In
27 particular, and without limitation, these intellectual
28 property rights may include one or more of the U.S. patents
29 listed at http://www.sun.com/patents and one or more
30 additional patents or pending patent applications in the
31 U.S. and other countries.
32
33 This document and the technology which it describes are
34 distributed under licenses restricting their use, copying,
35 distribution, and decompilation. No part of this document
36 may be reproduced in any form by any means without prior
37 written authorization of Sun and its licensors, if any.
38
39 Third-party software, including font technology, is
40 copyrighted and licensed from Sun suppliers.
41
42 Sun, Sun Microsystems, the Sun logo, Solaris, Java, J2EE,
43 JavaServer Pages, Enterprise JavaBeans and the Java Coffee
44 Cup logo are trademarks or registered trademarks of Sun
45 Microsystems, Inc. in the U.S. and other countries.
46
47 Federal Acquisitions: Commercial Software - Government Users
48 Subject to Standard License Terms and Conditions.
49
50 </xsd:documentation>
51 </xsd:annotation>
52
53 <xsd:annotation>
54 <xsd:documentation>
55 <![CDATA[
56
57 This is the XML Schema for the application 5 deployment
58 descriptor. The deployment descriptor must be named
59 "META-INF/application.xml" in the application's ear file.
60 All application deployment descriptors must indicate
61 the application schema by using the Java EE namespace:
62
63 http://java.sun.com/xml/ns/javaee
64
65 and indicate the version of the schema by
66 using the version element as shown below:
67
68 <application xmlns="http://java.sun.com/xml/ns/javaee"
69 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
70 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
71 http://java.sun.com/xml/ns/javaee/application_5.xsd"
72 version="5">
73 ...
74 </application>
75
76 The instance documents may indicate the published version of
77 the schema using the xsi:schemaLocation attribute for Java EE
78 namespace with the following location:
79
80 http://java.sun.com/xml/ns/javaee/application_5.xsd
81
82 ]]>
83 </xsd:documentation>
84 </xsd:annotation>
85
86 <xsd:annotation>
87 <xsd:documentation>
88
89 The following conventions apply to all Java EE
90 deployment descriptor elements unless indicated otherwise.
91
92 - In elements that specify a pathname to a file within the
93 same JAR file, relative filenames (i.e., those not
94 starting with "/") are considered relative to the root of
95 the JAR file's namespace. Absolute filenames (i.e., those
96 starting with "/") also specify names in the root of the
97 JAR file's namespace. In general, relative names are
98 preferred. The exception is .war files where absolute
99 names are preferred for consistency with the Servlet API.
100
101 </xsd:documentation>
102 </xsd:annotation>
103
104 <xsd:include schemaLocation="javaee_5.xsd"/>
105
106
107<!-- **************************************************** -->
108
109
110 <xsd:element name="application" type="javaee:applicationType">
111 <xsd:annotation>
112 <xsd:documentation>
113
114 The application element is the root element of a Java EE
115 application deployment descriptor.
116
117 </xsd:documentation>
118 </xsd:annotation>
119
120 <xsd:unique name="context-root-uniqueness">
121 <xsd:annotation>
122 <xsd:documentation>
123
124 The context-root element content must be unique
125 in the ear.
126
127 </xsd:documentation>
128 </xsd:annotation>
129 <xsd:selector xpath="javaee:module/javaee:web"/>
130 <xsd:field xpath="javaee:context-root"/>
131 </xsd:unique>
132
133 <xsd:unique name="security-role-uniqueness">
134 <xsd:annotation>
135 <xsd:documentation>
136
137 The security-role-name element content
138 must be unique in the ear.
139
140 </xsd:documentation>
141 </xsd:annotation>
142 <xsd:selector xpath="javaee:security-role"/>
143 <xsd:field xpath="javaee:role-name"/>
144 </xsd:unique>
145
146 </xsd:element>
147
148<!-- **************************************************** -->
149
150 <xsd:complexType name="applicationType">
151 <xsd:annotation>
152 <xsd:documentation>
153
154 The applicationType defines the structure of the
155 application.
156
157 </xsd:documentation>
158 </xsd:annotation>
159
160 <xsd:sequence>
161 <xsd:group ref="javaee:descriptionGroup"/>
162 <xsd:element name="module"
163 type="javaee:moduleType"
164 maxOccurs="unbounded">
165 <xsd:annotation>
166 <xsd:documentation>
167
168 The application deployment descriptor must have one
169 module element for each Java EE module in the
170 application package. A module element is defined
171 by moduleType definition.
172
173 </xsd:documentation>
174 </xsd:annotation>
175 </xsd:element>
176 <xsd:element name="security-role"
177 type="javaee:security-roleType"
178 minOccurs="0"
179 maxOccurs="unbounded"/>
180 <xsd:element name="library-directory"
181 type="javaee:pathType"
182 minOccurs="0"
183 maxOccurs="1">
184 <xsd:annotation>
185 <xsd:documentation>
186
187 The library-directory element specifies the pathname
188 of a directory within the application package, relative
189 to the top level of the application package. All files
190 named "*.jar" in this directory must be made available
191 in the class path of all components included in this
192 application package. If this element isn't specified,
193 the directory named "lib" is searched. An empty element
194 may be used to disable searching.
195
196 </xsd:documentation>
197 </xsd:annotation>
198 </xsd:element>
199 </xsd:sequence>
200 <xsd:attribute name="version"
201 type="javaee:dewey-versionType"
202 fixed="5"
203 use="required">
204 <xsd:annotation>
205 <xsd:documentation>
206
207 The required value for the version is 5.
208
209 </xsd:documentation>
210 </xsd:annotation>
211 </xsd:attribute>
212
213 <xsd:attribute name="id" type="xsd:ID"/>
214 </xsd:complexType>
215
216<!-- **************************************************** -->
217
218 <xsd:complexType name="moduleType">
219 <xsd:annotation>
220 <xsd:documentation>
221
222 The moduleType defines a single Java EE module and contains a
223 connector, ejb, java, or web element, which indicates the
224 module type and contains a path to the module file, and an
225 optional alt-dd element, which specifies an optional URI to
226 the post-assembly version of the deployment descriptor.
227
228 </xsd:documentation>
229 </xsd:annotation>
230
231 <xsd:sequence>
232 <xsd:choice>
233 <xsd:element name="connector"
234 type="javaee:pathType">
235 <xsd:annotation>
236 <xsd:documentation>
237
238 The connector element specifies the URI of a
239 resource adapter archive file, relative to the
240 top level of the application package.
241
242 </xsd:documentation>
243 </xsd:annotation>
244 </xsd:element>
245 <xsd:element name="ejb"
246 type="javaee:pathType">
247 <xsd:annotation>
248 <xsd:documentation>
249
250 The ejb element specifies the URI of an ejb-jar,
251 relative to the top level of the application
252 package.
253
254 </xsd:documentation>
255 </xsd:annotation>
256 </xsd:element>
257 <xsd:element name="java"
258 type="javaee:pathType">
259 <xsd:annotation>
260 <xsd:documentation>
261
262 The java element specifies the URI of a java
263 application client module, relative to the top
264 level of the application package.
265
266 </xsd:documentation>
267 </xsd:annotation>
268 </xsd:element>
269 <xsd:element name="web"
270 type="javaee:webType"/>
271 </xsd:choice>
272 <xsd:element name="alt-dd"
273 type="javaee:pathType"
274 minOccurs="0">
275 <xsd:annotation>
276 <xsd:documentation>
277
278 The alt-dd element specifies an optional URI to the
279 post-assembly version of the deployment descriptor
280 file for a particular Java EE module. The URI must
281 specify the full pathname of the deployment
282 descriptor file relative to the application's root
283 directory. If alt-dd is not specified, the deployer
284 must read the deployment descriptor from the default
285 location and file name required by the respective
286 component specification.
287
288 </xsd:documentation>
289 </xsd:annotation>
290 </xsd:element>
291 </xsd:sequence>
292 <xsd:attribute name="id" type="xsd:ID"/>
293 </xsd:complexType>
294
295<!-- **************************************************** -->
296
297 <xsd:complexType name="webType">
298 <xsd:annotation>
299 <xsd:documentation>
300
301 The webType defines the web-uri and context-root of
302 a web application module.
303
304 </xsd:documentation>
305 </xsd:annotation>
306 <xsd:sequence>
307 <xsd:element name="web-uri"
308 type="javaee:pathType">
309 <xsd:annotation>
310 <xsd:documentation>
311
312 The web-uri element specifies the URI of a web
313 application file, relative to the top level of the
314 application package.
315
316 </xsd:documentation>
317 </xsd:annotation>
318 </xsd:element>
319 <xsd:element name="context-root"
320 type="javaee:string">
321
322 <xsd:annotation>
323 <xsd:documentation>
324
325 The context-root element specifies the context root
326 of a web application.
327
328 </xsd:documentation>
329 </xsd:annotation>
330 </xsd:element>
331 </xsd:sequence>
332 <xsd:attribute name="id" type="xsd:ID"/>
333 </xsd:complexType>
334
335</xsd:schema>
336