Rename directory containing XSD files to match current schema version name.


Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/5ebf8eac
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/5ebf8eac
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/5ebf8eac

Branch: refs/heads/master
Commit: 5ebf8eac0e54de7782b083e3b1d827ed38bec554
Parents: b296059
Author: Dzmitry Kazimirchyk <[email protected]>
Authored: Mon Feb 29 13:20:50 2016 +0300
Committer: Dzmitry Kazimirchyk <[email protected]>
Committed: Mon Feb 29 13:20:50 2016 +0300

----------------------------------------------------------------------
 .../org/apache/cayenne/schema/7/modelMap.xsd    | 343 -------------------
 .../cayenne/schema/7/reverseEngineering.xsd     | 139 --------
 .../org/apache/cayenne/schema/8/modelMap.xsd    | 343 +++++++++++++++++++
 .../cayenne/schema/8/reverseEngineering.xsd     | 139 ++++++++
 4 files changed, 482 insertions(+), 482 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cayenne/blob/5ebf8eac/cayenne-server/src/main/resources/org/apache/cayenne/schema/7/modelMap.xsd
----------------------------------------------------------------------
diff --git 
a/cayenne-server/src/main/resources/org/apache/cayenne/schema/7/modelMap.xsd 
b/cayenne-server/src/main/resources/org/apache/cayenne/schema/7/modelMap.xsd
deleted file mode 100644
index 37f0f91..0000000
--- a/cayenne-server/src/main/resources/org/apache/cayenne/schema/7/modelMap.xsd
+++ /dev/null
@@ -1,343 +0,0 @@
-<?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.
--->
-
-<!--
-       Cayenne entity map schema 
-       Defines format of Cayenne DataMap XML files (*.map.xml).  DataMap files 
contain
-       the metadata needed for Cayenne object-relational features. Multiple 
DataMaps
-       are usually combined in one shared namespace, so the elements of the 
DataMap
-       may reference objects from other DataMaps.
---> 
-<xs:schema targetNamespace="http://cayenne.apache.org/schema/8/modelMap";
-       xmlns:cay="http://cayenne.apache.org/schema/8/modelMap";
-       xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
elementFormDefault="qualified" version="8">
-       <xs:element name="data-map">
-               <xs:complexType>
-                       <xs:sequence>
-                               <xs:element minOccurs="0" maxOccurs="1" 
ref="cay:reverse-engineering-config"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:property"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:embeddable"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:procedure"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:db-entity"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:obj-entity"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:db-relationship"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:obj-relationship"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:query"/>
-                       </xs:sequence>
-                       <xs:attribute name="project-version" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-       <xs:element name="db-entity">
-               <xs:complexType>
-                       <xs:sequence>
-                               <xs:element maxOccurs="unbounded" 
ref="cay:db-attribute"/>
-                               <xs:element minOccurs="0" 
ref="cay:db-key-generator"/>
-                               
-                               <!-- Qualifier for DB Entity -->
-                               <xs:element minOccurs="0" ref="cay:qualifier"/>
-                       </xs:sequence>
-                       <xs:attribute name="name" use="required" 
type="xs:string"/>
-                       <xs:attribute name="schema" type="xs:string"/>
-                       <xs:attribute name="catalog" type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-       <xs:element name="db-attribute">
-               <xs:annotation>
-                       <xs:documentation>A database column.</xs:documentation>
-               </xs:annotation>
-               <xs:complexType>
-                       <xs:attribute name="isMandatory" type="xs:boolean"/>
-                       <xs:attribute name="isPrimaryKey" type="xs:boolean">
-                               <xs:annotation>
-                                       <xs:documentation>If true, the value of 
attribute is unique and used as a primary key identifier.</xs:documentation>
-                               </xs:annotation>
-                       </xs:attribute>
-                       <xs:attribute name="isGenerated" use="optional" 
type="xs:boolean"/>
-                       <xs:attribute name="length" type="xs:integer"/>
-                       <xs:attribute name="name" use="required" 
type="xs:string"/>
-                       <xs:attribute name="scale" type="xs:integer"/>
-                       <xs:attribute name="type" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-
-       <xs:element name="obj-entity">
-               <xs:annotation>
-                       <xs:documentation>A persistent Java class managed by 
Cayenne.</xs:documentation>
-               </xs:annotation>
-               <xs:complexType>
-                       <xs:sequence>
-                               <xs:element minOccurs="0" ref="cay:qualifier"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:embedded-attribute"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:obj-attribute"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:attribute-override"/>
-                               
-                               <!--  Callbacks -->
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:post-add"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:pre-persist"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:post-persist"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:pre-update"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:post-update"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:pre-remove"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:post-remove"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:post-load"/>
-                       </xs:sequence>
-                       <xs:attribute name="className" use="optional" 
type="xs:string"/>
-                       <xs:attribute name="abstract" use="optional" 
type="xs:string"/>
-                       <xs:attribute name="readOnly" use="optional" 
type="xs:boolean"/>
-                       <xs:attribute name="clientClassName" use="optional" 
type="xs:string"/>
-                       <xs:attribute name="clientSuperClassName" 
use="optional" type="xs:string"/>
-                       <xs:attribute name="dbEntityName" use="optional" 
type="xs:string"/>
-                       <xs:attribute name="lock-type" type="xs:string"/>
-                       <xs:attribute name="name" use="required" 
type="xs:string"/>
-                       <xs:attribute name="superClassName" use="optional" 
type="xs:string"/>
-                       <xs:attribute name="superEntityName" use="optional" 
type="xs:string"/>
-                       <xs:attribute name="serverOnly" use="optional" 
type="xs:boolean"/>
-               </xs:complexType>
-       </xs:element>
-
-       <xs:element name="qualifier" type="xs:string"/>
-
-       <xs:element name="obj-attribute">
-               <xs:complexType>
-                       <xs:attribute name="db-attribute-path" use="optional" 
type="xs:string"/>
-                       <xs:attribute name="lock" use="optional" 
type="xs:boolean"/>
-                       <xs:attribute name="name" use="required" 
type="xs:string"/>
-                       <xs:attribute name="type" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-
-       <xs:element name="attribute-override">
-               <xs:complexType>
-                       <xs:attribute name="db-attribute-path" use="optional" 
type="xs:string"/>
-                       <xs:attribute name="lock" use="optional" 
type="xs:boolean"/>
-                       <xs:attribute name="name" use="optional" 
type="xs:string"/>
-                       <xs:attribute name="type" use="optional" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-
-       <xs:element name="db-relationship">
-               <xs:complexType>
-                       <xs:sequence>
-                               <xs:element minOccurs="1" maxOccurs="unbounded" 
ref="cay:db-attribute-pair"/>
-                       </xs:sequence>
-                       <xs:attribute name="name" use="required" 
type="xs:string"/>
-                       <xs:attribute name="source" use="required" 
type="xs:string"/>
-                       <xs:attribute name="target" use="required" 
type="xs:string"/>
-                       <xs:attribute name="toDependentPK" type="xs:boolean"/>
-                       <xs:attribute name="toMany" use="required" 
type="xs:boolean"/>
-               </xs:complexType>
-       </xs:element>
-       <xs:element name="db-attribute-pair">
-               <xs:complexType>
-                       <xs:attribute name="source" use="required" 
type="xs:string"/>
-                       <xs:attribute name="target" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-       <xs:element name="obj-relationship">
-               <xs:complexType>
-                       <xs:attribute name="db-relationship-path" 
use="required" type="xs:string"/>
-                       <xs:attribute name="deleteRule" type="xs:string"/>
-                       <xs:attribute name="lock" type="xs:boolean"/>
-                       <xs:attribute name="name" use="required" 
type="xs:string"/>
-                       <xs:attribute name="source" use="required" 
type="xs:string"/>
-                       <xs:attribute name="target" use="required" 
type="xs:string"/>
-                       <xs:attribute name="collection-type" use="optional" 
type="xs:string"/>
-                       <xs:attribute name="map-key" use="optional" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-
-       <xs:element name="query">
-               <xs:complexType>
-                       <xs:sequence>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:property"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:sql"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:ejbql"/>
-                               <xs:element name="qualifier" minOccurs="0" 
maxOccurs="unbounded" type="xs:string"/>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:ordering"/>
-                               <xs:element name="prefetch" minOccurs="0" 
maxOccurs="unbounded" type="xs:string"/>
-                       </xs:sequence>
-                       <xs:attribute name="type" use="required" 
type="xs:string"/>
-                       <xs:attribute name="name" use="required" 
type="xs:string"/>
-                       <xs:attribute name="root" use="optional" 
type="xs:string"/>
-                       <xs:attribute name="root-name" use="optional" 
type="xs:string"/>
-                       <xs:attribute name="result-entity" use="optional" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-
-       <xs:element name="ordering">
-               <xs:complexType>
-                       <xs:simpleContent>
-                               <xs:extension base="xs:string">
-                                       <xs:attribute name="descending" 
type="xs:boolean"/>
-                                       <xs:attribute name="ignore-case" 
type="xs:boolean"/>
-                               </xs:extension>
-                       </xs:simpleContent>
-               </xs:complexType>
-       </xs:element>
-
-       <xs:element name="sql">
-               <xs:annotation>
-                       <xs:documentation>Defines arbitrary SQL statement. Note 
that SQL statement can be customized for different SQL dialects per DbAdapter 
class. If no adapter-specific statement is found, the one with no adapter label 
is used by default.</xs:documentation>
-               </xs:annotation>
-               <xs:complexType>
-                       <xs:simpleContent>
-                               <xs:extension base="xs:string">
-                                       <xs:attribute name="adapter-class" 
type="xs:string"/>
-                               </xs:extension>
-                       </xs:simpleContent>
-               </xs:complexType>
-       </xs:element>
-
-       <xs:element name="ejbql" type="xs:string"/>
-
-       <xs:element name="reverse-engineering-config">
-               <xs:complexType>
-                       <xs:attribute name="name" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-
-       <xs:element name="property">
-               <xs:annotation>
-                       <xs:documentation>A generic property used by other 
elements.</xs:documentation>
-               </xs:annotation>
-               <xs:complexType>
-                       <xs:attribute name="name" use="required" 
type="xs:string"/>
-                       <xs:attribute name="value" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-       <xs:element name="embeddable">
-               <xs:complexType>
-                       <xs:sequence>
-                               <xs:element name="embeddable-attribute" 
minOccurs="0" maxOccurs="unbounded">
-                                       <xs:complexType>
-                                               <xs:attribute name="name" 
use="required" type="xs:string"/>
-                                               <xs:attribute name="type" 
use="required" type="xs:string"/>
-                                               <xs:attribute 
name="db-attribute-name" use="required" type="xs:string"/>
-                                       </xs:complexType>
-                               </xs:element>
-                       </xs:sequence>
-                       <xs:attribute name="className" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-
-       <xs:element name="embedded-attribute">
-               <xs:complexType>
-                       <xs:sequence>
-                               <xs:element minOccurs="0" maxOccurs="unbounded"
-                                       
ref="cay:embeddable-attribute-override"/>
-                       </xs:sequence>
-                       <xs:attribute name="type" use="required" 
type="xs:string"/>
-                       <xs:attribute name="name" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-
-       <xs:element name="embeddable-attribute-override">
-               <xs:complexType>
-                       <xs:attribute name="db-attribute-path" use="required" 
type="xs:string"/>
-                       <xs:attribute name="name" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-
-       <xs:element name="procedure">
-               <xs:complexType>
-                       <xs:sequence>
-                               <xs:element minOccurs="0" maxOccurs="unbounded" 
name="procedure-parameter">
-                                       <xs:complexType>
-                                               <xs:attribute name="name" 
use="required" type="xs:string"/>
-                                               <xs:attribute name="type" 
use="required" type="xs:string"/>
-                                               <xs:attribute name="length" 
use="optional" type="xs:integer"/>
-                                               <xs:attribute name="direction" 
use="required" type="xs:string"/>
-                                       </xs:complexType>
-                               </xs:element>
-                       </xs:sequence>
-                       <xs:attribute name="name" use="required" 
type="xs:string"/>
-                       <xs:attribute name="schema" type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-       <xs:element name="pre-update">
-               <xs:complexType>
-                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-       <xs:element name="post-persist">
-               <xs:complexType>
-                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-       <xs:element name="post-update">
-               <xs:complexType>
-                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-       <xs:element name="post-add">
-               <xs:complexType>
-                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-       <xs:element name="pre-persist">
-               <xs:complexType>
-                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-       <xs:element name="post-remove">
-               <xs:complexType>
-                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-       <xs:element name="post-load">
-               <xs:complexType>
-                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-       <xs:element name="pre-remove">
-               <xs:complexType>
-                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
-               </xs:complexType>
-       </xs:element>
-
-       <xs:element name="db-key-generator">
-               <xs:annotation>
-                       <xs:documentation>Used to install the Automatic 
Sequence/Key Generation facility for db-entity. This feature is intended for 
use with simple (non-compound) integral primary keys.</xs:documentation>
-               </xs:annotation>
-               <xs:complexType>
-                       <xs:sequence>
-                               <xs:element name="db-generator-type" 
type="xs:string">
-                                       <xs:annotation>
-                                               <xs:documentation>Specifies the 
Key Generation Method that will be employed
-      'ORACLE'               - use Oracle's SEQUENCE
-      'NAMED_SEQUENCE_TABLE' - use USER designated SEQUENCE TABLE. User 
specifies the name of a DBMS Table with the schema (sequence INT) which will be 
used to hold sequence values (not supported yet)</xs:documentation>
-                                       </xs:annotation>
-                               </xs:element>
-                               <xs:element minOccurs="0" 
name="db-generator-name" type="xs:string">
-                                       <xs:annotation>
-                                               <xs:documentation>For 
db-generator-type ORACLE this is the name of the ORACLE SEQUENCE to use. The 
SEQUENCE is assumed to already exist in the Database.
-If this is db-generator-type NAMED_SEQUENCE_TABLE Key Generation, this 
specifies the name of the SEQUENCE TABLE to use. The NAMED_SEQUENCE_TABLE is 
assumed to already exist in the database.</xs:documentation>
-                                       </xs:annotation>
-                               </xs:element>
-                               <xs:element minOccurs="0" 
name="db-key-cache-size" type="xs:integer">
-                                       <xs:annotation>
-                                               <xs:documentation>Size of key 
cache. For db-generator-type ORACLE , this value MUST match the Oracle SEQUENCE 
 INCREMENT value.  If there is a mismatch between this value and the Oracle 
SEQUENCE INCREMENT value, then there will likely be duplicate key problems.
-For db-generator-type NAMED_SEQUENCE_TABLE , this tells how many keys the 
Container will fetch in a single DBMS call.</xs:documentation>
-                                       </xs:annotation>
-                               </xs:element>
-                       </xs:sequence>
-               </xs:complexType>
-       </xs:element>
-</xs:schema>

http://git-wip-us.apache.org/repos/asf/cayenne/blob/5ebf8eac/cayenne-server/src/main/resources/org/apache/cayenne/schema/7/reverseEngineering.xsd
----------------------------------------------------------------------
diff --git 
a/cayenne-server/src/main/resources/org/apache/cayenne/schema/7/reverseEngineering.xsd
 
b/cayenne-server/src/main/resources/org/apache/cayenne/schema/7/reverseEngineering.xsd
deleted file mode 100644
index 6905386..0000000
--- 
a/cayenne-server/src/main/resources/org/apache/cayenne/schema/7/reverseEngineering.xsd
+++ /dev/null
@@ -1,139 +0,0 @@
-<?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 attributeFormDefault="unqualified"
-           elementFormDefault="qualified"
-           xmlns:xs="http://www.w3.org/2001/XMLSchema";>
-
-    <xs:complexType name="PatternParamType" mixed="true">
-        <xs:annotation>
-            <xs:documentation>
-                At least one of 3 options ot fill pattern information should 
be used
-                1) &lt;tag>pattarn&lt;tag>
-                2) &lt;tag pattern="pattern" />
-                3) &lt;tag>
-                      &lt;pattern>pattern&lt;/pattern>
-                   &lt;/tag>
-            </xs:documentation>
-        </xs:annotation>
-        <xs:sequence>
-            <xs:element type="xs:string" name="pattern" minOccurs="0"/>
-        </xs:sequence>
-        <xs:attribute type="xs:string" name="pattern" use="optional"/>
-    </xs:complexType>
-
-    <xs:complexType name="IncludeTableType" mixed="true">
-        <xs:complexContent>
-            <xs:extension base="PatternParamType">
-                <xs:sequence>
-                    <xs:choice minOccurs="0" maxOccurs="unbounded">
-                        <xs:element name="includeColumn" 
type="PatternParamType" />
-                        <xs:element name="excludeColumn" 
type="PatternParamType" />
-                    </xs:choice>
-                </xs:sequence>
-            </xs:extension>
-        </xs:complexContent>
-    </xs:complexType>
-
-    <xs:complexType name="FilterContainerType">
-        <xs:sequence>
-            <xs:choice minOccurs="1" maxOccurs="unbounded">
-                <xs:element name="includeTable" type="IncludeTableType" />
-                <xs:element name="excludeTable" type="PatternParamType" />
-                <xs:element name="includeColumn" type="PatternParamType" />
-                <xs:element name="excludeColumn" type="PatternParamType" />
-                <xs:element name="includeProcedure" type="PatternParamType" />
-                <xs:element name="excludeProcedure" type="PatternParamType" />
-            </xs:choice>
-        </xs:sequence>
-    </xs:complexType>
-
-    <xs:complexType name="SchemaType" mixed="true">
-        <xs:annotation>
-            <xs:documentation>
-                At least one of 3 options to provide schema name can be used:
-                1) &lt;schema>name&lt;schema>
-                2) &lt;schema name="name" />
-                3) &lt;schema>
-                &lt;name>name&lt;/name>
-                &lt;/schema>
-            </xs:documentation>
-        </xs:annotation>
-        <xs:complexContent>
-            <xs:extension base="FilterContainerType">
-                <xs:sequence>
-                    <xs:element name="name" type="xs:string" minOccurs="0" 
maxOccurs="1" />
-                </xs:sequence>
-                <xs:attribute type="xs:string" name="name" use="optional" />
-            </xs:extension>
-        </xs:complexContent>
-    </xs:complexType>
-
-    <xs:complexType name="CatalogType" mixed="true">
-        <xs:annotation>
-            <xs:documentation>
-                At least one of 3 options to provide schema name can be used:
-                1) &lt;catalog>name&lt;catalog>
-                2) &lt;catalog name="name" />
-                3) &lt;catalog>
-                &lt;name>name&lt;/name>
-                &lt;/catalog>
-            </xs:documentation>
-        </xs:annotation>
-        <xs:complexContent>
-            <xs:extension base="FilterContainerType">
-                <xs:sequence>
-                    <xs:element name="name" type="xs:string" minOccurs="0" 
maxOccurs="1" />
-                    <xs:choice minOccurs="0" maxOccurs="unbounded">
-                        <xs:element name="schema" type="SchemaType" />
-                    </xs:choice>
-                </xs:sequence>
-                <xs:attribute type="xs:string" name="name" use="optional" />
-            </xs:extension>
-        </xs:complexContent>
-    </xs:complexType>
-
-    <xs:complexType name="ReverseEngineeringType">
-        <xs:annotation>
-            <xs:documentation>
-                <!-- TODO -->
-            </xs:documentation>
-        </xs:annotation>
-        <xs:complexContent>
-            <xs:extension base="FilterContainerType">
-                <xs:sequence>
-                    <xs:element name="name" type="xs:string" minOccurs="0" 
maxOccurs="1" />
-                    <xs:choice minOccurs="0" maxOccurs="unbounded">
-                        <xs:element name="catalog" type="CatalogType" />
-                        <xs:element name="schema" type="SchemaType" />
-                    </xs:choice>
-                </xs:sequence>
-                <xs:attribute type="xs:string" name="name" use="optional" />
-            </xs:extension>
-        </xs:complexContent>
-    </xs:complexType>
-
-    <xs:element name="reverseEngineering" type="ReverseEngineeringType">
-        <xs:annotation>
-            <!-- TODO -->
-            <xs:documentation> </xs:documentation>
-        </xs:annotation>
-    </xs:element>
-
-</xs:schema>

http://git-wip-us.apache.org/repos/asf/cayenne/blob/5ebf8eac/cayenne-server/src/main/resources/org/apache/cayenne/schema/8/modelMap.xsd
----------------------------------------------------------------------
diff --git 
a/cayenne-server/src/main/resources/org/apache/cayenne/schema/8/modelMap.xsd 
b/cayenne-server/src/main/resources/org/apache/cayenne/schema/8/modelMap.xsd
new file mode 100644
index 0000000..37f0f91
--- /dev/null
+++ b/cayenne-server/src/main/resources/org/apache/cayenne/schema/8/modelMap.xsd
@@ -0,0 +1,343 @@
+<?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.
+-->
+
+<!--
+       Cayenne entity map schema 
+       Defines format of Cayenne DataMap XML files (*.map.xml).  DataMap files 
contain
+       the metadata needed for Cayenne object-relational features. Multiple 
DataMaps
+       are usually combined in one shared namespace, so the elements of the 
DataMap
+       may reference objects from other DataMaps.
+--> 
+<xs:schema targetNamespace="http://cayenne.apache.org/schema/8/modelMap";
+       xmlns:cay="http://cayenne.apache.org/schema/8/modelMap";
+       xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
elementFormDefault="qualified" version="8">
+       <xs:element name="data-map">
+               <xs:complexType>
+                       <xs:sequence>
+                               <xs:element minOccurs="0" maxOccurs="1" 
ref="cay:reverse-engineering-config"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:property"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:embeddable"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:procedure"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:db-entity"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:obj-entity"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:db-relationship"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:obj-relationship"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:query"/>
+                       </xs:sequence>
+                       <xs:attribute name="project-version" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="db-entity">
+               <xs:complexType>
+                       <xs:sequence>
+                               <xs:element maxOccurs="unbounded" 
ref="cay:db-attribute"/>
+                               <xs:element minOccurs="0" 
ref="cay:db-key-generator"/>
+                               
+                               <!-- Qualifier for DB Entity -->
+                               <xs:element minOccurs="0" ref="cay:qualifier"/>
+                       </xs:sequence>
+                       <xs:attribute name="name" use="required" 
type="xs:string"/>
+                       <xs:attribute name="schema" type="xs:string"/>
+                       <xs:attribute name="catalog" type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="db-attribute">
+               <xs:annotation>
+                       <xs:documentation>A database column.</xs:documentation>
+               </xs:annotation>
+               <xs:complexType>
+                       <xs:attribute name="isMandatory" type="xs:boolean"/>
+                       <xs:attribute name="isPrimaryKey" type="xs:boolean">
+                               <xs:annotation>
+                                       <xs:documentation>If true, the value of 
attribute is unique and used as a primary key identifier.</xs:documentation>
+                               </xs:annotation>
+                       </xs:attribute>
+                       <xs:attribute name="isGenerated" use="optional" 
type="xs:boolean"/>
+                       <xs:attribute name="length" type="xs:integer"/>
+                       <xs:attribute name="name" use="required" 
type="xs:string"/>
+                       <xs:attribute name="scale" type="xs:integer"/>
+                       <xs:attribute name="type" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+
+       <xs:element name="obj-entity">
+               <xs:annotation>
+                       <xs:documentation>A persistent Java class managed by 
Cayenne.</xs:documentation>
+               </xs:annotation>
+               <xs:complexType>
+                       <xs:sequence>
+                               <xs:element minOccurs="0" ref="cay:qualifier"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:embedded-attribute"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:obj-attribute"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:attribute-override"/>
+                               
+                               <!--  Callbacks -->
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:post-add"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:pre-persist"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:post-persist"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:pre-update"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:post-update"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:pre-remove"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:post-remove"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:post-load"/>
+                       </xs:sequence>
+                       <xs:attribute name="className" use="optional" 
type="xs:string"/>
+                       <xs:attribute name="abstract" use="optional" 
type="xs:string"/>
+                       <xs:attribute name="readOnly" use="optional" 
type="xs:boolean"/>
+                       <xs:attribute name="clientClassName" use="optional" 
type="xs:string"/>
+                       <xs:attribute name="clientSuperClassName" 
use="optional" type="xs:string"/>
+                       <xs:attribute name="dbEntityName" use="optional" 
type="xs:string"/>
+                       <xs:attribute name="lock-type" type="xs:string"/>
+                       <xs:attribute name="name" use="required" 
type="xs:string"/>
+                       <xs:attribute name="superClassName" use="optional" 
type="xs:string"/>
+                       <xs:attribute name="superEntityName" use="optional" 
type="xs:string"/>
+                       <xs:attribute name="serverOnly" use="optional" 
type="xs:boolean"/>
+               </xs:complexType>
+       </xs:element>
+
+       <xs:element name="qualifier" type="xs:string"/>
+
+       <xs:element name="obj-attribute">
+               <xs:complexType>
+                       <xs:attribute name="db-attribute-path" use="optional" 
type="xs:string"/>
+                       <xs:attribute name="lock" use="optional" 
type="xs:boolean"/>
+                       <xs:attribute name="name" use="required" 
type="xs:string"/>
+                       <xs:attribute name="type" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+
+       <xs:element name="attribute-override">
+               <xs:complexType>
+                       <xs:attribute name="db-attribute-path" use="optional" 
type="xs:string"/>
+                       <xs:attribute name="lock" use="optional" 
type="xs:boolean"/>
+                       <xs:attribute name="name" use="optional" 
type="xs:string"/>
+                       <xs:attribute name="type" use="optional" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+
+       <xs:element name="db-relationship">
+               <xs:complexType>
+                       <xs:sequence>
+                               <xs:element minOccurs="1" maxOccurs="unbounded" 
ref="cay:db-attribute-pair"/>
+                       </xs:sequence>
+                       <xs:attribute name="name" use="required" 
type="xs:string"/>
+                       <xs:attribute name="source" use="required" 
type="xs:string"/>
+                       <xs:attribute name="target" use="required" 
type="xs:string"/>
+                       <xs:attribute name="toDependentPK" type="xs:boolean"/>
+                       <xs:attribute name="toMany" use="required" 
type="xs:boolean"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="db-attribute-pair">
+               <xs:complexType>
+                       <xs:attribute name="source" use="required" 
type="xs:string"/>
+                       <xs:attribute name="target" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="obj-relationship">
+               <xs:complexType>
+                       <xs:attribute name="db-relationship-path" 
use="required" type="xs:string"/>
+                       <xs:attribute name="deleteRule" type="xs:string"/>
+                       <xs:attribute name="lock" type="xs:boolean"/>
+                       <xs:attribute name="name" use="required" 
type="xs:string"/>
+                       <xs:attribute name="source" use="required" 
type="xs:string"/>
+                       <xs:attribute name="target" use="required" 
type="xs:string"/>
+                       <xs:attribute name="collection-type" use="optional" 
type="xs:string"/>
+                       <xs:attribute name="map-key" use="optional" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+
+       <xs:element name="query">
+               <xs:complexType>
+                       <xs:sequence>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:property"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:sql"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:ejbql"/>
+                               <xs:element name="qualifier" minOccurs="0" 
maxOccurs="unbounded" type="xs:string"/>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
ref="cay:ordering"/>
+                               <xs:element name="prefetch" minOccurs="0" 
maxOccurs="unbounded" type="xs:string"/>
+                       </xs:sequence>
+                       <xs:attribute name="type" use="required" 
type="xs:string"/>
+                       <xs:attribute name="name" use="required" 
type="xs:string"/>
+                       <xs:attribute name="root" use="optional" 
type="xs:string"/>
+                       <xs:attribute name="root-name" use="optional" 
type="xs:string"/>
+                       <xs:attribute name="result-entity" use="optional" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+
+       <xs:element name="ordering">
+               <xs:complexType>
+                       <xs:simpleContent>
+                               <xs:extension base="xs:string">
+                                       <xs:attribute name="descending" 
type="xs:boolean"/>
+                                       <xs:attribute name="ignore-case" 
type="xs:boolean"/>
+                               </xs:extension>
+                       </xs:simpleContent>
+               </xs:complexType>
+       </xs:element>
+
+       <xs:element name="sql">
+               <xs:annotation>
+                       <xs:documentation>Defines arbitrary SQL statement. Note 
that SQL statement can be customized for different SQL dialects per DbAdapter 
class. If no adapter-specific statement is found, the one with no adapter label 
is used by default.</xs:documentation>
+               </xs:annotation>
+               <xs:complexType>
+                       <xs:simpleContent>
+                               <xs:extension base="xs:string">
+                                       <xs:attribute name="adapter-class" 
type="xs:string"/>
+                               </xs:extension>
+                       </xs:simpleContent>
+               </xs:complexType>
+       </xs:element>
+
+       <xs:element name="ejbql" type="xs:string"/>
+
+       <xs:element name="reverse-engineering-config">
+               <xs:complexType>
+                       <xs:attribute name="name" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+
+       <xs:element name="property">
+               <xs:annotation>
+                       <xs:documentation>A generic property used by other 
elements.</xs:documentation>
+               </xs:annotation>
+               <xs:complexType>
+                       <xs:attribute name="name" use="required" 
type="xs:string"/>
+                       <xs:attribute name="value" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="embeddable">
+               <xs:complexType>
+                       <xs:sequence>
+                               <xs:element name="embeddable-attribute" 
minOccurs="0" maxOccurs="unbounded">
+                                       <xs:complexType>
+                                               <xs:attribute name="name" 
use="required" type="xs:string"/>
+                                               <xs:attribute name="type" 
use="required" type="xs:string"/>
+                                               <xs:attribute 
name="db-attribute-name" use="required" type="xs:string"/>
+                                       </xs:complexType>
+                               </xs:element>
+                       </xs:sequence>
+                       <xs:attribute name="className" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+
+       <xs:element name="embedded-attribute">
+               <xs:complexType>
+                       <xs:sequence>
+                               <xs:element minOccurs="0" maxOccurs="unbounded"
+                                       
ref="cay:embeddable-attribute-override"/>
+                       </xs:sequence>
+                       <xs:attribute name="type" use="required" 
type="xs:string"/>
+                       <xs:attribute name="name" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+
+       <xs:element name="embeddable-attribute-override">
+               <xs:complexType>
+                       <xs:attribute name="db-attribute-path" use="required" 
type="xs:string"/>
+                       <xs:attribute name="name" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+
+       <xs:element name="procedure">
+               <xs:complexType>
+                       <xs:sequence>
+                               <xs:element minOccurs="0" maxOccurs="unbounded" 
name="procedure-parameter">
+                                       <xs:complexType>
+                                               <xs:attribute name="name" 
use="required" type="xs:string"/>
+                                               <xs:attribute name="type" 
use="required" type="xs:string"/>
+                                               <xs:attribute name="length" 
use="optional" type="xs:integer"/>
+                                               <xs:attribute name="direction" 
use="required" type="xs:string"/>
+                                       </xs:complexType>
+                               </xs:element>
+                       </xs:sequence>
+                       <xs:attribute name="name" use="required" 
type="xs:string"/>
+                       <xs:attribute name="schema" type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="pre-update">
+               <xs:complexType>
+                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="post-persist">
+               <xs:complexType>
+                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="post-update">
+               <xs:complexType>
+                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="post-add">
+               <xs:complexType>
+                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="pre-persist">
+               <xs:complexType>
+                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="post-remove">
+               <xs:complexType>
+                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="post-load">
+               <xs:complexType>
+                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+       <xs:element name="pre-remove">
+               <xs:complexType>
+                       <xs:attribute name="method-name" use="required" 
type="xs:string"/>
+               </xs:complexType>
+       </xs:element>
+
+       <xs:element name="db-key-generator">
+               <xs:annotation>
+                       <xs:documentation>Used to install the Automatic 
Sequence/Key Generation facility for db-entity. This feature is intended for 
use with simple (non-compound) integral primary keys.</xs:documentation>
+               </xs:annotation>
+               <xs:complexType>
+                       <xs:sequence>
+                               <xs:element name="db-generator-type" 
type="xs:string">
+                                       <xs:annotation>
+                                               <xs:documentation>Specifies the 
Key Generation Method that will be employed
+      'ORACLE'               - use Oracle's SEQUENCE
+      'NAMED_SEQUENCE_TABLE' - use USER designated SEQUENCE TABLE. User 
specifies the name of a DBMS Table with the schema (sequence INT) which will be 
used to hold sequence values (not supported yet)</xs:documentation>
+                                       </xs:annotation>
+                               </xs:element>
+                               <xs:element minOccurs="0" 
name="db-generator-name" type="xs:string">
+                                       <xs:annotation>
+                                               <xs:documentation>For 
db-generator-type ORACLE this is the name of the ORACLE SEQUENCE to use. The 
SEQUENCE is assumed to already exist in the Database.
+If this is db-generator-type NAMED_SEQUENCE_TABLE Key Generation, this 
specifies the name of the SEQUENCE TABLE to use. The NAMED_SEQUENCE_TABLE is 
assumed to already exist in the database.</xs:documentation>
+                                       </xs:annotation>
+                               </xs:element>
+                               <xs:element minOccurs="0" 
name="db-key-cache-size" type="xs:integer">
+                                       <xs:annotation>
+                                               <xs:documentation>Size of key 
cache. For db-generator-type ORACLE , this value MUST match the Oracle SEQUENCE 
 INCREMENT value.  If there is a mismatch between this value and the Oracle 
SEQUENCE INCREMENT value, then there will likely be duplicate key problems.
+For db-generator-type NAMED_SEQUENCE_TABLE , this tells how many keys the 
Container will fetch in a single DBMS call.</xs:documentation>
+                                       </xs:annotation>
+                               </xs:element>
+                       </xs:sequence>
+               </xs:complexType>
+       </xs:element>
+</xs:schema>

http://git-wip-us.apache.org/repos/asf/cayenne/blob/5ebf8eac/cayenne-server/src/main/resources/org/apache/cayenne/schema/8/reverseEngineering.xsd
----------------------------------------------------------------------
diff --git 
a/cayenne-server/src/main/resources/org/apache/cayenne/schema/8/reverseEngineering.xsd
 
b/cayenne-server/src/main/resources/org/apache/cayenne/schema/8/reverseEngineering.xsd
new file mode 100644
index 0000000..6905386
--- /dev/null
+++ 
b/cayenne-server/src/main/resources/org/apache/cayenne/schema/8/reverseEngineering.xsd
@@ -0,0 +1,139 @@
+<?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 attributeFormDefault="unqualified"
+           elementFormDefault="qualified"
+           xmlns:xs="http://www.w3.org/2001/XMLSchema";>
+
+    <xs:complexType name="PatternParamType" mixed="true">
+        <xs:annotation>
+            <xs:documentation>
+                At least one of 3 options ot fill pattern information should 
be used
+                1) &lt;tag>pattarn&lt;tag>
+                2) &lt;tag pattern="pattern" />
+                3) &lt;tag>
+                      &lt;pattern>pattern&lt;/pattern>
+                   &lt;/tag>
+            </xs:documentation>
+        </xs:annotation>
+        <xs:sequence>
+            <xs:element type="xs:string" name="pattern" minOccurs="0"/>
+        </xs:sequence>
+        <xs:attribute type="xs:string" name="pattern" use="optional"/>
+    </xs:complexType>
+
+    <xs:complexType name="IncludeTableType" mixed="true">
+        <xs:complexContent>
+            <xs:extension base="PatternParamType">
+                <xs:sequence>
+                    <xs:choice minOccurs="0" maxOccurs="unbounded">
+                        <xs:element name="includeColumn" 
type="PatternParamType" />
+                        <xs:element name="excludeColumn" 
type="PatternParamType" />
+                    </xs:choice>
+                </xs:sequence>
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="FilterContainerType">
+        <xs:sequence>
+            <xs:choice minOccurs="1" maxOccurs="unbounded">
+                <xs:element name="includeTable" type="IncludeTableType" />
+                <xs:element name="excludeTable" type="PatternParamType" />
+                <xs:element name="includeColumn" type="PatternParamType" />
+                <xs:element name="excludeColumn" type="PatternParamType" />
+                <xs:element name="includeProcedure" type="PatternParamType" />
+                <xs:element name="excludeProcedure" type="PatternParamType" />
+            </xs:choice>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="SchemaType" mixed="true">
+        <xs:annotation>
+            <xs:documentation>
+                At least one of 3 options to provide schema name can be used:
+                1) &lt;schema>name&lt;schema>
+                2) &lt;schema name="name" />
+                3) &lt;schema>
+                &lt;name>name&lt;/name>
+                &lt;/schema>
+            </xs:documentation>
+        </xs:annotation>
+        <xs:complexContent>
+            <xs:extension base="FilterContainerType">
+                <xs:sequence>
+                    <xs:element name="name" type="xs:string" minOccurs="0" 
maxOccurs="1" />
+                </xs:sequence>
+                <xs:attribute type="xs:string" name="name" use="optional" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="CatalogType" mixed="true">
+        <xs:annotation>
+            <xs:documentation>
+                At least one of 3 options to provide schema name can be used:
+                1) &lt;catalog>name&lt;catalog>
+                2) &lt;catalog name="name" />
+                3) &lt;catalog>
+                &lt;name>name&lt;/name>
+                &lt;/catalog>
+            </xs:documentation>
+        </xs:annotation>
+        <xs:complexContent>
+            <xs:extension base="FilterContainerType">
+                <xs:sequence>
+                    <xs:element name="name" type="xs:string" minOccurs="0" 
maxOccurs="1" />
+                    <xs:choice minOccurs="0" maxOccurs="unbounded">
+                        <xs:element name="schema" type="SchemaType" />
+                    </xs:choice>
+                </xs:sequence>
+                <xs:attribute type="xs:string" name="name" use="optional" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="ReverseEngineeringType">
+        <xs:annotation>
+            <xs:documentation>
+                <!-- TODO -->
+            </xs:documentation>
+        </xs:annotation>
+        <xs:complexContent>
+            <xs:extension base="FilterContainerType">
+                <xs:sequence>
+                    <xs:element name="name" type="xs:string" minOccurs="0" 
maxOccurs="1" />
+                    <xs:choice minOccurs="0" maxOccurs="unbounded">
+                        <xs:element name="catalog" type="CatalogType" />
+                        <xs:element name="schema" type="SchemaType" />
+                    </xs:choice>
+                </xs:sequence>
+                <xs:attribute type="xs:string" name="name" use="optional" />
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:element name="reverseEngineering" type="ReverseEngineeringType">
+        <xs:annotation>
+            <!-- TODO -->
+            <xs:documentation> </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+</xs:schema>

Reply via email to