...
Geronimo Application XML Schema Document
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<?xml version="1.0" encoding="UTF-8"?> <!-- Copyright 2004 The Apache Software Foundation Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <xs:schema xmlns:geronimo="http://geronimo.apache.org/xml/ns/j2ee/application-1.1" targetNamespace="http://geronimo.apache.org/xml/ns/j2ee/application-1.1" xmlns:security="http://geronimo.apache.org/xml/ns/security-1.1" xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0"> <xs:import namespace="http://geronimo.apache.org/xml/ns/security-1.1" schemaLocation="geronimo-security-1.1.xsd"/> <xs:import namespace="http://geronimo.apache.org/xml/ns/deployment-1.1" schemaLocation="geronimo-module-1.1.xsd"/> <xs:element name="application" type="geronimo:applicationType"/> <xs:complexType name="applicationType"> <xs:sequence> <xs:element ref="sys:environment"/> <xs:element name="module" type="geronimo:moduleType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="ext-module" type="geronimo:ext-moduleType" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="security:security" minOccurs="0"/> <xs:element ref="sys:gbean" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <!--TODO application name should be settable using name-key in the environment. Does this work? --> <xs:attribute name="application-name" type="xs:string" use="optional"/> </xs:complexType> <xs:complexType name="moduleType"> <xs:annotation> <xs:documentation> Mirrors the moduleType defined by application_1_4.xsd and adds an optional alt-dd element defining a Geronimo specific deployment descriptor. </xs:documentation> </xs:annotation> <xs:sequence> <xs:choice> <xs:element name="connector" type="geronimo:pathType"/> <xs:element name="ejb" type="geronimo:pathType"/> <xs:element name="java" type="geronimo:pathType"/> <xs:element name="web" type="geronimo:pathType"/> </xs:choice> <xs:choice> <xs:element name="alt-dd" type="geronimo:pathType"> <xs:annotation> <xs:documentation> Specifies an optional URI to the post-assembly version of the Geronimo specific deployment descriptor file for a particular J2EE module. </xs:documentation> </xs:annotation> </xs:element> <xs:any namespace="##other" processContents="lax"/> </xs:choice> </xs:sequence> </xs:complexType> <xs:complexType name="ext-moduleType"> <xs:annotation> <xs:documentation> Mirrors the moduleType defined by application_1_4.xsd and adds an optional alt-dd element defining a Geronimo specific deployment descriptor. </xs:documentation> </xs:annotation> <xs:sequence> <xs:choice> <xs:annotation> <xs:documentation> This is the name for the module, not the path inside the ear. </xs:documentation> </xs:annotation> <xs:element name="connector" type="geronimo:pathType"/> <xs:element name="ejb" type="geronimo:pathType"/> <xs:element name="java" type="geronimo:pathType"/> <xs:element name="web" type="geronimo:pathType"/> </xs:choice> <xs:choice> <xs:element name="internal-path" type="xs:token"/> <xs:element name="external-path" type="xs:token"/> </xs:choice> <!--TODO consider an alt-spec-dd element--> <!--Do not allow vendor plan inside ear. If it is in the ear, this does not need to be an external module --> <xs:any namespace="##other" processContents="lax"/> </xs:sequence> </xs:complexType> <xs:complexType name="pathType"> <xs:annotation> <xs:documentation> Mirrors j2ee:pathType. </xs:documentation> </xs:annotation> <xs:simpleContent> <xs:restriction base="geronimo:string"/> </xs:simpleContent> </xs:complexType> <xs:complexType name="string"> <xs:annotation> <xs:documentation> Mirrors j2ee:string. </xs:documentation> </xs:annotation> <xs:simpleContent> <xs:extension base="xs:token"> <xs:attribute name="id" type="xs:ID"/> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:schema> |
...
Prefix | Namespace | Description |
---|---|---|
xml | http://www.w3.org/XML/1998/namespace | The namespace whose name is http://www.w3.org/XML/1998/namespaceis bound by definition to the prefix xml: according to Namespaces in XML, W3C Recommendation 14 Jan 1999 |
Geronimo | http://geronimo.apache.org/xml/ns/j2ee/application-1.1 | This is the target name space defined for Geronimo EAR applications |
security | http://geronimo.apache.org/xml/ns/security-1.1 | This schema describes Common security elements used by other plans in Security Mapping module. |
sys | http://geronimo.apache.org/xml/ns/deployment-1.1 | This schema Used to deploy new services in Geronimo in a standalone plan, and also contains common elements used by many other plans and the module type is Server Plans & Common Elements |
xs | http://www.w3.org/2001/XMLSchema | This document describes the XML Schema namespace. It also contains a directory of links to these related resources, using Resource Directory Description Language http://www.rddl.org/ |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
xs:schema xmlns:geronimo="http://geronimo.apache.org/xml/ns/j2ee/application-1.1" targetNamespace="http://geronimo.apache.org/xml/ns/j2ee/application-1.1" xmlns:security="http://geronimo.apache.org/xml/ns/security-1.1" xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0"> <xs:import namespace="http://geronimo.apache.org/xml/ns/security-1.1" schemaLocation="geronimo-security-1.1.xsd"/> <xs:import namespace="http://geronimo.apache.org/xml/ns/deployment-1.1" schemaLocation="geronimo-module-1.1.xsd"/> ...... </xs schema> |
...
Name | Application |
Type | N/A |
Geronimo | ApplicationType |
Nillable | No |
Abstract | No |
Documentation | The application element is the root element of a |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<geronimo:application> <dep:moduleId="xs:string[o..1]" > <dep:groupId="xs:string[1]"> <dep:artifactId="xs:string[1]"> <dep:version="xs:string[1]"> <dep:type="xs:string[1]"> <sys:import> ... </sys:import> [0..*] <sys:dependency> ... </sys:dependency> [0..*] <geronimo:module> geronimo:moduleType </geronimo:module> [0..*] <geronimo:ext-module> geronimo:ext-moduleType </geronimo:ext-module> [0..*] <security:security> ... </security:security> [0..1] <sys:gbean> ... </sys:gbean> [0..*] </geronimo:application> |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<xs:element name="application" type="geronimo:applicationType"/> |
...
Super-types | None |
Sub-types | None |
Name | applicationType |
Abstract | no |
Documentation | The applicationType defines the structure of the application in geronimo. |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<... <sys:environment>...</sys:environment> application-name=" xs:string [0..1]"> <sys:import> ... </sys:import> [0..*] <sys:dependency> ... </sys:dependency> [0..*] <geronimo:module> geronimo:moduleType </geronimo:module> [0..*] <geronimo:ext-module> geronimo:ext-moduleType </geronimo:ext-module> [0..*] <security:security> ... </security:security> [0..1] <sys:gbean> ... </sys:gbean> [0..*] </...> |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<xs:complexType name="applicationType"> <xs:sequence> <xs:element ref="sys:environment"/> <xs:element name="module" type="geronimo:moduleType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="ext-module" type="geronimo:ext-moduleType" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="security:security" minOccurs="0"/> <xs:element ref="sys:gbean" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <!--TODO application name should be settable using name-key in the environment. Does this work? --> <xs:attribute name="application-name" type="xs:string" use="optional"/> </xs:complexType> |
...
Super-types | None |
Sub-types | None |
Name | ext-moduleType |
Abstract | no |
Documentation | Mirrors the moduleType defined by application_1_4.xsd and adds an optional alt-dd element |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<xs:complexType name="ext-moduleType"> <xs:annotation> <xs:documentation> Mirrors the moduleType defined by application_1_4.xsd and adds an optional alt-dd element defining a Geronimo specific deployment descriptor. </xs:documentation> </xs:annotation> <xs:sequence> <xs:choice> <xs:annotation> <xs:documentation> This is the name for the module, not the path inside the ear. </xs:documentation> </xs:annotation> <xs:element name="connector" type="geronimo:pathType"/> <xs:element name="ejb" type="geronimo:pathType"/> <xs:element name="java" type="geronimo:pathType"/> <xs:element name="web" type="geronimo:pathType"/> </xs:choice> <xs:choice> <xs:element name="internal-path" type="xs:token"/> <xs:element name="external-path" type="xs:token"/> </xs:choice> <!--TODO consider an alt-spec-dd element--> <!--Do not allow vendor plan inside ear. If it is in the ear, this does not need to be an external module --> <xs:any namespace="##other" processContents="lax"/> </xs:sequence> </xs:complexType> |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<xs:complexType name="pathType"> <xs:annotation> <xs:documentation> Mirrors j2ee:pathType. </xs:documentation> </xs:annotation> <xs:simpleContent> <xs:restriction base="geronimo:string"/> </xs:simpleContent> </xs:complexType> |
...
Super-types | xs:token < string (by extension) |
Sub-types | None |
Name | string |
Abstract | no |
Documentation | Mirrors j2ee:string. |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<... id=" xs:ID [0..1]"> xs:token </...> |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<xs:complexType name="string"> <xs:simpleContent> <xs:extension base="xs:token"> <xs:attribute name="id" type="xs:ID"/> </xs:extension> </xs:simpleContent> </xs:complexType > |
...
The table above displays the properties of this schema component.
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<... country="Australia" > <unitNo> string </unitNo> [0..1] <houseNo> string </houseNo> [1] <street> string </street> [1] Start Choice [1] <city> string </city> [1] <town> string </town> [1] End Choice <state> AusStates </state> [1] <postcode> string <<pattern = [1-9][0-9]{3}>> </postcode> [1] ? </...> |
...
- The minimum and maximum occurrence of elements and attributes are provided in square brackets, e.g.
[0..1]
. - Model group information are shown in gray, e.g. Start Choice ... End Choice.
- For type derivations, the elements and attributes that have been added to or changed from the base type's content are shown in bold.
- If an element/attribute has a fixed value, the fixed value is shown in green, e.g. country="Australia".
- Otherwise, the type of the element/attribute is displayed.
- If the element/attribute's type is in the schema, a link is provided to it.
- For local simple type definitions, the constraints are displayed in angle brackets, e.g.
<pattern = [1-9][0-9]{3}/>
- If a local element/attribute has documentation, it will be displayed in a window that pops up when the question mark inside the attribute or next to the element is clicked, e.g.
<postcode>
.
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<complexType name="AusAddress"> <complexContent> <extension base=" Address "> <sequence> <element name="state" type=" AusStates "/> <element name="postcode"> <simpleType> <restriction base=" string "> <pattern value="[1-9][0-9]{3}"/> </restriction> </simpleType> </element> </sequence> <attribute name="country" type=" string " fixed="Australia"/> </extension> </complexContent> </complexType> |
...