| <?xml version="1.0" encoding="UTF-8"?> | |
| <!-- | |
| Licensed to the Apache Software Foundation (ASF) under one or more | |
| contributor license agreements. See the NOTICE file distributed with | |
| this work for additional information regarding copyright ownership. | |
| The ASF licenses this file to You 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 targetNamespace="http://geronimo.apache.org/xml/ns/deployment-1.2" | |
| xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.2" | |
| xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" | |
| attributeFormDefault="unqualified"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| This is an XML Schema Definition for Geronimo service deployment | |
| plan. This deployment plan is used for deploying service modules | |
| which contains non-application GBeans like thread pool, the | |
| tomcat/jetty container, security manager, etc. In case the Service | |
| deployment plan is provided internally in the java archive, it | |
| should be named META-INF/geronimo-service.xml. In case the Service | |
| deployment plan is provided externally, the deployment descriptor | |
| can be named anything and provided to the deploy tool. All the | |
| Service deployment plan must specify the top level element as module | |
| with namespace specified as | |
| xmlns="http://geronimo.apache.org/xml/ns/deployment-1.2". The default | |
| location for this document is | |
| http://geronimo.apache.org/xml/ns/deployment-1.2 | |
| Typical Geronimo Service Deployment plan will look like this: | |
| <![CDATA[ | |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <module | |
| xmlns="http://geronimo.apache.org/xml/ns/deployment-1.2"> | |
| <environment> | |
| ... | |
| </environment> | |
| <gbean> | |
| ... | |
| </gbean> | |
| </module> | |
| ]]> | |
| </xs:documentation> | |
| </xs:annotation> | |
| <xs:element name="module" type="sys:moduleType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The module element is the root element of the deployment plan | |
| for the Geronimo Service module. Note that the sub-elements of | |
| this element should be as in the given order in a sequence. It | |
| includes two basic sections, environment section to provide | |
| information like moduleName, dependencies, etc. and gbean | |
| section to provide information about individual beans contained | |
| in this module. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:complexType name="moduleType"> | |
| <xs:sequence> | |
| <xs:element ref="sys:environment"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| Reference to environment element defined later in this | |
| xsd. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element ref="sys:service" minOccurs="0" maxOccurs="unbounded"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| Reference to service element defined later in this xsd. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| </xs:sequence> | |
| </xs:complexType> | |
| <xs:element name="environment" type="sys:environmentType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The environment element defines elements to store information | |
| like moduleId, dependencies, and classloader Info for the | |
| module. This element is used in all the Services and application | |
| modules deployment plans. | |
| </xs:documentation> | |
| </xs:annotation> | |
| <!-- TODO figure out why this doesn't work | |
| <xs:key name="name-key-key"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| name-key-key assures that key-values for the names of services in this module will | |
| have unique key names. | |
| </xs:documentation> | |
| </xs:annotation> | |
| <xs:selector xpath="sys:name-key"/> | |
| <xs:field xpath="sys:name-key/key"/> | |
| </xs:key> | |
| --> | |
| </xs:element> | |
| <xs:element name="client-environment" type="sys:environmentType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The client-environment element is used only by Application | |
| Client modules to provide client module environment setting. It | |
| defines elements to store information like moduleId, | |
| dependencies, and classloader Info for the client-side | |
| application module. This information is used to identify the | |
| module in the client container only and it should not be | |
| directly used by deployment process. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="server-environment" type="sys:environmentType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The server-environment element is used only by Application | |
| Client modules to define server side module environment | |
| settings. It defines elements to store information like | |
| moduleId, dependencies, and classloader Info for the server-side | |
| of client application module. This information is used to | |
| identify the module in the server environment only. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:complexType name="environmentType"> | |
| <xs:sequence> | |
| <xs:element name="moduleId" type="sys:artifactType" minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| "moduleId" holds elements for the groupId, artifactId, | |
| and version of the module version can be ommitted in | |
| which case a timestamp is used. Module IDs are normally | |
| printed with slashes between the four components, such | |
| as GroupID/ArtifactID/Version/Type. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="dependencies" type="sys:dependenciesType" | |
| minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| "dependencies" holds all classloader and dependency | |
| information for the module | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="bundle-activator" type="xs:string" minOccurs="0"/> | |
| <xs:element name="bundle-classPath" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> | |
| <xs:element name="import-package" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> | |
| <xs:element name="export-package" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> | |
| <xs:element name="require-bundle" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> | |
| <xs:element name="hidden-classes" type="sys:classFilterType" | |
| minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| A list of classes which will never be loaded from parent | |
| ClassLoaders of this module. For example, if Log4J was | |
| listed here, the module would never see Geronimo's copy | |
| of Log4J. If the module provided it's own Log4J JAR it | |
| would use that, otherwise it would not be able to load | |
| Log4J at all. | |
| The classes are specified in zero or more child "filter" | |
| elements where each filter element specifies a | |
| fully-qualified class name or prefix. Essentially, any | |
| class that starts with one of the prefixes listed here | |
| will be treated as hidden. For example, if you specify | |
| two filter elements containing "java.util" and | |
| "java.lang" then you would really screw up your | |
| application. :) | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="non-overridable-classes" | |
| type="sys:classFilterType" minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| A list of classes which will only be loaded from parent | |
| ClassLoaders of this module (never from the module's own | |
| ClassLoader). For example, this is used to prevent a web | |
| application from redefining "javax.servlet", so those | |
| classes will *always* be loaded from the server instead | |
| of from the web web application's own ClassPath. | |
| The classes are specified in zero or more child "filter" | |
| elements where each filter element specifies a | |
| fully-qualified class name or prefix. Essentially, any | |
| class that starts with one of the prefixes listed here | |
| will be treated as hidden. For example, specifying two | |
| filter elements containing "javax.servlet" and | |
| "javax.ejb" would protect some of the core J2EE classes | |
| from being overridden. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="private-classes" | |
| type="sys:classFilterType" minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| A list of classes which will only be loaded from the | |
| ClassLoader of this module or from parent ClassLoaders. | |
| This is used to prevent children configurations to see | |
| specific classes from its parents. The same effect can | |
| be achieved by using hidden-classes. However, | |
| private-classes is the preferred approach to hide | |
| specific classes from all children configurations. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="inverse-classloading" type="sys:emptyType" | |
| minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| If the "inverse-classloading" element is specified, the | |
| standard class loading delegation model is to be | |
| reversed for this module. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="suppress-default-environment" type="sys:emptyType" | |
| minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| If the "suppress-default-environment" element is | |
| specified then any default environment build by a | |
| builder when deploying the plan will be suppressed. | |
| An example of where this is useful is when deploying a | |
| connector on an app client in a separate (standalone) | |
| module (not as part of a client plan). | |
| The connector builder defaultEnvironment includes some | |
| server modules that won't work on an app client, so you | |
| need to suppress the default environment and supply a | |
| complete environment including all parents for a | |
| non-app-client module you want to run on an app client | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| </xs:sequence> | |
| </xs:complexType> | |
| <xs:element name="dependencies" type="sys:dependenciesType" /> | |
| <xs:complexType name="dependenciesType"> | |
| <xs:sequence> | |
| <xs:element name="dependency" type="sys:dependencyType" | |
| minOccurs="0" maxOccurs="unbounded"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| "dependency" holds an artifact locating an artifact in a | |
| repository. Depending on the type of artifact and value | |
| of the import element, the artifact may be included in | |
| the current classpath, be loaded as a parent, may | |
| require the services in the artifact to be started, or | |
| may not be added to the classpath. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| </xs:sequence> | |
| </xs:complexType> | |
| <xs:complexType name="emptyType" /> | |
| <xs:element name="service" type="sys:abstract-serviceType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| An empty generic element to be extended by gbean and other | |
| module types. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:complexType name="abstract-serviceType" abstract="true"> | |
| <xs:sequence></xs:sequence> | |
| </xs:complexType> | |
| <xs:element name="gbean" type="sys:gbeanType" | |
| substitutionGroup="sys:service"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| Adds a new custom component to the server. The component will be | |
| deployed when this application module is deployed, but it is not | |
| in any way protected, so once it is up and running, other | |
| modules can refer to it normally. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:complexType name="classFilterType"> | |
| <xs:sequence> | |
| <xs:element name="filter" type="xs:string" minOccurs="0" | |
| maxOccurs="unbounded"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| A fully-qualified class name or prefix to be filtered. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| </xs:sequence> | |
| </xs:complexType> | |
| <xs:complexType name="artifactType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| <![CDATA[ | |
| Refers to either another module running in the server, or | |
| an entry in the server's Repository. In either case this effectively uses a | |
| URI. | |
| When this is pointing to a repository entry, the URI must have a form | |
| acceptable to the repository, which is currently a URI consisting of | |
| Maven-style identifiers separated by slashes (groupId/artifactId/version/type, | |
| for example, the URI "postgresql/postgresql-8.0-jdbc/313/jar" for a file like | |
| "repository/postgresql/postgresql-8.0-jdbc-313.jar"). | |
| When this is pointing to a module, the URI should match the | |
| module's moduleId. This also looks | |
| like a Maven-style URI discussed above. | |
| The artifactType element can take either a straight URI (as in the examples | |
| above), or maven-style identifier fragments (groupId, type, artifactId, and | |
| version), which it will compose into a URI by adding up the fragments with | |
| slashes in between. | |
| There is a correspondence between the xml format and a URI. For example, the URI | |
| postgresql/postgresql-8.0-jdbc/313/jar | |
| corresponds to the xml: | |
| <groupId>postgresql</groupId> | |
| <artifactId>postgresql-8.0-jdbc</artifactId> | |
| <version>313</version> | |
| <type>jar</type> | |
| ]]> | |
| </xs:documentation> | |
| </xs:annotation> | |
| <xs:sequence> | |
| <!-- TODO not sure if groupId can in fact be optional --> | |
| <xs:element name="groupId" type="xs:string" minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The name for group containing this module. By default, | |
| it is considered 'default' for declaration and wild card | |
| '*' for dependencies. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="artifactId" type="xs:string"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The name for module in a specified group. All the | |
| artifactId's should be unique within a group. If no | |
| articfactId is provided it will be defaulted to file | |
| name of the module file. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="version" type="xs:string" minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The version number for the module formatted by dot | |
| separated numbers. If no version is provided it will be | |
| defaulted to numeric timestamp generated by | |
| System.currentTimeMillis() at deploy time. In case of | |
| dependencies latest available version will be used. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="type" type="xs:string" minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| This element defines the type of the module. The type | |
| could be 'CAR', 'JAR', EAR', 'WAR', etc. If no type is | |
| provided it will be defaulted appropriately by the | |
| deployer depending upon type of deployed module. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| </xs:sequence> | |
| </xs:complexType> | |
| <xs:complexType name="dependencyType"> | |
| <xs:complexContent> | |
| <xs:extension base="sys:artifactType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| DependencyType includes all the elements defined in | |
| artifactType. | |
| </xs:documentation> | |
| </xs:annotation> | |
| <xs:sequence> | |
| <xs:element name="import" type="sys:importType" | |
| minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The import element is restrictive element to | |
| defined type of dependency. The default (when | |
| omitted) is to include the specified dependency | |
| in the classloader (as a parent or URL). If | |
| defined as "classes" means that the classes must | |
| be included in the current module's classloader | |
| but the dependency does not need to be started. | |
| Specifying "services" means that the dependency | |
| (a module) must be started before the current | |
| module, but it is not included as a parent | |
| classloader. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| </xs:sequence> | |
| </xs:extension> | |
| </xs:complexContent> | |
| </xs:complexType> | |
| <xs:simpleType name="importType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| <![CDATA[ | |
| The import element is restrictive. The default (when omitted) is to include the specified dependency in | |
| the classloader (as a parent or URL) and (if the dependency is a module) make sure it is started | |
| before starting the current module. Specifying "classes" means that the classes must be included | |
| in the current module's classloader but the dependency does not need to be started. (I'm not sure this | |
| is actually possible, but it is what is meant). Specifying "services" means that the dependency (a module) | |
| must be started before the current module, but it is not included as a parent classloader. | |
| You probably never need to use the import element. | |
| ]]> | |
| </xs:documentation> | |
| </xs:annotation> | |
| <xs:restriction base="xs:string"> | |
| <xs:enumeration value="classes"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The value "classes" means that the classes must be | |
| included in the current module's classloader but the | |
| dependency does not need to be started. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:enumeration> | |
| <xs:enumeration value="services"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The value "services" means that the dependency (a | |
| module) must be started before the current module, but | |
| it is not included as a parent classloader. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:enumeration> | |
| </xs:restriction> | |
| </xs:simpleType> | |
| <xs:complexType name="gbeanType"> | |
| <xs:complexContent> | |
| <xs:extension base="sys:abstract-serviceType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| gbeanType includes all the elements defined in | |
| abstract-serviceType. | |
| </xs:documentation> | |
| </xs:annotation> | |
| <xs:choice minOccurs="0" maxOccurs="unbounded"> | |
| <xs:element name="attribute" type="sys:attributeType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The attribute provide the name-value pair of | |
| various attributes for this GBean. The value of | |
| the attributes is specified by value of this | |
| element. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="xml-attribute" | |
| type="sys:xml-attributeType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The xml-attribute specifies the value of | |
| particular attribute in XML format, which will | |
| be interpreted by a component running in the | |
| system, which convert it to single value for | |
| this attribute. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="reference" type="sys:referenceType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The "reference" element specifies the value of a | |
| particular reference for this GBean in simplest | |
| form. It holds the reference to the GBean that | |
| matches the single pattern specified here, if no | |
| value is specified it will refer to all the | |
| matching GBeans. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="references" type="sys:referencesType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The "references" element specifies the value of | |
| a particular reference for this GBean matching | |
| multiple pattern elements. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="xml-reference" | |
| type="sys:xml-attributeType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The xml-reference specifies the value of | |
| particular reference in XML format, which will | |
| be interpreted by a component running in the | |
| system, which convert it to single value for | |
| this reference. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="dependency" type="sys:patternType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The element "dependency" is used to resolve | |
| dependencies at GBean level. This is normally | |
| only used if for some reason the GBeans within a | |
| module must be started in a certain order that | |
| is not reflected in the references between them. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| </xs:choice> | |
| <xs:attribute name="name" type="xs:string" use="required"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| A unique name for this GBean within this module, | |
| this name will be used as a name component in | |
| AbstractName, hence AbstractName will be unique | |
| server wide. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:attribute> | |
| <xs:attribute name="class" type="xs:string" use="required"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The fully-qualified name of the class containing the | |
| GBeanInfo for this GBean. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:attribute> | |
| </xs:extension> | |
| </xs:complexContent> | |
| </xs:complexType> | |
| <xs:complexType name="attributeType"> | |
| <xs:simpleContent> | |
| <xs:extension base="xs:string"> | |
| <xs:attribute name="name" type="xs:string"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The name for the current attribute. This name should | |
| be same as specified in GBeanInfo for this GBean. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:attribute> | |
| <xs:attribute name="type" type="xs:string"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The type of the current attribute. Again this should | |
| be same as one provided in GBeanInfo hence optional. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:attribute> | |
| </xs:extension> | |
| </xs:simpleContent> | |
| </xs:complexType> | |
| <xs:complexType name="xml-attributeType"> | |
| <xs:sequence> | |
| <xs:any namespace="##any" processContents="lax" /> | |
| </xs:sequence> | |
| <xs:attribute name="name" type="xs:string"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The name for the current attribute. This name should be same | |
| as specified in GBeanInfo for this GBean. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:attribute> | |
| </xs:complexType> | |
| <xs:complexType name="referencesType"> | |
| <xs:sequence> | |
| <xs:element name="pattern" type="sys:patternType" minOccurs="1" | |
| maxOccurs="unbounded"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The pattern used for matching the referenced GBean. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| </xs:sequence> | |
| <xs:attribute name="name" type="xs:string"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The name for the current reference. This name should be same | |
| as specified in GBeanInfo for this GBean. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:attribute> | |
| </xs:complexType> | |
| <xs:complexType name="patternType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| This group contains the components of an abstract name | |
| </xs:documentation> | |
| </xs:annotation> | |
| <xs:sequence> | |
| <xs:sequence> | |
| <xs:element name="groupId" type="xs:string" minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The name for group containing module to match. By | |
| default is it considered wild card '*'. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="artifactId" type="xs:string" minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The name for module in a specified group to be | |
| matched. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="version" type="xs:string" minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The version number for the module formatted by dot | |
| separated numbers. If no version is provided it will | |
| be defaulted latest available version matching other | |
| criterions. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="module" type="xs:string" minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The value specified here should match the file name | |
| of the module referenced. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="type" type="xs:string" minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| This element defines the type of the module to be | |
| matched. The type could be 'CAR', 'JAR', EAR', | |
| 'WAR', etc. If no type is provided it will be | |
| defaulted wild card char '*'. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| <xs:element name="name" type="xs:string" minOccurs="0"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The name element to identify the referenced GBean by | |
| name. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:element> | |
| </xs:sequence> | |
| </xs:sequence> | |
| </xs:complexType> | |
| <xs:complexType name="referenceType"> | |
| <xs:complexContent> | |
| <xs:extension base="sys:patternType"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| referenceType includes all the elements defined in | |
| patternType. | |
| </xs:documentation> | |
| </xs:annotation> | |
| <xs:attribute name="name" type="xs:string"> | |
| <xs:annotation> | |
| <xs:documentation> | |
| The name for the current reference. This name should | |
| be same as specified in GBeanInfo for this GBean. | |
| </xs:documentation> | |
| </xs:annotation> | |
| </xs:attribute> | |
| </xs:extension> | |
| </xs:complexContent> | |
| </xs:complexType> | |
| <!--<xs:element name="service" type="sys:serviceType"/>--> | |
| <!--<xs:complexType name="serviceType">--> | |
| <!--<xs:sequence>--> | |
| <!--<xs:element name="dependency" type="sys:artifactType" minOccurs="0" maxOccurs="unbounded"/>--> | |
| <!--</xs:sequence>--> | |
| <!--</xs:complexType>--> | |
| </xs:schema> |