# ADP Workforce Now schema ERD

Table and field reference for the Fivetran ADP Workforce Now connector.

## Table & Field Reference

### person_history

| Column | Type | Keys |
| --- | --- | --- |
| _fivetran_id | String | PK |
| worker_id | String | FK |
| birth_date | LocalDate |  |
| death_date | LocalDate |  |
| deceased_indicator | Boolean |  |
| disability_identification_declined_indicator | Boolean |  |
| disability_percentage | Double |  |
| disabled_indicator | Boolean |  |
| ethnicity | String |  |
| ethnicity_group | String |  |
| gender | String |  |
| gender_identity | String |  |
| highest_education_level | String |  |
| marital_status | String |  |
| military_discharge_date | LocalDate |  |
| military_status | String |  |
| race | String |  |
| religion | String |  |
| sexual_orientation | String |  |
| student_indicator | Boolean |  |
| student_status | String |  |
| tobacco_user_indicator | Boolean |  |
| birthName_** |  |  |
| birthPlace_** |  |  |
| ethnicity_** |  |  |
| ethnicityGroup_** |  |  |
| gender_** |  |  |
| genderIdentity_** |  |  |
| highestEducationLevel_** |  |  |
| legalAddress_** |  |  |
| legalName_** |  |  |
| maritalStatus_** |  |  |
| militaryStatus_** |  |  |
| preferredName_** |  |  |
| race_** |  |  |
| religion_** |  |  |
| sexualOrientation_** |  |  |
| studentStatus_** |  |  |

### worker_time_card_day_entry

| Column | Type | Keys |
| --- | --- | --- |
| index | Long | PK |
| time_card_id | String | PK, FK |
| entry_date | LocalDate |  |
| total_period_time_duration | String |  |

### worker_paid_time_off_balance

| Column | Type | Keys |
| --- | --- | --- |
| balance_type_code | String | PK |
| paid_time_off_policy_code | String | PK |
| worker_id | String | PK, FK |
| as_of_date | LocalDate |  |
| balance_type_label_name | String |  |
| paid_time_off_policy_label_name | String |  |
| position_id | String |  |
| position_title | String |  |
| total_quantity_label_name | String |  |
| total_quantity_unit_time_code | String |  |
| total_quantity_value_number | Double |  |
| total_time | String |  |

### worker_classification

| Column | Type | Keys |
| --- | --- | --- |
| type | String | PK |
| id | String | PK, FK |
| worker_assignment_id | String | PK, FK |
| worker_id | String | PK, FK |

### worker_paid_time_off_accrual_balance

| Column | Type | Keys |
| --- | --- | --- |
| accrual_code | String | PK |
| balance_type_code | String | PK |
| paid_time_off_policy_code | String | PK |
| worker_id | String | PK, FK |
| accrual_label_name | String |  |
| quantity_label_name | String |  |
| quantity_unit_time_code | String |  |
| quantity_value_number | Double |  |
| time | String |  |

### worker_assigned_location

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK, FK |
| worker_assignment_id | String | PK, FK |
| worker_id | String | PK, FK |

### associated_rate_qualifier

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| item_id | String |  |
| qualifier_object | String |  |
| qualifier_object_type | String |  |
| qualifierObject_** |  |  |
| qualifierObjectType_** |  |  |

### worker_time_card

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| worker_id | String | FK |
| associate_oid | String |  |
| exceptions_indicator | Boolean |  |
| person_legal_name_family_name_1 | String |  |
| person_legal_name_formatted_name | String |  |
| person_legal_name_given_name | String |  |
| position_id | String |  |
| time_period_end_date | LocalDate |  |
| time_period_period_status | String |  |
| time_period_start_date | LocalDate |  |
| total_period_time_duration | String |  |

### worker_time_card_daily_total

| Column | Type | Keys |
| --- | --- | --- |
| index | Long | PK |
| time_card_id | String | PK, FK |
| entry_date | LocalDate |  |
| rate_amount_value | Unknown |  |
| rate_base_multiplier_value | Int |  |
| rate_currency_code | String |  |
| time_duration | String |  |

### person_citizenship

| Column | Type | Keys |
| --- | --- | --- |
| value | String | PK |
| worker_id | String | PK, FK |
| long_name | String |  |
| short_name | String |  |

### person_military_classification

| Column | Type | Keys |
| --- | --- | --- |
| value | String | PK |
| worker_id | String | PK, FK |
| long_name | String |  |
| short_name | String |  |
| type | String |  |

### person_communication

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| type | String | PK |
| worker_id | String | PK, FK |
| access | String |  |
| area_dialing | String |  |
| country_dialing | String |  |
| dial_number | String |  |
| email_uri | String |  |
| extension | String |  |
| formatted_number | String |  |
| name | String |  |
| notification_indicator | Boolean |  |
| uri | String |  |
| name_** |  |  |

### person_social_insurance_program

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| worker_id | String | PK, FK |
| country_code | String |  |
| coverage_period_end_date | LocalDate |  |
| coverage_period_start_date | LocalDate |  |
| covered_indicator | Boolean |  |
| name | String |  |
| name_** |  |  |

### worker_home_work_communication

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| type | String | PK |
| worker_assignment_id | String | PK, FK |
| worker_id | String | PK, FK |
| access | String |  |
| area_dialing | String |  |
| country_dialing | String |  |
| dial_number | String |  |
| email_uri | String |  |
| extension | String |  |
| formatted_number | String |  |
| name | String |  |
| notification_indicator | Boolean |  |
| uri | String |  |
| name_** |  |  |

### classification

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| classification | String |  |
| name | String |  |
| type | String |  |
| classification_** |  |  |
| name_** |  |  |

### worker_time_card_period_total

| Column | Type | Keys |
| --- | --- | --- |
| index | Long | PK |
| time_card_id | String | PK, FK |
| rate_amount_value | Unknown |  |
| rate_base_multiplier_value | Int |  |
| rate_currency_code | String |  |
| time_duration | String |  |

### worker_time_card_labor_allocation

| Column | Type | Keys |
| --- | --- | --- |
| index | Long | PK |
| day_entry_index | Long | PK, FK |
| time_card_id | String | PK, FK |
| time_entry_id | String | PK, FK |
| allocation | String |  |
| allocation_** |  |  |
| allocation_type_** |  |  |

### worker_assigned_organizational_unit

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK, FK |
| worker_assignment_id | String | PK, FK |
| worker_id | String | PK, FK |

### worker_pay_distribution

| Column | Type | Keys |
| --- | --- | --- |
| item_id | String | PK |
| worker_id | String | PK, FK |
| distribution_status | String |  |
| payroll_file_number | String |  |
| payroll_group | String |  |
| requested_start_date | LocalDate |  |
| distributionStatus_** |  |  |
| payrollGroup_** |  |  |

### worker

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| acquisition_date | LocalDate |  |
| adjusted_service_date | LocalDate |  |
| associate_oid | String |  |
| expected_termination_date | LocalDate |  |
| original_hire_date | LocalDate |  |
| photo_media_type | String |  |
| photo_url | String |  |
| rehire_date | LocalDate |  |
| retirement_date | LocalDate |  |
| termination_date | LocalDate |  |
| status_** |  |  |

### worker_time_card_entry_total

| Column | Type | Keys |
| --- | --- | --- |
| index | Long | PK |
| day_entry_index | Long | PK, FK |
| time_card_id | String | PK, FK |
| time_entry_id | String | PK, FK |
| pay | String |  |
| rate_amount_value | Double |  |
| rate_base_multiplier_value | Long |  |
| rate_currency_code | String |  |
| time_duration | String |  |
| pay_** |  |  |

### person_title_prefix

| Column | Type | Keys |
| --- | --- | --- |
| sequence_number | String | PK |
| type | String | PK |
| worker_id | String | PK, FK |
| affix | String |  |
| affix_** |  |  |

### worker_base_remuneration

| Column | Type | Keys |
| --- | --- | --- |
| worker_assignment_id | String | PK, FK |
| worker_id | String | PK, FK |
| effective_date | LocalDate |  |
| recording_basis | String |  |
| annualRateAmount_** |  |  |
| biweeklyRateAmount_** |  |  |
| commissionRatePercentage_** |  |  |
| dailyRateAmount_** |  |  |
| hourlyRateAmount_** |  |  |
| monthlyRateAmount_** |  |  |
| payPeriodRateAmount_** |  |  |
| recordingBasis_** |  |  |
| semi_monthlyRateAmount_** |  |  |
| weeklyRateAmount_** |  |  |

### worker_additional_remuneration

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| worker_assignment_id | String | PK, FK |
| worker_id | String | PK, FK |
| effective_date | LocalDate |  |
| interval | String |  |
| name | String |  |
| type | String |  |
| interval_** |  |  |
| name_** |  |  |
| rate_** |  |  |
| type_** |  |  |

### worker_paid_time_off_entry

| Column | Type | Keys |
| --- | --- | --- |
| paid_time_off_id | String | PK |
| request_id | String | PK, FK |
| earning_type_code | String |  |
| earning_type_label_name | String |  |
| entry_status_code | String |  |
| entry_status_label_name | String |  |
| paid_time_off_policy_code | String |  |
| paid_time_off_policy_label_name | String |  |
| start_time | String |  |
| time_off_entry_id | String |  |
| time_period_end_date_time | String |  |
| time_period_start_date_time | String |  |
| total_quantity_label_name | String |  |
| total_quantity_unit_time_code | String |  |
| total_quantity_value_number | Double |  |

### person_disability

| Column | Type | Keys |
| --- | --- | --- |
| value | String | PK |
| worker_id | String | PK, FK |
| long_name | String |  |
| short_name | String |  |

### worker_assignment_cost_center

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| worker_assignment_id | String | PK, FK |
| worker_id | String | PK, FK |
| cost_center_name | String |  |
| cost_center_percentage | Double |  |

### groups

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| group | String |  |
| name | String |  |
| group_** |  |  |
| name_** |  |  |

### worker_home_organizational_unit

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK, FK |
| worker_assignment_id | String | PK, FK |
| worker_id | String | PK, FK |

### base_remuneration_associated_rate_qualifier

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK, FK |
| worker_assignment_id | String | PK, FK |
| worker_id | String | PK, FK |

### person_alternate_preferred_name

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| worker_id | String | PK, FK |
| family_name_1 | String |  |
| family_name_1_prefix | String |  |
| family_name_2 | String |  |
| family_name_2_prefix | String |  |
| formatted_name | String |  |
| generation_affix | String |  |
| given_name | String |  |
| initials | String |  |
| language | String |  |
| middle_name | String |  |
| name | String |  |
| nick_name | String |  |
| qualification_affix | String |  |
| script | String |  |
| generationAffix_** |  |  |
| language_** |  |  |
| name_** |  |  |
| qualificationAffix_** |  |  |
| script_** |  |  |

### assigned_work_communication

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| type | String | PK |
| location_id | String | PK, FK |
| worker_assignment_id | String | PK, FK |
| worker_id | String | PK, FK |
| access | String |  |
| area_dialing | String |  |
| country_dialing | String |  |
| dial_number | String |  |
| email_uri | String |  |
| extension | String |  |
| formatted_number | String |  |
| name | String |  |
| notification_indicator | Boolean |  |
| uri | String |  |
| name_** |  |  |

### worker_time_card_home_labor_allocation

| Column | Type | Keys |
| --- | --- | --- |
| index | Long | PK |
| time_card_id | String | PK, FK |
| allocation_code_value | String |  |
| allocation_type_code_value | String |  |
| allocation_type_short_name | String |  |

### worker_report_to

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| worker_assignment_id | String | PK, FK |
| worker_id | String | PK, FK |
| report_to_worker_id | String | FK |
| position_id | String |  |
| position_title | String |  |

### organizational_unit

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| name | String |  |
| type | String |  |
| name_** |  |  |
| type_** |  |  |

### person_residency

| Column | Type | Keys |
| --- | --- | --- |
| value | String | PK |
| worker_id | String | PK, FK |
| long_name | String |  |
| short_name | String |  |

### additional_remuneration_associated_rate_qualifier

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK, FK |
| worker_additional_remuneration_id | String | PK, FK |
| worker_assignment_id | String | PK, FK |
| worker_id | String | PK, FK |

### worker_pay_distribution_instruction

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| worker_id | String | PK, FK |
| worker_pay_distribution_id | String | PK, FK |
| bonus_only_indicator | Boolean |  |
| deposit_account_financial_account_account_number | String |  |
| deposit_account_financial_account_type | String |  |
| deposit_account_financial_account_type_effective_date | LocalDate |  |
| deposit_account_financial_account_type_long_name | String |  |
| deposit_account_financial_account_type_short_name | String |  |
| deposit_account_financial_account_type_subdivision_type | String |  |
| deposit_account_financial_party_routing_transit_id_id_value | String |  |
| instruction_status | String |  |
| prenote_indicator | Boolean |  |
| remaining_balance_indicator | Boolean |  |
| instructionStatus_** |  |  |
| prenote_** |  |  |

### worker_time_card_time_entry

| Column | Type | Keys |
| --- | --- | --- |
| entry_id | String | PK |
| day_entry_index | Long | PK, FK |
| time_card_id | String | PK, FK |
| end_period_end_date_time | Instant |  |
| entry_date | LocalDate |  |
| entry_status | String |  |
| entry_type | String |  |
| start_period_start_date_time | Instant |  |
| time_duration | String |  |
| entry_status_** |  |  |
| entry_type_** |  |  |

### person_government_id

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| worker_id | String | PK, FK |
| country_code | String |  |
| expiration_date | LocalDate |  |
| item_id | String |  |
| name | String |  |
| status | String |  |
| name_** |  |  |
| status_** |  |  |

### business_communication

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| type | String | PK |
| worker_id | String | PK, FK |
| access | String |  |
| area_dialing | String |  |
| country_dialing | String |  |
| dial_number | String |  |
| email_uri | String |  |
| extension | String |  |
| formatted_number | String |  |
| name | String |  |
| notification_indicator | Boolean |  |
| uri | String |  |
| name_** |  |  |

### other_personal_address

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| worker_id | String | PK, FK |
| attention_of_name | String |  |
| block_name | String |  |
| building_name | String |  |
| building_number | String |  |
| care_of_name | String |  |
| city_name | String |  |
| country_code | String |  |
| country_subdivision_level_1 | String |  |
| country_subdivision_level_2 | String |  |
| delivery_point | String |  |
| door | String |  |
| floor | String |  |
| formatted_birth_place | String |  |
| geo_coordinate_latitude | Double |  |
| geo_coordinate_longitude | Double |  |
| line_five | String |  |
| line_four | String |  |
| line_one | String |  |
| line_three | String |  |
| line_two | String |  |
| name | String |  |
| plot_id | String |  |
| post_office_box | String |  |
| postal_code | String |  |
| same_as_address_indicator | Boolean |  |
| script | String |  |
| stair_case | String |  |
| street_name | String |  |
| street_type | String |  |
| type | String |  |
| unit | String |  |
| name_** |  |  |
| script_** |  |  |
| streetType_** |  |  |
| type_** |  |  |

### work_assignment_history

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| worker_id | String | PK, FK |
| actual_start_date | LocalDate |  |
| assignment_term | String |  |
| bargaining_unit_effective_date | LocalDate |  |
| bargaining_unit_long_name | String |  |
| bargaining_unit_seniority_date | LocalDate |  |
| bargaining_unit_short_name | String |  |
| bargaining_unit_subdivision_type | String |  |
| bargaining_unit_value | String |  |
| compa_ratio | Double |  |
| executive_indicator | Boolean |  |
| executive_type | String |  |
| expected_start_date | LocalDate |  |
| expected_termination_date | LocalDate |  |
| full_time_equivalence_ratio | Double |  |
| geographic_pay_differential | String |  |
| geographic_pay_differential_percentage | Double |  |
| highly_compensated_indicator | Boolean |  |
| highly_compensated_type | String |  |
| hire_date | LocalDate |  |
| home_work_location_address_attention_of_name | String |  |
| home_work_location_address_block_name | String |  |
| home_work_location_address_building_name | String |  |
| home_work_location_address_building_number | String |  |
| home_work_location_address_care_of_name | String |  |
| home_work_location_address_city_name | String |  |
| home_work_location_address_country_code | String |  |
| home_work_location_address_country_subdivision_level_1 | String |  |
| home_work_location_address_country_subdivision_level_2 | String |  |
| home_work_location_address_delivery_point | String |  |
| home_work_location_address_door | String |  |
| home_work_location_address_floor | String |  |
| home_work_location_address_formatted_birth_place | String |  |
| home_work_location_address_geo_coordinate_latitude | Double |  |
| home_work_location_address_geo_coordinate_longitude | Double |  |
| home_work_location_address_item_id | String |  |
| home_work_location_address_line_five | String |  |
| home_work_location_address_line_four | String |  |
| home_work_location_address_line_one | String |  |
| home_work_location_address_line_three | String |  |
| home_work_location_address_line_two | String |  |
| home_work_location_address_name | String |  |
| home_work_location_address_name_effective_date | LocalDate |  |
| home_work_location_address_name_long_name | String |  |
| home_work_location_address_name_short_name | String |  |
| home_work_location_address_name_subdivision_type | String |  |
| home_work_location_address_plot_id | String |  |
| home_work_location_address_post_office_box | String |  |
| home_work_location_address_postal_code | String |  |
| home_work_location_address_same_as_address_indicator | Boolean |  |
| home_work_location_address_script | String |  |
| home_work_location_address_script_effective_date | LocalDate |  |
| home_work_location_address_script_long_name | String |  |
| home_work_location_address_script_short_name | String |  |
| home_work_location_address_script_subdivision_type | String |  |
| home_work_location_address_stair_case | String |  |
| home_work_location_address_street_name | String |  |
| home_work_location_address_street_type | String |  |
| home_work_location_address_street_type_effective_date | LocalDate |  |
| home_work_location_address_street_type_long_name | String |  |
| home_work_location_address_street_type_short_name | String |  |
| home_work_location_address_street_type_subdivision_type | String |  |
| home_work_location_address_type | String |  |
| home_work_location_address_type_effective_date | LocalDate |  |
| home_work_location_address_type_long_name | String |  |
| home_work_location_address_type_short_name | String |  |
| home_work_location_address_type_subdivision_type | String |  |
| home_work_location_address_unit | String |  |
| home_work_location_name | String |  |
| home_work_location_name_effective_date | LocalDate |  |
| home_work_location_name_long_name | String |  |
| home_work_location_name_short_name | String |  |
| home_work_location_name_subdivision_type | String |  |
| job | String |  |
| job_function | String |  |
| job_title | String |  |
| labor_union_effective_date | LocalDate |  |
| labor_union_long_name | String |  |
| labor_union_seniority_date | LocalDate |  |
| labor_union_short_name | String |  |
| labor_union_subdivision_type | String |  |
| labor_union_value | String |  |
| legal_entity_id | String |  |
| management_position_indicator | Boolean |  |
| minimum_pay_grade_step_duration | String |  |
| nationality_context | String |  |
| next_pay_grade_step_date | LocalDate |  |
| offer_acceptance_date | LocalDate |  |
| offer_extension_date | LocalDate |  |
| officer_indicator | Boolean |  |
| officer_type | String |  |
| pay_cycle | String |  |
| pay_grade | String |  |
| pay_grade_step | String |  |
| pay_scale | String |  |
| payroll_file_number | String |  |
| payroll_group_code | String |  |
| payroll_processing_status | String |  |
| payroll_region_code | String |  |
| payroll_schedule_group_id | String |  |
| position_id | String |  |
| position_title | String |  |
| primary_indicator | Boolean |  |
| probation_period_end_date | LocalDate |  |
| probation_period_start_date | LocalDate |  |
| remuneration_basis | String |  |
| seniority_date | LocalDate |  |
| standard_hour_hours_quantity | Int |  |
| standard_hour_unit | String |  |
| standard_hour_unit_effective_date | LocalDate |  |
| standard_hour_unit_long_name | String |  |
| standard_hour_unit_short_name | String |  |
| standard_hour_unit_subdivision_type | String |  |
| standard_pay_period_hour_hours_quantity | Int |  |
| standard_pay_period_hour_unit | String |  |
| standard_pay_period_hour_unit_effective_date | LocalDate |  |
| standard_pay_period_hour_unit_long_name | String |  |
| standard_pay_period_hour_unit_short_name | String |  |
| standard_pay_period_hour_unit_subdivision_type | String |  |
| stock_owner_indicator | Boolean |  |
| stock_owner_percentage | Double |  |
| termination_date | LocalDate |  |
| vip_indicator | Boolean |  |
| voluntary_indicator | Boolean |  |
| work_arrangement | String |  |
| work_level | String |  |
| work_shift | String |  |
| worker_probation_indicator | Boolean |  |
| worker_type | String |  |
| annualBenefitBaseRate_** |  |  |
| assignmentStatus_** |  |  |
| assignmentTerm_** |  |  |
| executiveType_** |  |  |
| geographicPayDifferential_** |  |  |
| highlyCompensatedType_** |  |  |
| job_** |  |  |
| jobFunction_** |  |  |
| nationalityContext_** |  |  |
| officerType_** |  |  |
| payCycle_** |  |  |
| payGrade_** |  |  |
| payGradeStep_** |  |  |
| payGradeStepPay_** |  |  |
| payrollProcessingStatus_** |  |  |
| payScale_** |  |  |
| remunerationBasis_** |  |  |
| wageLawCoverage_** |  |  |
| workArrangement_** |  |  |
| workerType_** |  |  |
| workLevel_** |  |  |
| workShift_** |  |  |

### worker_leave

| Column | Type | Keys |
| --- | --- | --- |
| associate_oid | String | PK |
| index | Long | PK |
| worker_id | String | FK |
| effective_date_time | LocalDate |  |
| links | Json |  |
| leaveAbsence_** |  |  |
| leaveReturn_** |  |  |

### worker_paid_time_off_request

| Column | Type | Keys |
| --- | --- | --- |
| request_id | String | PK |
| worker_id | String | PK, FK |
| approval_due_date | String |  |
| meta_metadata_entitlement_codes | Json |  |
| meta_multi_period_request_indicator | Boolean |  |
| request_desc | String |  |
| request_start_date | String |  |
| request_status_code | String |  |
| request_status_label_name | String |  |
| request_uri_href | String |  |
| requestor_comment_comment_txt | String |  |
| requestor_comment_entry_date_time | String |  |
| total_quantity_label_name | String |  |
| total_quantity_unit_time_code | String |  |
| total_quantity_value_number | Double |  |
| total_time | String |  |

### location

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| name | String |  |
| address_** |  |  |
| name_** |  |  |

### worker_group

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK, FK |
| worker_assignment_id | String | PK, FK |
| worker_id | String | PK, FK |

### person_preferred_salutation

| Column | Type | Keys |
| --- | --- | --- |
| sequence_number | String | PK |
| type | String | PK |
| worker_id | String | PK, FK |
| salutation | String |  |
| salutation_** |  |  |
| type_** |  |  |

### person_title_affix

| Column | Type | Keys |
| --- | --- | --- |
| sequence_number | String | PK |
| type | String | PK |
| worker_id | String | PK, FK |
| affix | String |  |
| affix_** |  |  |

### person_former_name

| Column | Type | Keys |
| --- | --- | --- |
| id | String | PK |
| worker_id | String | PK, FK |
| family_name_1 | String |  |
| family_name_1_prefix | String |  |
| family_name_2 | String |  |
| family_name_2_prefix | String |  |
| formatted_name | String |  |
| generation_affix | String |  |
| given_name | String |  |
| initials | String |  |
| language | String |  |
| middle_name | String |  |
| name | String |  |
| nick_name | String |  |
| qualification_affix | String |  |
| script | String |  |
| generationAffix_** |  |  |
| language_** |  |  |
| name_** |  |  |
| qualificationAffix_** |  |  |
| script_** |  |  |

## Relationships

- person_history(worker_id) → worker(id)
- worker_time_card_day_entry(time_card_id) → worker_time_card(id)
- worker_paid_time_off_balance(worker_id) → worker(id)
- worker_classification(worker_id) → worker(id)
- worker_classification(worker_assignment_id) → work_assignment_history(worker_id)
- worker_classification(id) → classification(id)
- worker_paid_time_off_accrual_balance(worker_id) → worker(id)
- worker_assigned_location(worker_id) → worker(id)
- worker_assigned_location(worker_assignment_id) → work_assignment_history(worker_id)
- worker_assigned_location(id) → location(id)
- worker_time_card(worker_id) → worker(id)
- worker_time_card_daily_total(time_card_id) → worker_time_card(id)
- person_citizenship(worker_id) → worker(id)
- person_military_classification(worker_id) → worker(id)
- person_communication(worker_id) → worker(id)
- person_social_insurance_program(worker_id) → worker(id)
- worker_home_work_communication(worker_id) → worker(id)
- worker_home_work_communication(worker_assignment_id) → work_assignment_history(worker_id)
- worker_time_card_period_total(time_card_id) → worker_time_card(id)
- worker_time_card_labor_allocation(time_card_id) → worker_time_card(id)
- worker_time_card_labor_allocation(day_entry_index) → worker_time_card_day_entry(index)
- worker_time_card_labor_allocation(time_entry_id) → worker_time_card_time_entry(entry_id)
- worker_assigned_organizational_unit(worker_id) → worker(id)
- worker_assigned_organizational_unit(worker_assignment_id) → work_assignment_history(worker_id)
- worker_assigned_organizational_unit(id) → organizational_unit(id)
- worker_pay_distribution(worker_id) → worker(id)
- worker_time_card_entry_total(time_card_id) → worker_time_card(id)
- worker_time_card_entry_total(day_entry_index) → worker_time_card_day_entry(index)
- worker_time_card_entry_total(time_entry_id) → worker_time_card_time_entry(entry_id)
- person_title_prefix(worker_id) → worker(id)
- worker_base_remuneration(worker_id) → worker(id)
- worker_base_remuneration(worker_assignment_id) → work_assignment_history(worker_id)
- worker_additional_remuneration(worker_id) → worker(id)
- worker_additional_remuneration(worker_assignment_id) → work_assignment_history(worker_id)
- worker_paid_time_off_entry(request_id) → worker_paid_time_off_request(request_id)
- person_disability(worker_id) → worker(id)
- worker_assignment_cost_center(worker_id) → worker(id)
- worker_assignment_cost_center(worker_assignment_id) → work_assignment_history(worker_id)
- worker_home_organizational_unit(worker_id) → worker(id)
- worker_home_organizational_unit(worker_assignment_id) → work_assignment_history(worker_id)
- worker_home_organizational_unit(id) → organizational_unit(id)
- base_remuneration_associated_rate_qualifier(worker_id) → worker(id)
- base_remuneration_associated_rate_qualifier(worker_assignment_id) → work_assignment_history(worker_id)
- base_remuneration_associated_rate_qualifier(id) → associated_rate_qualifier(id)
- person_alternate_preferred_name(worker_id) → worker(id)
- assigned_work_communication(worker_id) → worker(id)
- assigned_work_communication(worker_assignment_id) → work_assignment_history(worker_id)
- assigned_work_communication(location_id) → location(id)
- worker_time_card_home_labor_allocation(time_card_id) → worker_time_card(id)
- worker_report_to(worker_assignment_id) → work_assignment_history(worker_id)
- worker_report_to(worker_id) → worker(id)
- worker_report_to(report_to_worker_id) → worker(id)
- person_residency(worker_id) → worker(id)
- additional_remuneration_associated_rate_qualifier(worker_additional_remuneration_id) → worker_additional_remuneration(worker_id)
- additional_remuneration_associated_rate_qualifier(worker_id) → worker(id)
- additional_remuneration_associated_rate_qualifier(worker_assignment_id) → work_assignment_history(worker_id)
- additional_remuneration_associated_rate_qualifier(id) → associated_rate_qualifier(id)
- worker_pay_distribution_instruction(worker_pay_distribution_id) → worker_pay_distribution(item_id)
- worker_pay_distribution_instruction(worker_id) → worker(id)
- worker_time_card_time_entry(time_card_id) → worker_time_card(id)
- worker_time_card_time_entry(day_entry_index) → worker_time_card_day_entry(index)
- person_government_id(worker_id) → worker(id)
- business_communication(worker_id) → worker(id)
- other_personal_address(worker_id) → worker(id)
- work_assignment_history(worker_id) → worker(id)
- worker_leave(worker_id) → worker(id)
- worker_paid_time_off_request(worker_id) → worker(id)
- worker_group(worker_id) → worker(id)
- worker_group(worker_assignment_id) → work_assignment_history(worker_id)
- worker_group(id) → groups(id)
- person_preferred_salutation(worker_id) → worker(id)
- person_title_affix(worker_id) → worker(id)
- person_former_name(worker_id) → worker(id)
