{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://docs.demiton.io/registers/employee_hr_records/v1.json",
  "title": "employee_hr_records contract v1",
  "type": "object",
  "required": [
    "employment_basis",
    "external_id",
    "family_name",
    "occurred_at",
    "start_date",
    "worker"
  ],
  "properties": {
    "review": {
      "type": "object",
      "description": "A performance-review outcome where the record is a review rather than an onboarding form.",
      "x-demiton-requiredness": "optional"
    },
    "worker": {
      "type": "number",
      "description": "The employee the record is about; the required subject anchor.",
      "x-demiton-requiredness": "required",
      "x-demiton-reference": true
    },
    "job_title": {
      "type": "string",
      "description": "The employee's role title.",
      "x-demiton-requiredness": "optional"
    },
    "attributes": {
      "type": "object",
      "description": "Every remaining form answer, keyed by the tenant's own question text.",
      "x-demiton-requiredness": "tenant-specific"
    },
    "start_date": {
      "type": "string",
      "description": "The date the employment started; the accrual and retention start point.",
      "x-demiton-requiredness": "required",
      "format": "date",
      "x-demiton-type": "date"
    },
    "external_id": {
      "type": "string",
      "description": "Stable identity of the source record (Assignar form-result id, cast to text).",
      "x-demiton-requiredness": "required"
    },
    "family_name": {
      "type": "string",
      "description": "The employee's surname as recorded on the HR record.",
      "x-demiton-requiredness": "required"
    },
    "given_names": {
      "type": "string",
      "description": "The employee's given name(s), kept separate for cross-system name matching.",
      "x-demiton-requiredness": "optional"
    },
    "occurred_at": {
      "type": "string",
      "description": "When the source record was submitted/modified; the event time and the retention clock start.",
      "x-demiton-requiredness": "required",
      "format": "date-time",
      "x-demiton-type": "datetime"
    },
    "bank_account": {
      "type": "object",
      "description": "The employee's pay destination.",
      "x-demiton-requiredness": "optional"
    },
    "contact_email": {
      "type": "string",
      "description": "Work or personal email for the employee.",
      "x-demiton-requiredness": "optional"
    },
    "contact_phone": {
      "type": "string",
      "description": "Contact phone number(s).",
      "x-demiton-requiredness": "optional"
    },
    "date_of_birth": {
      "type": "string",
      "description": "The employee's date of birth.",
      "x-demiton-requiredness": "optional",
      "format": "date",
      "x-demiton-type": "date"
    },
    "leave_balance": {
      "type": "object",
      "description": "The running leave balance the record must show.",
      "x-demiton-requiredness": "optional",
      "x-demiton-unit": "unit-bearing (days or hours)"
    },
    "engagement_type": {
      "type": "string",
      "description": "Whether the engagement is permanent, temporary or otherwise.",
      "x-demiton-requiredness": "optional"
    },
    "employment_basis": {
      "type": "string",
      "description": "Whether the engagement is full-time, part-time or casual.",
      "x-demiton-requiredness": "required"
    },
    "financial_period": {
      "type": "string",
      "description": "The accounting period the record falls in, derived from `occurred_at`.",
      "x-demiton-requiredness": "optional",
      "format": "date",
      "x-demiton-type": "date"
    },
    "termination_date": {
      "type": "string",
      "description": "The date employment ended, for a former employee.",
      "x-demiton-requiredness": "optional",
      "format": "date",
      "x-demiton-type": "date"
    },
    "emergency_contact": {
      "type": "object",
      "description": "Emergency contact name, relationship and number.",
      "x-demiton-requiredness": "optional"
    },
    "termination_reason": {
      "type": "string",
      "description": "The manner in which employment ended.",
      "x-demiton-requiredness": "optional"
    },
    "residential_address": {
      "type": "string",
      "description": "The employee's home address.",
      "x-demiton-requiredness": "optional"
    },
    "superannuation_fund": {
      "type": "object",
      "description": "The nominated superannuation fund and the member identifier.",
      "x-demiton-requiredness": "optional"
    },
    "hours_worked_per_day": {
      "type": "array",
      "description": "Hours worked each day in a pay period.",
      "x-demiton-requiredness": "optional",
      "x-demiton-unit": "hours"
    },
    "working_time_opt_out": {
      "type": "object",
      "description": "The 48-hour opt-out agreement the employer must record for a UK worker.",
      "x-demiton-requiredness": "optional"
    },
    "tax_identifier_declaration": {
      "type": "object",
      "description": "Whether the employee's tax-file-number declaration is held with the record.",
      "x-demiton-requiredness": "optional"
    },
    "superannuation_contribution": {
      "type": "object",
      "description": "Contributions made for the employee in the period.",
      "x-demiton-requiredness": "optional",
      "x-demiton-unit": "native currency (AUD default)"
    }
  },
  "x-demiton-register-type": "employee_hr_records",
  "x-demiton-contract-version": "1.0.3",
  "x-demiton-store": "tenant",
  "x-demiton-axes": [
    {
      "axis": "worker",
      "requirement": "required",
      "role": "subject"
    },
    {
      "axis": "financial_period",
      "requirement": "optional",
      "role": "context"
    }
  ],
  "x-demiton-measures": [],
  "x-demiton-provenance": {
    "standards": [
      {
        "code": "AS/NZS ISO 45001:2018",
        "title": "Occupational health and safety management systems - Requirements with guidance for use (AU/NZ adoption)",
        "access": "paywalled_secondary",
        "region": "Australia",
        "edition": "2018 incorporating Amd 1:2024",
        "checked_on": "2026-09-14"
      },
      {
        "code": "ATO tax file number declaration",
        "title": "Tax file number and withholding declarations - kept with employee records",
        "access": "public_summary",
        "region": "Australia",
        "edition": "ATO guidance updated 11 Jun 2025",
        "checked_on": "2026-09-14"
      },
      {
        "code": "Fair Work Act 2009 (Cth)",
        "title": "Fair Work Act 2009 - employee records and National Employment Standards",
        "access": "full_text_verified",
        "clause": "ss.87, 96, 535",
        "region": "Australia",
        "edition": "compilation 2026-07-07",
        "checked_on": "2026-09-14"
      },
      {
        "code": "Fair Work Regulations 2009 (Cth)",
        "title": "Fair Work Regulations 2009 - employee record content",
        "access": "full_text_verified",
        "clause": "regs 3.31-3.44",
        "region": "Australia",
        "edition": "compilation 2026-06-20",
        "checked_on": "2026-09-14"
      },
      {
        "code": "Privacy Act 1988 (Cth)",
        "title": "Privacy Act 1988 - Australian Privacy Principles; employee-records exemption; health information s.6FA",
        "access": "public_summary",
        "region": "Australia",
        "edition": "current",
        "checked_on": "2026-09-14"
      },
      {
        "code": "Single Touch Payroll Phase 2 (ATO)",
        "title": "Single Touch Payroll Phase 2 employer reporting guidelines",
        "access": "public_summary",
        "region": "Australia",
        "edition": "Phase 2 (mandatory from 1 Jan 2022)",
        "checked_on": "2026-09-14"
      },
      {
        "code": "Regulation (EU) 2016/679 (GDPR)",
        "title": "General Data Protection Regulation",
        "access": "full_text_verified",
        "clause": "Art 9",
        "region": "European Union",
        "edition": "2016",
        "checked_on": "2026-09-14"
      },
      {
        "code": "ISO 30414:2025",
        "title": "Human resource management - Requirements and recommendations for human capital reporting and disclosure",
        "access": "paywalled_secondary",
        "region": "International",
        "edition": "2nd ed. 2025 (supersedes ISO 30414:2018)",
        "checked_on": "2026-09-14"
      },
      {
        "code": "Employment Leave Act 2026 (NZ)",
        "title": "Employment Leave Act 2026 (2026 No 48)",
        "access": "full_text_verified",
        "clause": "ss.2, 24, 73, 75, 127-130, 150",
        "region": "New Zealand",
        "edition": "assent 6 Aug 2026; not yet in force",
        "checked_on": "2026-09-14"
      },
      {
        "code": "Holidays Act 2003 (NZ)",
        "title": "Holidays Act 2003 (2003 No 129) - holiday and leave record",
        "access": "full_text_verified",
        "clause": "s.81",
        "region": "New Zealand",
        "edition": "version as at 20 Dec 2023 (repealed on commencement of Employment Leave Act 2026)",
        "checked_on": "2026-09-14"
      },
      {
        "code": "Privacy Act 2020 (NZ)",
        "title": "Privacy Act 2020 and Health Information Privacy Code 2020",
        "access": "public_summary",
        "region": "New Zealand",
        "edition": "Act 2020; HIPC version as at 1 May 2026",
        "checked_on": "2026-09-14"
      },
      {
        "code": "SI 1998/1833",
        "title": "Working Time Regulations 1998",
        "access": "full_text_verified",
        "clause": "regs 4(2), 5, 9",
        "region": "United Kingdom",
        "edition": "as amended by SI 2023/1426 from 1 Jan 2024",
        "checked_on": "2026-09-14"
      },
      {
        "code": "UK GDPR",
        "title": "UK GDPR and Data Protection Act 2018",
        "access": "public_summary",
        "region": "United Kingdom",
        "edition": "current",
        "checked_on": "2026-09-14"
      }
    ]
  },
  "description": "HR record events for a worker: leave, disciplinary action, personnel file changes.",
  "x-demiton-contract-url": "https://docs.demiton.io/registers/employee_hr_records/",
  "x-demiton-register-catalog": "https://docs.demiton.io/concepts/register-catalog"
}