<?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.
-->
<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 application identity.
-->
    <package name="org.apache.jdo.tck.pc.companyMapWithoutJoin">

        <class name="Company" table="companies">
            <datastore-identity strategy="identity" column="DATASTORE_IDENTITY"/>

            <field name="companyid" column="ID"/>
            <field name="name" column="NAME">
              <column name="NAME" sql-type="VARCHAR"/>
            </field>
            <field name="founded" column="FOUNDEDDATE"/>
            <field name="departments" mapped-by="company"/>
        </class>

        <class name="Department" table="departments">
            <datastore-identity strategy="identity" column="DATASTORE_IDENTITY"/>
            <field name="deptid" column="ID"/>
            <field name="name" column="NAME"/>
            <field name="company" column="COMPANYID"/>
            <!-- field type is Map<String, Employee> -->
            <field name="roles" mapped-by="department">
                <key mapped-by="role"/>
            </field>
        </class>

        <class name="PartTimeEmployee">
            <inheritance strategy="superclass-table"/>
            <field name="wage" column="WAGE"/>
        </class>

        <class name="FullTimeEmployee">
            <inheritance strategy="superclass-table"/>
            <field name="salary" column="SALARY"/>
        </class>

        <class name="Employee">
            <inheritance strategy="superclass-table"/>
            <field name="hiredate" column="HIREDATE"/>
            <field name="weeklyhours" column="WEEKLYHOURS"/>
            <field name="role" column="ROLE"/>
            <field name="department" column="DEPARTMENT">
                        <foreign-key/>
            </field>
            <field name="fundingDept" column="FUNDINGDEPT">
                        <foreign-key/>
            </field>
            <field name="manager" column="MANAGER">
                        <foreign-key/>
            </field>
            <field name="mentor" column="MENTOR">
                        <foreign-key/>
            </field>
            <field name="protege" mapped-by="mentor"/>
            <field name="hradvisor" column="HRADVISOR">
                        <foreign-key/>
            </field>
            <field name="team" mapped-by="manager"/>
            <field name="hradvisees" mapped-by="hradvisor"/>
        </class>

        <class name="Person" table="persons">
            <datastore-identity strategy="identity" column="DATASTORE_IDENTITY"/>
            <inheritance strategy="new-table">
                <discriminator strategy="class-name" column="DISCRIMINATOR"
                    indexed="true"/>
            </inheritance>
            <field name="personid" column="PERSONID"/>
            <field name="firstname" column="FIRSTNAME"/>
            <field name="lastname" column="LASTNAME"/>
            <field name="middlename">
              <column name="MIDDLENAME" allows-null="true"/>
            </field>
            <field name="birthdate" column="BIRTHDATE"/>
        </class>

        <interface name="ICompany" table="companies">
            <datastore-identity strategy="identity" column="DATASTORE_IDENTITY"/>
            <property name="companyid" column="ID"/>
            <property name="name" column="NAME">
              <column name="NAME" sql-type="VARCHAR"/>
            </property>
            <property name="founded" column="FOUNDEDDATE"/>
            <property name="departments" mapped-by="company"/>
        </interface>

        <interface name="IDepartment" table="departments">
            <datastore-identity strategy="identity" column="DATASTORE_IDENTITY"/>
            <!-- field type is Map<String, Employee> -->
            <property name="roles" mapped-by="dept">
                <key mapped-by="role"/>
            </property>
            <property name="deptid" column="ID"/>
            <property name="name" column="NAME"/>
            <property name="company" column="COMPANYID"/>
        </interface>

        <interface name="IPartTimeEmployee">
            <inheritance strategy="superclass-table"/>
            <property name="wage" column="WAGE"/>
        </interface>

        <interface name="IFullTimeEmployee">
            <inheritance strategy="superclass-table"/>
            <property name="salary" column="SALARY"/>
        </interface>

        <interface name="IEmployee">
            <inheritance strategy="superclass-table"/>
            <property name="hiredate" column="HIREDATE"/>
            <property name="weeklyhours" column="WEEKLYHOURS"/>
            <property name="department" column="DEPARTMENT">
                        <foreign-key/>
            </property>
            <property name="fundingDept" column="FUNDINGDEPT">
                        <foreign-key/>
            </property>
            <property name="manager" column="MANAGER">
                        <foreign-key/>
            </property>
            <property name="mentor" column="MENTOR">
                        <foreign-key/>
            </property>
            <property name="protege" mapped-by="mentor"/>
            <property name="hradvisor" column="HRADVISOR">
                        <foreign-key/>
            </property>
            <property name="team" mapped-by="manager"/>
            <property name="hradvisees" mapped-by="hradvisor"/>
        </interface>

        <interface name="IPerson" table="persons">
            <datastore-identity strategy="identity" column="DATASTORE_IDENTITY"/>
            <inheritance strategy="new-table">
                <discriminator strategy="class-name" column="DISCRIMINATOR"
                    indexed="true"/>
            </inheritance>
            <property name="personid" column="PERSONID"/>
            <property name="firstname" column="FIRSTNAME"/>
            <property name="lastname" column="LASTNAME"/>
            <property name="middlename">
              <column name="MIDDLENAME" allows-null="true"/>
            </property>
        </interface>
    </package>
</orm>
