<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
 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.
-->
<!-- ==================================================================== -->
<!--                                                                      -->
<!-- I D  B R O K E R  S C H E M A                                        -->
<!--                                                                      -->
<!-- ==================================================================== -->
<!-- This is the XML schema use by Torque to generate the SQL for         -->
<!-- ID_TABLE table used by the id broker mechanism in Torque.            -->
<!-- ==================================================================== -->
<!-- @author: <a href="mailto:jvanzyl@apache.org">Jason van Zyl</a>       -->
<!-- @version $Id$ -->
<!-- ==================================================================== -->

<database name="fulcrum"
    defaultIdMethod="none"
    xmlns="http://db.apache.org/torque/4.0/templates/database"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://db.apache.org/torque/4.0/templates/database 
        http://db.apache.org/torque/4.0/templates/database.xsd">

  <table name="ID_TABLE" idMethod="idbroker">
    <column name="ID_TABLE_ID" required="true" primaryKey="true" type="INTEGER"/>
    <column name="TABLE_NAME" required="true" size="255" type="VARCHAR"/>
    <column name="NEXT_ID" type="INTEGER"/>
    <column name="QUANTITY" type="INTEGER"/>

    <unique>
      <unique-column name="TABLE_NAME"/>
    </unique>

  </table>
</database>
