| <?xml version="1.0"?> |
| <!-- |
| ~ 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. |
| --> |
| |
| <!-- $Rev$ $Date$ --> |
| |
| <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" |
| xmlns="http://www.openejb.org/System/Configuration" |
| targetNamespace="http://www.openejb.org/System/Configuration"> |
| |
| <!-- |
| --> |
| <xsd:element name="Connector"> |
| <xsd:complexType> |
| <xsd:simpleContent> |
| <xsd:extension base="xsd:string"> |
| <xsd:attribute name="id" type="xsd:string" use="required"/> |
| <xsd:attribute name="provider" type="xsd:string"/> |
| <xsd:attribute name="jar" type="JarFileLocation"/> |
| </xsd:extension> |
| </xsd:simpleContent> |
| </xsd:complexType> |
| </xsd:element> |
| |
| <!-- |
| --> |
| <xsd:element name="Resource"> |
| <xsd:complexType> |
| <xsd:simpleContent> |
| <xsd:extension base="xsd:string"> |
| <xsd:attribute name="id" type="xsd:string" use="required"/> |
| <xsd:attribute name="provider" type="xsd:string"/> |
| <xsd:attribute name="jar" type="JarFileLocation"/> |
| <xsd:attribute name="jndi" type="xsd:string"/> |
| </xsd:extension> |
| </xsd:simpleContent> |
| </xsd:complexType> |
| </xsd:element> |
| |
| <!-- |
| --> |
| <xsd:element name="Container"> |
| <xsd:complexType> |
| <xsd:simpleContent> |
| <xsd:extension base="xsd:string"> |
| <xsd:attribute name="id" type="xsd:string" use="required"/> |
| <xsd:attribute name="provider" type="xsd:string"/> |
| <xsd:attribute name="ctype" type="ContainerTypes" use="required"/> |
| <xsd:attribute name="jar" type="JarFileLocation"/> |
| </xsd:extension> |
| </xsd:simpleContent> |
| </xsd:complexType> |
| </xsd:element> |
| |
| <!-- |
| --> |
| <xsd:element name="Deployments"> |
| <xsd:complexType> |
| <xsd:attribute name="jar" type="JarFileLocation"/> |
| <xsd:attribute name="dir" type="xsd:string"/> |
| </xsd:complexType> |
| </xsd:element> |
| |
| <!-- |
| --> |
| <xsd:element name="JndiProvider"> |
| <xsd:complexType> |
| <xsd:simpleContent> |
| <xsd:extension base="xsd:string"> |
| <xsd:attribute name="id" type="xsd:string" use="required"/> |
| <xsd:attribute name="provider" type="xsd:string"/> |
| <xsd:attribute name="jar" type="JarFileLocation"/> |
| </xsd:extension> |
| </xsd:simpleContent> |
| </xsd:complexType> |
| </xsd:element> |
| |
| <!-- |
| --> |
| <xsd:element name="ProxyFactory"> |
| <xsd:complexType> |
| <xsd:simpleContent> |
| <xsd:extension base="xsd:string"> |
| <xsd:attribute name="id" type="xsd:string" use="required"/> |
| <xsd:attribute name="provider" type="xsd:string"/> |
| <xsd:attribute name="jar" type="JarFileLocation"/> |
| </xsd:extension> |
| </xsd:simpleContent> |
| </xsd:complexType> |
| </xsd:element> |
| |
| <!-- |
| --> |
| <xsd:element name="SecurityService"> |
| <xsd:complexType> |
| <xsd:simpleContent> |
| <xsd:extension base="xsd:string"> |
| <xsd:attribute name="id" type="xsd:string" use="required"/> |
| <xsd:attribute name="provider" type="xsd:string"/> |
| <xsd:attribute name="jar" type="JarFileLocation"/> |
| </xsd:extension> |
| </xsd:simpleContent> |
| </xsd:complexType> |
| </xsd:element> |
| |
| <!-- |
| --> |
| <xsd:element name="TransactionManager"> |
| <xsd:complexType> |
| <xsd:simpleContent> |
| <xsd:extension base="xsd:string"> |
| <xsd:attribute name="id" type="xsd:string" use="required"/> |
| <xsd:attribute name="provider" type="xsd:string"/> |
| <xsd:attribute name="jar" type="JarFileLocation"/> |
| </xsd:extension> |
| </xsd:simpleContent> |
| </xsd:complexType> |
| </xsd:element> |
| |
| <xsd:element name="ConnectionManager"> |
| <xsd:complexType> |
| <xsd:simpleContent> |
| <xsd:extension base="xsd:string"> |
| <xsd:attribute name="id" type="xsd:string" use="required"/> |
| <xsd:attribute name="provider" type="xsd:string"/> |
| <xsd:attribute name="jar" type="JarFileLocation"/> |
| </xsd:extension> |
| </xsd:simpleContent> |
| </xsd:complexType> |
| </xsd:element> |
| |
| <!-- |
| --> |
| <xsd:element name="openejb"> |
| <xsd:complexType> |
| <xsd:sequence> |
| <xsd:element ref="Container" maxOccurs="unbounded"/> |
| <xsd:element ref="JndiProvider" minOccurs="0" maxOccurs="unbounded"/> |
| <xsd:element ref="SecurityService" minOccurs="0" maxOccurs="1"/> |
| <xsd:element ref="TransactionManager" minOccurs="0" maxOccurs="1"/> |
| <xsd:element ref="ConnectionManager" minOccurs="0" maxOccurs="1"/> |
| <xsd:element ref="ProxyFactory" minOccurs="0" maxOccurs="1"/> |
| <xsd:element ref="Connector" minOccurs="0" maxOccurs="unbounded"/> |
| <xsd:element ref="Resource" minOccurs="0" maxOccurs="unbounded"/> |
| <xsd:element ref="Deployments" minOccurs="0" maxOccurs="unbounded"/> |
| </xsd:sequence> |
| </xsd:complexType> |
| </xsd:element> |
| |
| <!-- |
| ############################################# |
| # # |
| # Data types that validate the input # |
| # # |
| ############################################# |
| --> |
| |
| <!-- Class name --> |
| <xsd:simpleType name="ClassName"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:pattern value="[a-zA-Z0-9_$.]+"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| |
| |
| <!-- Container Types --> |
| <xsd:simpleType name="ContainerTypes"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:pattern value="BMP_ENTITY|CMP_ENTITY|STATEFUL|STATELESS|MESSAGE|MANAGED|SINGLETON"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| |
| |
| <!-- Jar File --> |
| <xsd:simpleType name="JarFileLocation"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:pattern value=".*\.jar$"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| </xsd:schema> |