<?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

      https://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.
-->
<orm xmlns="https://db.apache.org/jdo/xmlns/orm"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="https://db.apache.org/jdo/xmlns/orm
     https://db.apache.org/jdo/xmlns/orm_3_2.xsd">
<!--
This file contains the schema information when an implementation
has datastore identity.
-->
    <package name="org.apache.jdo.tck.pc.companyAnnotatedFC">

        <!-- changed table name -->
        <class name="FCDSDepartment" table="comp_depts">
        </class>

        <class name="FCDSProject">
            <inheritance>
                <!-- changed discriminator column name -->
                <discriminator column="CLASS"/>
            </inheritance>
            <field name="budget">
                <!-- changed column name -->
               <column name="PROJECT_BUDGET"/>
            </field>
        </class>

    </package>
</orm>
