ilscipio/scipio-erp

View on GitHub
applications/humanres/entitydef/entitymodel.xml

Summary

Maintainability
Test Coverage
<?xml version="1.0" encoding="UTF-8"?>
<!--
This file is subject to the terms and conditions defined in the
files 'LICENSE' and 'NOTICE', which are part of this source
code package.
-->

<entitymodel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/entitymodel.xsd">
  <!-- ========================================================= -->
  <!-- ======================== Defaults ======================= -->
  <!-- ========================================================= -->
    <title>Entity of an Apache OFBiz Component</title>
    <description>None</description>
    <version>1.0</version>

  <!-- ========================================================= -->
  <!-- ======================== Data Model ===================== -->
  <!-- The modules in this file are as follows:                  -->
  <!--  - org.ofbiz.humanres.ability -->
  <!--  - org.ofbiz.humanres.employment -->
  <!--  - org.ofbiz.humanres.position -->
  <!-- ========================================================= -->


  <!-- ========================================================= -->
  <!-- org.ofbiz.humanres.ability -->
  <!-- ========================================================= -->

    <entity entity-name="PartyQual"
            package-name="org.ofbiz.humanres.ability"
            title="Party Qualification">
        <field name="partyId" type="id-ne"></field>
        <field name="partyQualTypeId" type="id-ne"></field>
        <field name="qualificationDesc" type="id-long"></field>
        <field name="title" type="id-long"><description>Title of degree or job</description></field>
        <field name="statusId" type="id"><description>Status e.g. completed, part-time etc.</description></field>
        <field name="verifStatusId" type="id"><description>Verification done for this entry if any</description></field>
        <field name="fromDate" type="date-time"></field>
        <field name="thruDate" type="date-time"></field>
        <prim-key field="partyId"/>
        <prim-key field="partyQualTypeId"/>
        <prim-key field="fromDate"/>
        <relation type="one" fk-name="PARTY_QUAL_PRTY" rel-entity-name="Party">
            <key-map field-name="partyId"/>
        </relation>
        <relation type="one" fk-name="PARTY_QUAL_PQTYP" rel-entity-name="PartyQualType">
            <key-map field-name="partyQualTypeId"/>
        </relation>
        <relation type="one" fk-name="PARTY_QUAL_STATUS" rel-entity-name="StatusItem">
            <key-map field-name="statusId"/>
        </relation>
        <relation type="one" title="Verification" fk-name="PARTY_QUAL_VERIF" rel-entity-name="StatusItem">
            <key-map field-name="verifStatusId" rel-field-name="statusId"/>
        </relation>
    </entity>

    <entity entity-name="PartyQualType"
            package-name="org.ofbiz.humanres.ability"
            title="Party Qualification Type">
      <field name="partyQualTypeId" type="id-ne"></field>
      <field name="parentTypeId" type="id-ne"></field>
      <field name="hasTable" type="indicator"></field>
      <field name="description" type="description"></field>
      <prim-key field="partyQualTypeId"/>
      <relation type="one" fk-name="PARTY_QUAL_TPAR" title="Parent" rel-entity-name="PartyQualType">
        <key-map field-name="parentTypeId" rel-field-name="partyQualTypeId"/>
      </relation>
    </entity>
    <entity entity-name="PartyResume"
            package-name="org.ofbiz.humanres.ability"
            title="Resume">
      <field name="resumeId" type="id-ne"></field>
      <field name="partyId" type="id-ne"></field>
      <field name="contentId" type="id"></field>
      <field name="resumeDate" type="date-time"></field>
      <field name="resumeText" type="long-varchar"></field>
      <prim-key field="resumeId"/>
      <relation type="one" fk-name="PARTY_RSME_PRTY" rel-entity-name="Party">
        <key-map field-name="partyId"/>
      </relation>
      <relation type="one-nofk" fk-name="PARTY_RSME_CNT" rel-entity-name="Content">
          <key-map field-name="contentId"/>
      </relation>
    </entity>
    <entity entity-name="PartySkill"
            package-name="org.ofbiz.humanres.ability"
            title="Party Skill">
      <field name="partyId" type="id-ne"></field>
      <field name="skillTypeId" type="id-ne"></field>
      <field name="yearsExperience" type="numeric"></field>
      <field name="rating" type="numeric"></field>
      <field name="skillLevel" type="numeric"></field>
      <field name="startedUsingDate" type="date-time"></field>
      <prim-key field="partyId"/>
      <prim-key field="skillTypeId"/>
      <relation type="one" fk-name="PARTY_SKLL_PRTY" rel-entity-name="Party">
        <key-map field-name="partyId"/>
      </relation>
      <relation type="one" fk-name="PARTY_SKLL_SKTP" rel-entity-name="SkillType">
        <key-map field-name="skillTypeId"/>
      </relation>
    </entity>
    <entity entity-name="PerfRatingType"
            package-name="org.ofbiz.humanres.ability"
            title="Performance Rating Type">
      <field name="perfRatingTypeId" type="id-ne"></field>
      <field name="parentTypeId" type="id-ne"></field>
      <field name="hasTable" type="indicator"></field>
      <field name="description" type="description"></field>
      <prim-key field="perfRatingTypeId"/>
      <relation type="one" fk-name="PERF_RATNG_TYP" title="Parent" rel-entity-name="PerfRatingType">
        <key-map field-name="parentTypeId" rel-field-name="perfRatingTypeId"/>
      </relation>
    </entity>
    <entity entity-name="PerfReview"
            package-name="org.ofbiz.humanres.ability"
            title="Employee Performance Review">
      <field name="employeePartyId" type="id-ne"></field>
      <field name="employeeRoleTypeId" type="id-ne"></field>
      <field name="perfReviewId" type="id-ne"></field>
      <field name="managerPartyId" type="id"></field>
      <field name="managerRoleTypeId" type="id"></field>
      <field name="paymentId" type="id"></field>
      <field name="emplPositionId" type="id"></field>
      <field name="fromDate" type="date-time"></field>
      <field name="thruDate" type="date-time"></field>
      <field name="comments" type="comment"></field>
      <prim-key field="employeePartyId"/>
      <prim-key field="employeeRoleTypeId"/>
      <prim-key field="perfReviewId"/>
      <relation type="one" fk-name="PERF_REV_EPTY" title="Employee" rel-entity-name="Party">
        <key-map field-name="employeePartyId" rel-field-name="partyId"/>
      </relation>
      <relation type="one" fk-name="PERF_REV_EPTRL" title="Employee" rel-entity-name="PartyRole">
        <key-map field-name="employeePartyId" rel-field-name="partyId"/>
        <key-map field-name="employeeRoleTypeId" rel-field-name="roleTypeId"/>
      </relation>
      <relation type="one" fk-name="PERF_REV_MPTY" title="Manager" rel-entity-name="Party">
        <key-map field-name="managerPartyId" rel-field-name="partyId"/>
      </relation>
      <relation type="one-nofk" fk-name="PERF_REV_MPTRL" title="Manager" rel-entity-name="PartyRole">
        <key-map field-name="managerPartyId" rel-field-name="partyId"/>
        <key-map field-name="managerRoleTypeId" rel-field-name="roleTypeId"/>
      </relation>
      <relation type="one" fk-name="PERF_REV_PMNT" rel-entity-name="Payment">
        <key-map field-name="paymentId"/>
      </relation>
      <relation type="one-nofk" fk-name="PERF_REV_PSTN" rel-entity-name="EmplPosition">
        <key-map field-name="emplPositionId"/>
      </relation>
    </entity>
    <entity entity-name="PerfReviewItem"
            package-name="org.ofbiz.humanres.ability"
            title="Performance Review Item">
      <field name="employeePartyId" type="id-ne"></field>
      <field name="employeeRoleTypeId" type="id"></field>
      <field name="perfReviewId" type="id-ne"></field>
      <field name="perfReviewItemSeqId" type="id-ne"></field>
      <field name="perfReviewItemTypeId" type="id"></field>
      <field name="perfRatingTypeId" type="id"></field>
      <field name="comments" type="comment"></field>
      <prim-key field="employeePartyId"/>
      <prim-key field="employeeRoleTypeId"/>
      <prim-key field="perfReviewId"/>
      <prim-key field="perfReviewItemSeqId"/>
      <relation type="one" fk-name="PERF_RVITM_PFRV" rel-entity-name="PerfReview">
        <key-map field-name="employeePartyId"/>
        <key-map field-name="employeeRoleTypeId"/>
        <key-map field-name="perfReviewId"/>
      </relation>
      <relation type="one" fk-name="PERF_RVITM_EPTY" title="Employee" rel-entity-name="Party">
        <key-map field-name="employeePartyId" rel-field-name="partyId"/>
      </relation>
      <relation type="one" fk-name="PERF_RVITM_EPTRL" title="Employee" rel-entity-name="PartyRole">
        <key-map field-name="employeePartyId" rel-field-name="partyId"/>
        <key-map field-name="employeeRoleTypeId" rel-field-name="roleTypeId"/>
      </relation>
      <relation type="one-nofk" fk-name="PERF_RVITM_PRTTP" rel-entity-name="PerfRatingType">
        <key-map field-name="perfRatingTypeId"/>
      </relation>
      <relation type="one-nofk" fk-name="PERF_RVITM_PRITTP" rel-entity-name="PerfReviewItemType">
        <key-map field-name="perfReviewItemTypeId"/>
      </relation>
    </entity>
    <entity entity-name="PerfReviewItemType"
            package-name="org.ofbiz.humanres.ability"
            title="Performance Review Item Type">
      <field name="perfReviewItemTypeId" type="id-ne"></field>
      <field name="parentTypeId" type="id-ne"></field>
      <field name="hasTable" type="indicator"></field>
      <field name="description" type="description"></field>
      <prim-key field="perfReviewItemTypeId"/>
      <relation type="one" fk-name="PERF_REV_ITM_TYP" title="Parent" rel-entity-name="PerfReviewItemType">
        <key-map field-name="parentTypeId" rel-field-name="perfReviewItemTypeId"/>
      </relation>
    </entity>
    <entity entity-name="PerformanceNote"
            package-name="org.ofbiz.humanres.ability"
            title="Performance Note">
      <field name="partyId" type="id-ne"></field>
      <field name="roleTypeId" type="id-ne"></field>
      <field name="fromDate" type="date-time"></field>
      <field name="thruDate" type="date-time"></field>
      <field name="communicationDate" type="date-time"></field>
      <field name="comments" type="comment"></field>
      <prim-key field="partyId"/>
      <prim-key field="roleTypeId"/>
      <prim-key field="fromDate"/>
      <relation type="one" fk-name="PERF_NOTE_PRTY" rel-entity-name="Party">
        <key-map field-name="partyId"/>
      </relation>
      <relation type="one" fk-name="PERF_NOTE_PRLE" rel-entity-name="PartyRole">
        <key-map field-name="partyId"/>
        <key-map field-name="roleTypeId"/>
      </relation>
    </entity>
    <entity entity-name="PersonTraining"
            package-name="org.ofbiz.humanres.ability"
            title="Person Training">
      <field name="partyId" type="id-ne"></field>
      <field name="trainingRequestId" type="id-ne"></field>
      <field name="trainingClassTypeId" type="id-ne"></field>
      <field name="workEffortId" type="id-ne"></field> 
      <field name="fromDate" type="date-time"></field>
      <field name="thruDate" type="date-time"></field>
      <field name="approverId" type="id-ne"></field>
      <field name="approvalStatus" type="short-varchar"></field>
      <field name="reason" type="description"></field>
      <prim-key field="partyId"/>
      <prim-key field="trainingClassTypeId"/>
      <prim-key field="fromDate"/>
      <relation type="one" fk-name="PERS_TRNG_PRTY" rel-entity-name="Party">
        <key-map field-name="partyId"/>
      </relation>
      <relation type="one" fk-name="PERS_TRNG_APPR" title="Approver" rel-entity-name="Person">
          <key-map field-name="approverId" rel-field-name="partyId"/>
      </relation>
      <relation type="one" fk-name="PERS_TRNG_TCTP" rel-entity-name="TrainingClassType">
        <key-map field-name="trainingClassTypeId"/>
      </relation>
      <relation type="one" fk-name="PERS_TRNG_WREF" rel-entity-name="WorkEffort">
        <key-map field-name="workEffortId"/>
      </relation>
      <relation type="one" fk-name="PERS_TRNG_TRNRQ" rel-entity-name="TrainingRequest">
          <key-map field-name="trainingRequestId"/>
      </relation>
    </entity>
    <entity entity-name="ResponsibilityType"
            package-name="org.ofbiz.humanres.ability"
            title="Responsibility Type">
      <field name="responsibilityTypeId" type="id-ne"></field>
      <field name="parentTypeId" type="id"></field>
      <field name="hasTable" type="indicator"></field>
      <field name="description" type="description"></field>
      <prim-key field="responsibilityTypeId"/>
      <relation type="one" fk-name="RESPON_TYPE_PAR" title="Parent" rel-entity-name="ResponsibilityType">
        <key-map field-name="parentTypeId" rel-field-name="responsibilityTypeId"/>
      </relation>
    </entity>
    <entity entity-name="SkillType"
            package-name="org.ofbiz.humanres.ability"
            title="Skill Type">
      <field name="skillTypeId" type="id-ne"></field>
      <field name="parentTypeId" type="id-ne"></field>
      <field name="hasTable" type="indicator"></field>
      <field name="description" type="description"></field>
      <prim-key field="skillTypeId"/>
      <relation type="one" fk-name="PARNT_SKILL_TYPE" title="Parent" rel-entity-name="SkillType">
        <key-map field-name="parentTypeId" rel-field-name="skillTypeId"/>
      </relation>
    </entity>
    <entity entity-name="TrainingClassType"
            package-name="org.ofbiz.humanres.ability"
            title="Training Class Type">
      <field name="trainingClassTypeId" type="id-ne"></field>
      <field name="parentTypeId" type="id"></field>
      <field name="hasTable" type="indicator"></field>
      <field name="description" type="description"></field>
      <prim-key field="trainingClassTypeId"/>
      <relation type="one" fk-name="TRAIN_TYPE_PAR" title="Parent" rel-entity-name="TrainingClassType">
        <key-map field-name="parentTypeId" rel-field-name="trainingClassTypeId"/>
      </relation>
    </entity>

  <!-- ========================================================= -->
  <!-- org.ofbiz.humanres.employment -->
  <!-- ========================================================= -->

    <entity entity-name="BenefitType"
            package-name="org.ofbiz.humanres.employment"
            title="Benefit Type">
      <field name="benefitTypeId" type="id-ne"></field>
      <field name="benefitName" type="name"></field>
      <field name="parentTypeId" type="id-ne"></field>
      <field name="hasTable" type="indicator"></field>
      <field name="description" type="description"></field>
      <field name="employerPaidPercentage" type="floating-point"></field>
      <prim-key field="benefitTypeId"/>
      <relation type="one" fk-name="BEN_TYPE_PAR" title="Parent" rel-entity-name="BenefitType">
        <key-map field-name="parentTypeId" rel-field-name="benefitTypeId"/>
      </relation>
    </entity>
    <view-entity entity-name="BenefitTypeAndParty"
             package-name="org.ofbiz.humanres.employment"
             title="Benefit Type">
      <member-entity entity-alias="BT" entity-name="BenefitType"/>
      <member-entity entity-alias="PB" entity-name="PartyBenefit"/>
      <alias-all entity-alias="BT"/>
      <alias-all entity-alias="PB">
        <exclude field="benefitTypeId"/>
      </alias-all>
      <view-link entity-alias="BT" rel-entity-alias="PB">
        <key-map field-name="benefitTypeId"/>
      </view-link>
    </view-entity>
    <entity entity-name="Employment"
            package-name="org.ofbiz.humanres.employment"
            title="Employment">
      <field name="roleTypeIdFrom" type="id-ne"></field>
      <field name="roleTypeIdTo" type="id-ne"></field>
      <field name="partyIdFrom" type="id-ne"></field>
      <field name="partyIdTo" type="id-ne"></field>
      <field name="fromDate" type="date-time"></field>
      <field name="thruDate" type="date-time"></field>
      <field name="terminationReasonId" type="id"></field>
      <field name="terminationTypeId" type="id"></field>
      <prim-key field="roleTypeIdFrom"/>
      <prim-key field="roleTypeIdTo"/>
      <prim-key field="partyIdFrom"/>
      <prim-key field="partyIdTo"/>
      <prim-key field="fromDate"/>
      <relation type="one" fk-name="EMPLMNT_TPTY" title="To" rel-entity-name="Party">
        <key-map field-name="partyIdTo" rel-field-name="partyId"/>
      </relation>
      <relation type="one" fk-name="EMPLMNT_TPTRL" title="To" rel-entity-name="PartyRole">
        <key-map field-name="partyIdTo" rel-field-name="partyId"/>
        <key-map field-name="roleTypeIdTo" rel-field-name="roleTypeId"/>
      </relation>
      <relation type="one" fk-name="EMPLMNT_FPTY" title="From" rel-entity-name="Party">
        <key-map field-name="partyIdFrom" rel-field-name="partyId"/>
      </relation>
      <relation type="one" fk-name="EMPLMNT_FPTRL" title="From" rel-entity-name="PartyRole">
        <key-map field-name="partyIdFrom" rel-field-name="partyId"/>
        <key-map field-name="roleTypeIdFrom" rel-field-name="roleTypeId"/>
      </relation>
      <relation type="one-nofk" fk-name="EMPLMNT_TNRN" rel-entity-name="TerminationReason">
        <key-map field-name="terminationReasonId"/>
      </relation>
      <relation type="one-nofk" fk-name="EMPLMNT_TNTP" rel-entity-name="TerminationType">
        <key-map field-name="terminationTypeId"/>
      </relation>
      <relation type="many" fk-name="EMPLMNT_AGR" rel-entity-name="Agreement">
        <key-map field-name="partyIdTo" rel-field-name="agreementId"/>
        <key-map field-name="partyIdFrom" rel-field-name="agreementId"/>
      </relation>
    </entity>
    <view-entity entity-name="EmploymentAndPerson"
            package-name="org.ofbiz.humanres.employment"
            title="Employment and Person">
        <member-entity entity-alias="EMPLMNT" entity-name="Employment"/>
        <member-entity entity-alias="PERS" entity-name="Person"/>
        <alias-all entity-alias="EMPLMNT"/>
        <alias-all entity-alias="PERS"/>
        <view-link entity-alias="EMPLMNT" rel-entity-alias="PERS">
            <key-map field-name="partyIdTo" rel-field-name="partyId"/>
        </view-link>
    </view-entity>

    <entity entity-name="EmploymentApp"
            package-name="org.ofbiz.humanres.employment"
            title="Employment Application">
      <field name="applicationId" type="id-ne"></field>
      <field name="emplPositionId" type="id"></field>
      <field name="statusId" type="id"></field>
      <field name="employmentAppSourceTypeId" type="id"></field>
      <field name="applyingPartyId" type="id"></field>
      <field name="referredByPartyId" type="id"></field>
      <field name="applicationDate" type="date-time"></field>
      <field name="approverPartyId" type="id"></field>
      <field name="jobRequisitionId" type="id"></field>
      <prim-key field="applicationId"/>
      <relation type="one-nofk" fk-name="EMPLMNT_APP_POS" rel-entity-name="EmplPosition">
        <key-map field-name="emplPositionId"/>
      </relation>
      <relation type="one-nofk" fk-name="EMPLMNT_APP_STTS" rel-entity-name="StatusItem">
        <key-map field-name="statusId"/>
      </relation>
      <relation type="one-nofk" fk-name="EMPLMNT_APP_EAST" rel-entity-name="EmploymentAppSourceType">
        <key-map field-name="employmentAppSourceTypeId"/>
      </relation>
      <relation type="one-nofk" fk-name="EMPLMNT_APP_APTY" title="Applying" rel-entity-name="Party">
        <key-map field-name="applyingPartyId" rel-field-name="partyId"/>
      </relation>
      <relation type="one-nofk" fk-name="EMPLMNT_APP_RBPTY" title="ReferredBy" rel-entity-name="Party">
        <key-map field-name="referredByPartyId" rel-field-name="partyId"/>
      </relation>
      <relation type="one" fk-name="EMPLMNT_APP_APER" title="Approver" rel-entity-name="Party">
          <key-map field-name="approverPartyId" rel-field-name="partyId"/>
      </relation>
      <relation type="one" fk-name="EMPLMNT_APP_JBRQ" rel-entity-name="JobRequisition">
          <key-map field-name="jobRequisitionId"/>
      </relation>
    </entity>
    <entity entity-name="EmploymentAppSourceType"
            package-name="org.ofbiz.humanres.employment"
            title="Employment Application Source Type">
      <field name="employmentAppSourceTypeId" type="id-ne"></field>
      <field name="parentTypeId" type="id-ne"></field>
      <field name="hasTable" type="indicator"></field>
      <field name="description" type="description"></field>
      <prim-key field="employmentAppSourceTypeId"/>
      <relation type="one" fk-name="EMPL_APP_SRC_TYP" title="Parent" rel-entity-name="EmploymentAppSourceType">
        <key-map field-name="parentTypeId" rel-field-name="employmentAppSourceTypeId"/>
      </relation>
    </entity>
    <entity entity-name="EmplLeave"
            package-name="org.ofbiz.humanres.employment"
            title="Employee Leave">
        <field name="partyId" type="id-ne"/>
        <field name="leaveTypeId" type="id-ne"/>
        <field name="emplLeaveReasonTypeId" type="id-ne"/>
        <field name="fromDate" type="date-time"/>
        <field name="thruDate" type="date-time"/>
        <field name="approverPartyId" type="id-ne"/>
        <field name="leaveStatus" type="id-ne"/>
        <field name="description" type="description"/>
        <prim-key field="partyId"/>
        <prim-key field="leaveTypeId"/>
        <prim-key field="fromDate"/>
        <relation type="one" fk-name="EMPL_LEAVE_PRTY" rel-entity-name="Party">
            <key-map field-name="partyId"/>
        </relation>
        <relation type="one" fk-name="EMPL_LEAVE_ELETP" rel-entity-name="EmplLeaveType">
            <key-map field-name="leaveTypeId"/>
        </relation>
        <relation type="one" fk-name="EMP_LEAV_REAS_ELTP" rel-entity-name="EmplLeaveReasonType">
            <key-map field-name="emplLeaveReasonTypeId"/>
        </relation>
        <relation type="one" fk-name="EMPL_LEAVE_APPR" title="Approver" rel-entity-name="Party">
            <key-map field-name="approverPartyId" rel-field-name="partyId"/>
        </relation>
        <relation type="one" fk-name="EMPL_LEAVE_STS" rel-entity-name="StatusItem">
            <key-map field-name="leaveStatus" rel-field-name="statusId"/>
        </relation>
    </entity>
    <entity entity-name="EmplLeaveType"
            package-name="org.ofbiz.humanres.employment"
            default-resource-name="HumanResEntityLabels"
            title="Employee Leave Type">
        <field name="leaveTypeId" type="id-ne"/>
        <field name="parentTypeId" type="id-ne"/>
        <field name="hasTable" type="indicator"/>
        <field name="description" type="description"/>
        <prim-key field="leaveTypeId"/>
        <relation type="one" fk-name="EMPL_LEAVE_TPAR" title="Parent" rel-entity-name="EmplLeaveType">
            <key-map field-name="parentTypeId" rel-field-name="leaveTypeId"/>
        </relation>
    </entity>
    <entity entity-name="PartyBenefit"
            package-name="org.ofbiz.humanres.employment"
            title="Party Benefit">
      <field name="roleTypeIdFrom" type="id-ne"></field>
      <field name="roleTypeIdTo" type="id-ne"></field>
      <field name="partyIdFrom" type="id-ne"></field>
      <field name="partyIdTo" type="id-ne"></field>
      <field name="benefitTypeId" type="id-ne"></field>
      <field name="fromDate" type="date-time"></field>
      <field name="thruDate" type="date-time"></field>
      <field name="periodTypeId" type="id"></field>
      <field name="cost" type="currency-amount"></field>
      <field name="actualEmployerPaidPercent" type="floating-point"></field>
      <field name="availableTime" type="numeric"></field>
      <prim-key field="roleTypeIdFrom"/>
      <prim-key field="roleTypeIdTo"/>
      <prim-key field="partyIdFrom"/>
      <prim-key field="partyIdTo"/>
      <prim-key field="benefitTypeId"/>
      <prim-key field="fromDate"/>
      <relation type="one" fk-name="PTY_BNFT_TPTY" title="To" rel-entity-name="Party">
        <key-map field-name="partyIdTo" rel-field-name="partyId"/>
      </relation>
      <relation type="one" fk-name="PTY_BNFT_TPTRL" title="To" rel-entity-name="PartyRole">
        <key-map field-name="partyIdTo" rel-field-name="partyId"/>
        <key-map field-name="roleTypeIdTo" rel-field-name="roleTypeId"/>
      </relation>
      <relation type="one" fk-name="PTY_BNFT_FPTY" title="From" rel-entity-name="Party">
        <key-map field-name="partyIdFrom" rel-field-name="partyId"/>
      </relation>
      <relation type="one" fk-name="PTY_BNFT_FPTRL" title="From" rel-entity-name="PartyRole">
        <key-map field-name="partyIdFrom" rel-field-name="partyId"/>
        <key-map field-name="roleTypeIdFrom" rel-field-name="roleTypeId"/>
      </relation>
      <relation type="one" fk-name="PTY_BNFT_BNFTTP" rel-entity-name="BenefitType">
        <key-map field-name="benefitTypeId"/>
      </relation>
      <relation type="one-nofk" fk-name="PTY_BNFT_PRDTYP" rel-entity-name="PeriodType">
        <key-map field-name="periodTypeId"/>
      </relation>
    </entity>
    <entity entity-name="PayGrade"
            package-name="org.ofbiz.humanres.employment"
            title="Pay Grade">
      <field name="payGradeId" type="id-ne"></field>
      <field name="payGradeName" type="name"></field>
      <field name="comments" type="comment"></field>
      <prim-key field="payGradeId"/>
    </entity>
    <entity entity-name="PayHistory"
            package-name="org.ofbiz.humanres.employment"
            title="Pay History">
      <field name="roleTypeIdFrom" type="id-ne"></field>
      <field name="roleTypeIdTo" type="id-ne"></field>
      <field name="partyIdFrom" type="id-ne"></field>
      <field name="partyIdTo" type="id-ne"></field>
      <field name="fromDate" type="date-time"></field>
      <field name="thruDate" type="date-time"></field>
      <field name="salaryStepSeqId" type="id"></field>
      <field name="payGradeId" type="id"></field>
      <field name="periodTypeId" type="id"></field>
      <field name="amount" type="currency-amount"></field>
      <field name="comments" type="comment"></field>
      <prim-key field="roleTypeIdFrom"/>
      <prim-key field="roleTypeIdTo"/>
      <prim-key field="partyIdFrom"/>
      <prim-key field="partyIdTo"/>
      <prim-key field="fromDate"/>
      <relation type="one" fk-name="PAY_HIST_EMPLMNT" rel-entity-name="Employment">
        <key-map field-name="roleTypeIdFrom"/>
        <key-map field-name="roleTypeIdTo"/>
        <key-map field-name="partyIdFrom"/>
        <key-map field-name="partyIdTo"/>
        <key-map field-name="fromDate"/>
      </relation>
      <relation type="one" fk-name="PAY_HIST_PGRD" rel-entity-name="PayGrade">
        <key-map field-name="payGradeId"/>
      </relation>
      <relation type="one-nofk" fk-name="PAY_HIST_SSTP" rel-entity-name="SalaryStep">
        <key-map field-name="salaryStepSeqId"/>
        <key-map field-name="payGradeId"/>
      </relation>
      <relation type="one" fk-name="PAY_HIST_PDTP" rel-entity-name="PeriodType">
        <key-map field-name="periodTypeId"/>
      </relation>
    </entity>
    <entity entity-name="PayrollPreference"
            package-name="org.ofbiz.humanres.employment"
            title="Payroll Preference">
      <field name="partyId" type="id-ne"></field>
      <field name="roleTypeId" type="id-ne"></field>
      <field name="payrollPreferenceSeqId" type="id-ne"></field>
      <field name="deductionTypeId" type="id-ne"></field>
      <field name="paymentMethodTypeId" type="id"></field>
      <field name="periodTypeId" type="id"></field>
      <field name="fromDate" type="date-time"></field>
      <field name="thruDate" type="date-time"></field>
      <field name="percentage" type="floating-point"></field>
      <field name="flatAmount" type="currency-amount"></field>
      <field name="routingNumber" type="short-varchar"></field>
      <field name="accountNumber" type="short-varchar"></field>
      <field name="bankName" type="name"></field>
      <prim-key field="partyId"/>
      <prim-key field="roleTypeId"/>
      <prim-key field="payrollPreferenceSeqId"/>
      <relation type="one" fk-name="PRL_PREF_PRTY" rel-entity-name="Party">
        <key-map field-name="partyId"/>
      </relation>
      <relation type="one" fk-name="PRL_PREF_PTRL" rel-entity-name="PartyRole">
        <key-map field-name="partyId"/>
        <key-map field-name="roleTypeId"/>
      </relation>
      <relation type="one-nofk" fk-name="PRL_PREF_DNTP" rel-entity-name="DeductionType">
        <key-map field-name="deductionTypeId"/>
      </relation>
      <relation type="one-nofk" fk-name="PRL_PREF_PMTP" rel-entity-name="PaymentMethodType">
        <key-map field-name="paymentMethodTypeId"/>
      </relation>
      <relation type="one-nofk" fk-name="PRL_PREF_PDTP" rel-entity-name="PeriodType">
        <key-map field-name="periodTypeId"/>
      </relation>
    </entity>
    <entity entity-name="SalaryStep"
            package-name="org.ofbiz.humanres.employment"
            title="Salary Step">
      <field name="salaryStepSeqId" type="id-ne"></field>
      <field name="payGradeId" type="id-ne"></field>
      <field name="dateModified" type="date-time"></field>
      <field name="amount" type="currency-amount"></field>
      <field name="createdByUserLogin" type="id-vlong"></field>
      <field name="lastModifiedByUserLogin" type="id-vlong"></field>
      <prim-key field="salaryStepSeqId"/>
      <prim-key field="payGradeId"/>
      <relation type="one" fk-name="SLRY_STP_PGRD" rel-entity-name="PayGrade">
        <key-map field-name="payGradeId"/>
      </relation>
    </entity>
    <entity entity-name="TerminationReason"
            package-name="org.ofbiz.humanres.employment"
            title="Termination Reason">
      <field name="terminationReasonId" type="id-ne"></field>
      <field name="description" type="description"></field>
      <prim-key field="terminationReasonId"/>
    </entity>
    <entity entity-name="TerminationType"
            package-name="org.ofbiz.humanres.employment"
            title="Termination Type">
      <field name="terminationTypeId" type="id-ne"></field>
      <field name="parentTypeId" type="id-ne"></field>
      <field name="hasTable" type="indicator"></field>
      <field name="description" type="description"></field>
      <prim-key field="terminationTypeId"/>
      <relation type="one" fk-name="TERM_TYP_PAR" title="Parent" rel-entity-name="TerminationType">
        <key-map field-name="parentTypeId" rel-field-name="terminationTypeId"/>
      </relation>
    </entity>
    <entity entity-name="UnemploymentClaim"
            package-name="org.ofbiz.humanres.employment"
            title="Unemployment Claim">
      <field name="unemploymentClaimId" type="id-ne"></field>
      <field name="unemploymentClaimDate" type="date-time"></field>
      <field name="description" type="description"></field>
      <field name="statusId" type="id"></field>
      <field name="partyIdFrom" type="id"></field>
      <field name="partyIdTo" type="id"></field>
      <field name="roleTypeIdFrom" type="id"></field>
      <field name="roleTypeIdTo" type="id"></field>
      <field name="fromDate" type="date-time"></field>
      <field name="thruDate" type="date-time"></field>
      <prim-key field="unemploymentClaimId"/>
      <relation type="one-nofk" fk-name="UNMPL_CLM_EMPLMNT" rel-entity-name="Employment">
        <key-map field-name="roleTypeIdFrom"/>
        <key-map field-name="roleTypeIdTo"/>
        <key-map field-name="partyIdFrom"/>
        <key-map field-name="partyIdTo"/>
        <key-map field-name="fromDate"/>
      </relation>
      <relation type="one-nofk" fk-name="UNMPL_CLM_STTS" rel-entity-name="StatusItem">
        <key-map field-name="statusId"/>
      </relation>
    </entity>

  <!-- ========================================================= -->
  <!-- org.ofbiz.humanres.position -->
  <!-- ========================================================= -->

    <entity entity-name="EmplPosition"
            package-name="org.ofbiz.humanres.position"
            title="EmplPosition">
      <field name="emplPositionId" type="id-ne"></field>
      <field name="statusId" type="id"></field>
      <field name="partyId" type="id"></field>
      <field name="budgetId" type="id"></field>
      <field name="budgetItemSeqId" type="id"></field>
      <field name="emplPositionTypeId" type="id"></field>
      <field name="estimatedFromDate" type="date-time"></field>
      <field name="estimatedThruDate" type="date-time"></field>
      <field name="salaryFlag" type="indicator"></field>
      <field name="exemptFlag" type="indicator"></field>
      <field name="fulltimeFlag" type="indicator"></field>
      <field name="temporaryFlag" type="indicator"></field>
      <field name="actualFromDate" type="date-time"></field>
      <field name="actualThruDate" type="date-time"></field>
      <prim-key field="emplPositionId"/>
      <relation type="one" fk-name="EMPL_POS_STTS" rel-entity-name="StatusItem">
        <key-map field-name="statusId"/>
      </relation>
      <relation type="one" fk-name="EMPL_POS_PRTY" rel-entity-name="Party">
        <key-map field-name="partyId"/>
      </relation>
      <relation type="one-nofk" fk-name="EMPL_POS_BGTITM" rel-entity-name="BudgetItem">
        <key-map field-name="budgetId"/>
        <key-map field-name="budgetItemSeqId"/>
      </relation>
      <relation type="one-nofk" fk-name="EMPL_POS_EPSTP" rel-entity-name="EmplPositionType">
        <key-map field-name="emplPositionTypeId"/>
      </relation>
    </entity>
    <entity entity-name="EmplPositionClassType"
            package-name="org.ofbiz.humanres.position"
            title="EmplPosition Classification Type">
      <field name="emplPositionClassTypeId" type="id-ne"></field>
      <field name="parentTypeId" type="id-ne"></field>
      <field name="hasTable" type="indicator"></field>
      <field name="description" type="description"></field>
      <prim-key field="emplPositionClassTypeId"/>
      <relation type="one" fk-name="EMPL_CLS_TYP_PAR" title="Parent" rel-entity-name="EmplPositionClassType">
        <key-map field-name="parentTypeId" rel-field-name="emplPositionClassTypeId"/>
      </relation>
    </entity>
    <entity entity-name="EmplPositionFulfillment"
            package-name="org.ofbiz.humanres.position"
            title="EmplPosition Fulfillment">
      <field name="emplPositionId" type="id-ne"></field>
      <field name="partyId" type="id-ne"></field>
      <field name="fromDate" type="date-time"></field>
      <field name="thruDate" type="date-time"></field>
      <field name="comments" type="comment"></field>
      <prim-key field="emplPositionId"/>
      <prim-key field="partyId"/>
      <prim-key field="fromDate"/>
      <relation type="one" fk-name="EMPL_PSFLMT_EMPS" rel-entity-name="EmplPosition">
        <key-map field-name="emplPositionId"/>
      </relation>
      <relation type="one" fk-name="EMPL_PSFLMT_PRTY" rel-entity-name="Party">
        <key-map field-name="partyId"/>
      </relation>
    </entity>
    <view-entity entity-name="EmplPositionAndFulfillment"
            package-name="org.ofbiz.humanres.position"
            title="EmplPosition Fulfillment">
      <member-entity entity-alias="EMPPOS" entity-name="EmplPosition"></member-entity>
      <member-entity entity-alias="EPF" entity-name="EmplPositionFulfillment"></member-entity>
      <alias-all entity-alias="EMPPOS"/>
      <alias name="employeePartyId" entity-alias="EPF" field="partyId"/>
      <alias name="fromDate" entity-alias="EPF"/>
      <alias name="thruDate" entity-alias="EPF"/>
      <view-link entity-alias="EMPPOS" rel-entity-alias="EPF">
        <key-map field-name="emplPositionId"/>
      </view-link>
      <relation type="one" rel-entity-name="EmplPositionType">
        <key-map field-name="emplPositionTypeId"/>
      </relation>
    </view-entity>
    <entity entity-name="EmplPositionReportingStruct"
            package-name="org.ofbiz.humanres.position"
            title="EmplPosition Reporting Structure">
      <field name="emplPositionIdReportingTo" type="id-ne"></field>
      <field name="emplPositionIdManagedBy" type="id-ne"></field>
      <field name="fromDate" type="date-time"></field>
      <field name="thruDate" type="date-time"></field>
      <field name="comments" type="comment"></field>
      <field name="primaryFlag" type="indicator"></field>
      <prim-key field="emplPositionIdReportingTo"/>
      <prim-key field="emplPositionIdManagedBy"/>
      <prim-key field="fromDate"/>
      <relation type="one" fk-name="EMPL_PSRPS_EMPSR" title="ReportingTo" rel-entity-name="EmplPosition">
        <key-map field-name="emplPositionIdReportingTo" rel-field-name="emplPositionId"/>
      </relation>
      <relation type="one" fk-name="EMPL_PSRPS_EMPSM" title="ManagedBy" rel-entity-name="EmplPosition">
        <key-map field-name="emplPositionIdManagedBy" rel-field-name="emplPositionId"/>
      </relation>
    </entity>
    <entity entity-name="EmplPositionResponsibility"
            package-name="org.ofbiz.humanres.position"
            title="EmplPosition Responsibility">
      <field name="emplPositionId" type="id-ne"></field>
      <field name="responsibilityTypeId" type="id-ne"></field>
      <field name="fromDate" type="date-time"></field>
      <field name="thruDate" type="date-time"></field>
      <field name="comments" type="comment"></field>
      <prim-key field="emplPositionId"/>
      <prim-key field="responsibilityTypeId"/>
      <prim-key field="fromDate"/>
      <relation type="one" fk-name="EMPL_PSRTY_EMPS" rel-entity-name="EmplPosition">
        <key-map field-name="emplPositionId"/>
      </relation>
      <relation type="one" fk-name="EMPL_PSRTY_RYTP" rel-entity-name="ResponsibilityType">
        <key-map field-name="responsibilityTypeId"/>
      </relation>
    </entity>
    <entity entity-name="EmplPositionType"
            package-name="org.ofbiz.humanres.position"
            title="EmplPosition Type">
      <field name="emplPositionTypeId" type="id-ne"></field>
      <field name="parentTypeId" type="id-ne"></field>
      <field name="hasTable" type="indicator"></field>
      <field name="description" type="description"></field>
      <prim-key field="emplPositionTypeId"/>
      <relation type="one" fk-name="EMPL_POSI_TYP_PAR" title="Parent" rel-entity-name="EmplPositionType">
        <key-map field-name="parentTypeId" rel-field-name="emplPositionTypeId"/>
      </relation>
    </entity>
    <entity entity-name="EmplPositionTypeClass"
            package-name="org.ofbiz.humanres.position"
            title="EmplPosition Type Class">
      <field name="emplPositionTypeId" type="id-ne"></field>
      <field name="emplPositionClassTypeId" type="id-ne"></field>
      <field name="fromDate" type="date-time"></field>
      <field name="thruDate" type="date-time"></field>
      <field name="standardHoursPerWeek" type="floating-point"></field>
      <prim-key field="emplPositionTypeId"/>
      <prim-key field="emplPositionClassTypeId"/>
      <prim-key field="fromDate"/>
      <relation type="one" fk-name="EMPL_PSTPCS_EPTP" rel-entity-name="EmplPositionType">
        <key-map field-name="emplPositionTypeId"/>
      </relation>
      <relation type="one" fk-name="EMPL_PSTPCS_EPCTP" rel-entity-name="EmplPositionClassType">
        <key-map field-name="emplPositionClassTypeId"/>
      </relation>
    </entity>
    <entity entity-name="ValidResponsibility"
            package-name="org.ofbiz.humanres.position"
            title="Valid Responsibility">
      <field name="emplPositionTypeId" type="id-ne"></field>
      <field name="responsibilityTypeId" type="id-ne"></field>
      <field name="fromDate" type="date-time"></field>
      <field name="thruDate" type="date-time"></field>
      <field name="comments" type="comment"></field>
      <prim-key field="emplPositionTypeId"/>
      <prim-key field="responsibilityTypeId"/>
      <prim-key field="fromDate"/>
      <relation type="one" fk-name="VALID_RTY_EPSTP" rel-entity-name="EmplPositionType">
        <key-map field-name="emplPositionTypeId"/>
      </relation>
      <relation type="one" fk-name="VALID_RTY_RYTP" rel-entity-name="ResponsibilityType">
        <key-map field-name="responsibilityTypeId"/>
      </relation>
    </entity>
    <entity entity-name="EmplPositionTypeRate" table-name="EMPL_POSITION_TYPE_RATE_NEW"
            package-name="org.ofbiz.humanres.position"
            title="EmplPosition Type Rate">
    <field name="emplPositionTypeId" type="id-ne"/>
    <field name="rateTypeId" type="id-ne"/>
    <field name="payGradeId" type="id"/>
    <field name="salaryStepSeqId" type="id"/>
    <field name="fromDate" type="date-time"/>
    <field name="thruDate" type="date-time"/>
    <prim-key field="emplPositionTypeId"/>
    <prim-key field="rateTypeId"/>
    <prim-key field="fromDate"/>
    <relation type="one" fk-name="EMPL_PTPRT_EPTP" rel-entity-name="EmplPositionType">
      <key-map field-name="emplPositionTypeId"/>
    </relation>
    <relation type="one-nofk" fk-name="EMPL_PTPRT_SSTP" rel-entity-name="SalaryStep">
      <key-map field-name="salaryStepSeqId"/>
      <key-map field-name="payGradeId"/>
    </relation>
    <relation type="one-nofk" fk-name="EMPL_PTPRT_RTTYP" rel-entity-name="RateType">
      <key-map field-name="rateTypeId"/>
    </relation>
  </entity>
  <view-entity entity-name="EmplPositionTypeRateAndAmount"
        package-name="org.ofbiz.humanres.position"
        title="EmplPosition Type Rate Entity and Rate Amount">
    <member-entity entity-alias="EPTR" entity-name="EmplPositionTypeRate"/>
    <member-entity entity-alias="RA" entity-name="RateAmount"/>
    <alias-all entity-alias="EPTR"/>
    <alias entity-alias="RA" name="rateAmount"/>
    <alias entity-alias="RA" name="periodTypeId"/>
    <alias entity-alias="RA" name="rateCurrencyUomId"/>
    <alias entity-alias="RA" name="rateAmountFromDate" field="fromDate"/>
    <alias entity-alias="RA" name="rateAmountThruDate" field="thruDate"/>
    <view-link entity-alias="EPTR" rel-entity-alias="RA">
      <key-map field-name="emplPositionTypeId"/>
      <key-map field-name="rateTypeId"/>
    </view-link>
  </view-entity>

    <!-- ========================================================= -->
    <!-- org.ofbiz.humanres.recruitment -->
    <!-- ========================================================= -->
    <entity entity-name="JobRequisition"
            package-name="org.ofbiz.humanres.recruitment"
            title="Entity for storing data about recruitment">
        <field name="jobRequisitionId" type="id-ne"></field>
        <field name="durationMonths" type="numeric"></field>
        <field name="age" type="numeric"></field>
        <field name="gender" type="indicator"></field>
        <field name="experienceMonths" type="numeric"></field>
        <field name="experienceYears" type="numeric"></field>
        <field name="qualification" type="id-long"></field>
        <field name="jobLocation" type="id"></field>
        <field name="skillTypeId" type="id"></field>
        <field name="noOfResources" type="numeric"></field>
        <field name="jobPostingTypeEnumId" type="id"></field>
        <field name="jobRequisitionDate" type="date"></field>
        <field name="examTypeEnumId" type="id"></field>
        <field name="requiredOnDate" type="date"></field>
        <prim-key field="jobRequisitionId"/>
        <relation type="one" fk-name="JOB_REQ_SKTYP" rel-entity-name="SkillType">
            <key-map field-name="skillTypeId"/>
        </relation>
        <relation type="one" fk-name="JOB_REQ_ENUMEXM" title="ExamType" rel-entity-name="Enumeration">
            <key-map field-name="examTypeEnumId" rel-field-name="enumId"/>
        </relation>
        <relation type="one" fk-name="JOB_REQ_ENUMJBP" title="JobPostingType" rel-entity-name="Enumeration">
            <key-map field-name="jobPostingTypeEnumId" rel-field-name="enumId"/>
        </relation>
    </entity>
    
    <!-- SCIPIO: New fields for JobRequisition -->
    <extend-entity entity-name="JobRequisition">
        <!-- SCIPIO: NOTE: this covers only the case where the requisition is for at most one position. It is conceivable
            that a job req could link to multiple positions, in which case we might want a a JobRequisitionEmplPosition
            entity for one-to-many (or many-to-many), but I think it may be overkill. Can always add later.
            NOTE: explicitly rejected having EmplPosition.jobRequisitionId because it also seems conceivable to have multiple
            requisitions for one position, in theory. -->
        <field name="emplPositionId" type="id">
            <description>SCIPIO: Single specific position for this requisition (not strictly required but usually wanted)</description>
        </field>
        <field name="jobDescription" type="very-long">
            <description>SCIPIO: Job description, which may be tailored to this requisition</description>
        </field>
        <relation type="one-nofk" fk-name="JOB_REQ_APP_POS" rel-entity-name="EmplPosition">
            <key-map field-name="emplPositionId"/>
        </relation>
    </extend-entity>
    
    <!-- SCIPIO: New view-entity for JobRequisition to link with Position -->
    <view-entity entity-name="JobRequisitionAndEmplPosition"
          package-name="org.ofbiz.humanres.recruitment"
          title="Job Requisition and Position">
        <member-entity entity-alias="JR" entity-name="JobRequisition"/>
        <member-entity entity-alias="EP" entity-name="EmplPosition"/>
        <alias-all entity-alias="JR"/>
        <alias-all entity-alias="EP"/>
        <view-link entity-alias="JR" rel-entity-alias="EP">
            <key-map field-name="emplPositionId"/>
        </view-link>
        <relation type="one" rel-entity-name="StatusItem">
            <key-map field-name="statusId"/>
        </relation>
        <relation type="one" rel-entity-name="Party">
            <key-map field-name="partyId"/>
        </relation>
        <relation type="one-nofk" rel-entity-name="BudgetItem">
            <key-map field-name="budgetId"/>
            <key-map field-name="budgetItemSeqId"/>
        </relation>
        <relation type="one-nofk" rel-entity-name="EmplPositionType">
            <key-map field-name="emplPositionTypeId"/>
        </relation>
        <relation type="one" rel-entity-name="SkillType">
            <key-map field-name="skillTypeId"/>
        </relation>
        <relation type="one" title="ExamType" rel-entity-name="Enumeration">
            <key-map field-name="examTypeEnumId" rel-field-name="enumId"/>
        </relation>
        <relation type="one" title="JobPostingType" rel-entity-name="Enumeration">
            <key-map field-name="jobPostingTypeEnumId" rel-field-name="enumId"/>
        </relation>
    </view-entity>
    
    <!-- SCIPIO: TODO: inevitably will need multiple skill requirements per job requisition:
    <entity entity-name="JobRequisitionSkillType">
    ...
    </entity>
    -->
    
    <entity entity-name="JobInterview"
            package-name="org.ofbiz.humanres.recruitment"
            title="Entity for storing data about Interviews conducted">
        <field name="jobInterviewId" type="id-ne"></field>
        <field name="jobIntervieweePartyId" type="id"></field>
        <field name="jobRequisitionId" type="id"></field>
        <field name="jobInterviewerPartyId" type="id"></field>
        <field name="jobInterviewTypeId" type="id"></field>
        <field name="gradeSecuredEnumId" type="id"></field>
        <field name="jobInterviewResult" type="id"></field>
        <field name="jobInterviewDate" type="date"></field>
        <prim-key field="jobInterviewId"/>
        <relation type="one" fk-name="JOB_INTW_IEPR" title="Interviewee" rel-entity-name="Party">
            <key-map field-name="jobIntervieweePartyId" rel-field-name="partyId"/>
        </relation>
        <relation type="one" fk-name="JOB_INTW_IRPR" title="Interviewer" rel-entity-name="Party">
            <key-map field-name="jobInterviewerPartyId" rel-field-name="partyId"/>
        </relation>
        <relation type="one" fk-name="JOB_INTW_INTYP" rel-entity-name="JobInterviewType">
            <key-map field-name="jobInterviewTypeId"/>
        </relation>
        <relation type="one" fk-name="JOB_INTW_JBREQ" rel-entity-name="JobRequisition">
            <key-map field-name="jobRequisitionId"/>
        </relation>
        <relation type="one" fk-name="JOB_INTW_ENUM" rel-entity-name="Enumeration">
            <key-map field-name="gradeSecuredEnumId" rel-field-name="enumId"/>
        </relation>
    </entity>
    <entity entity-name="JobInterviewType" 
            package-name="org.ofbiz.humanres.recruitment"
            title="Entity for storing data about Interview Types">
        <field name="jobInterviewTypeId" type="id-ne"></field>
        <field name="description" type="description"></field>
        <prim-key field="jobInterviewTypeId"/>
    </entity>
    <view-entity entity-name="EmplPositionFulfillmentAndReportingStruct"
            package-name="org.ofbiz.humanres.recruitment"
            title="To view the employment details of an employee">
      <member-entity entity-alias="EMPPOS" entity-name="EmplPosition"/>
      <member-entity entity-alias="EMPPOSFUL" entity-name="EmplPositionFulfillment"/>
      <member-entity entity-alias="EMPPOSREPST" entity-name="EmplPositionReportingStruct"/>     
      <alias entity-alias="EMPPOSFUL" name="partyId"/> 
      <alias entity-alias="EMPPOSFUL" name="emplPositionId"/>
      <alias entity-alias="EMPPOSREPST" name="emplPositionIdReportingTo"/>  
      <alias entity-alias="EMPPOS" name="internalOrganisation" field="partyId"/>
      <alias entity-alias="EMPPOSREPST" name="reportingDate" field="fromDate"/> 
      <view-link entity-alias="EMPPOS" rel-entity-alias="EMPPOSFUL">
        <key-map field-name="emplPositionId"/>
      </view-link>
      <view-link entity-alias="EMPPOSFUL" rel-entity-alias="EMPPOSREPST">
        <key-map field-name="emplPositionId" rel-field-name="emplPositionIdManagedBy"/>
      </view-link>
    </view-entity>
    <entity entity-name="TrainingRequest"
            package-name="org.ofbiz.humanres.trainings"
            title="Training Request">
        <field name="trainingRequestId" type="id-ne"></field>
        <prim-key field="trainingRequestId"/>
    </entity>
    <entity entity-name="EmplLeaveReasonType"
            package-name="org.ofbiz.humanres.employment"
            default-resource-name="HumanResEntityLabels"
            title="Leave Reason Type">
        <field name="emplLeaveReasonTypeId" type="id-ne"/>
        <field name="parentTypeId" type="id-ne"/>
        <field name="hasTable" type="indicator"/>
        <field name="description" type="description"/>
        <prim-key field="emplLeaveReasonTypeId"/>
        <relation type="one" fk-name="EMPL_REASON_TPAR" title="Parent" rel-entity-name="EmplLeaveReasonType">
            <key-map field-name="parentTypeId" rel-field-name="emplLeaveReasonTypeId"/>
        </relation>
     </entity>
</entitymodel>