Skip to content
Partner Developer Portal

Schema

The core schema represents the User In Role schema derived from the EMIS source system.

Column NameData TypeDescriptionExample
user_in_role_idbigintThe unique internal identifier for the user in role record within an organisation.12345
organisationvarcharAn identifier for the source of data (an organisation) relating to a given GP practiceCDB-50002
load_datetimetimestamp(6) with time zoneThe datetime that the record was last upserted into the EXA data lake from EMIS source system with a relevant change from source system.‘2023-09-01 09:00:00.000000 UTC’
_ingest_timevarcharThe load_datetime formatted as yyyyMMddHHmmss. This column is provided only for backward compatibility.20240917084800
is_deletedbooleanIndicates if this record should be considered soft deleted.FALSE
user_in_role_guidvarcharThe GUID for the user in role record within an organisation.B2709D32-A3DE-4D0F-A362-7309FA4A66E7
user_in_role_uuidvarcharThe UUID derived from user_in_role_id and organisation, providing a stable unique identifier.‘a1b2c3d4-e5f6-4a5b-9c8d-0e1f2a3b4c5d’
organisation_idbigintThe unique internal identifier for the organisation record within an organisation.12345
organisation_guidvarcharThe GUID for the organisation record within an organisation.B2709D32-A3DE-4D0F-A362-7309FA4A66E7
organisation_uuidvarcharThe UUID derived from organisation_id and organisation, providing a stable unique identifier.‘a1b2c3d4-e5f6-4a5b-9c8d-0e1f2a3b4c5d’
organisation_specialitiesvarcharA comma-separated list of specialty codes for the organisation that the user belongs to.“100,200”
user_idbigintThe unique internal identifier for the user record within an organisation.6789
user_uuidvarcharThe UUID derived from user_id and organisation, providing a stable unique identifier.‘a1b2c3d4-e5f6-4a5b-9c8d-0e1f2a3b4c5d’
titlevarcharThe title for the user.Mr
given_namevarcharThe first name of the user.John
surnamevarcharThe surname of the user.Doe
healthcare_practitioner_typevarcharThe GPES healthcare practitioner type for the user.A
job_category_codevarcharThe job category code for the user in role.R5007
job_category_namevarcharThe job category name for the user in role.System Administrator
contract_start_datedateThe contract start date for the user in role.2020-01-01
contract_end_datedateThe contract end date for the user in role.2023-12-01
sds_user_idvarcharThe user’s Spine Directory Service (SDS) user ID555250704103
sds_user_uuidvarcharThe UUID derived from sds_user_id and organisation, providing a stable unique identifier.‘a1b2c3d4-e5f6-4a5b-9c8d-0e1f2a3b4c5d’
general_medical_practitioner_numbervarcharThe NHS Prescription Services identifier for a general medical practitioner.G3371701
general_medical_council_numbervarcharThe identifier for the user’s General Medical Council membership, if applicable.7219735
general_dental_council_numbervarcharThe identifier for the user’s General Dental Council membership, if applicable.5689263
nursing_and_midwifery_council_numbervarcharThe identifier for the user’s Nursing and Midwifery Council membership, if applicable.6828373
identifier_issuing_bodyvarcharThe professional body (GMC, GDC, or NMC) issuing the professional identifier for the user.03
transform_datetimetimestamp(6) with time zoneThe timestamp indicating when the record was last processed and updated in the data model.‘2023-09-01 09:00:00.000000 UTC’
_execution_datevarcharThe transform_datetime formatted as yyyyMMddHHmmss. This column is provided only for backward compatibility.202401010000

The table below presents the flavour specific schema and maps columns between core, V1, and V2. Refer to Changes in iPCV V2 for more information.

Column NameData TypesData Data in V1Data Data in V2Core MappingComments
_ingest_timevarchar✓✓
is_deletedboolean✗✓
load_datetimetimestamp(6) with time zone✗✓
user_in_role_idbigint✓✓Renamed from emis_user_id in v1
emis_userinrole_guidvarchar✓✓user_in_role_guid
user_in_role_uuidvarchar✗✓
organisation_idbigint✗✓
emis_employer_organisation_guidvarchar✓✓organisation_guid
organisation_uuidvarchar✗✓
user_idbigint✗✓
user_uuidvarchar✗✓
sds_user_idvarchar✗✓
sds_user_uuidvarchar✗✓
sds_job_role_codevarchar✓✓job_category_code
emis_job_category_namevarchar✓✓job_category_name
contract_start_datedate✓✓
contract_end_datedate✓✓
titlevarchar✓✓
given_namevarchar✓✓
surnamevarchar✓✓
organisation_specialitiesvarchar✗✓
healthcare_practitioner_typevarchar✗✓
general_medical_practitioner_numbervarchar✗✓
general_medical_council_numbervarchar✗✓
nursing_and_midwifery_council_numbervarchar✗✓
general_dental_council_numbervarchar✗✓
identifier_issuing_bodyvarchar✗✓
organisationvarchar✓✓
transform_datetimetimestamp(6) with time zone✗✓
_execution_datevarchar✓✓

The table below presents the flavour specific schema and maps columns between core, V1, and V2. Refer to Changes in iPCV V2 for more information.

Column NameData TypesData in V1Data in V2Core MappingComments
_ingest_timevarchar✓✓
is_deletedboolean✗✓
load_datetimetimestamp(6) with time zone✗✓
emis_userinrole_idbigint✓✓user_in_role_id
emis_userinrole_guidvarchar✓✓user_in_role_guid
user_in_role_uuidvarchar✗✓
organisation_idbigint✗✓
emis_employer_organisation_guidvarchar✓✓organisation_guid
organisation_uuidvarchar✗✓
user_idbigint✗✓
user_uuidvarchar✗✓
sds_user_idvarchar✗✓
sds_user_uuidvarchar✗✓
sds_job_role_codevarchar✓✓job_category_code
emis_job_category_namevarchar✓✓job_category_name
contract_start_datedate✓✓
contract_end_datedate✓✓
titlevarchar✓✓
given_namevarchar✓✓
surnamevarchar✓✓
organisation_specialitiesvarchar✗✓
hcp_typevarchar✗✓healthcare_practitioner_type
gmp_numbervarchar✗✓general_medical_practitioner_number
general_medical_council_numbervarchar✗✓
nursing_and_midwifery_council_numbervarchar✗✓
general_dental_council_numbervarchar✗✓
identifier_issuing_bodyvarchar✗✓
organisationvarchar✓✓
transform_datetimetimestamp(6) with time zone✗✓
_execution_datevarchar✓✓

The table below presents the flavour specific schema and maps columns between core, V1, and V2. Refer to Changes in iPCV V2 for more information.

Column NameData TypesData in V1Data in V2Core MappingComments
_ingest_timevarchar✓✓
is_deletedboolean✗✓
load_datetimetimestamp(6) with time zone✗✓
user_in_role_idbigint✗✓
emis_userinrole_guidvarchar✓✓user_in_role_guid
user_in_role_uuidvarchar✗✓
organisation_idbigint✗✓
emis_employer_organisation_guidvarchar✓✓organisation_guid
organisation_uuidvarchar✗✓
user_idbigint✓✓
user_uuidvarchar✗✓
sds_user_idvarchar✗✓
sds_user_uuidvarchar✗✓
sds_job_role_codevarchar✓✓job_category_code
emis_job_category_namevarchar✓✓job_category_nameRenamed from emis_job_categoy_name in V1
contract_start_datedate✓✓
contract_end_datedate✓✓
titlevarchar✓✓
given_namevarchar✓✓
surnamevarchar✓✓
organisation_specialitiesvarchar✗✓
hcp_typevarchar✗✓healthcare_practitioner_type
gmp_numbervarchar✗✓general_medical_practitioner_number
general_medical_council_numbervarchar✗✓
nursing_and_midwifery_council_numbervarchar✗✓
general_dental_council_numbervarchar✗✓
identifier_issuing_bodyvarchar✗✓
organisationvarchar✓✓
transform_datetimetimestamp(6) with time zone✗✓
_execution_datevarchar✓✓

The table below presents the flavour specific schema.

Column NameData TypeCore MappingComments
is_deletedboolean
pseudo_user_in_role_uuidvarcharuser_in_role_uuidHashed
pseudo_organisation_uuidvarcharorganisation_uuidHashed
organisation_specialitiesvarchar
titlevarchar
healthcare_practitioner_typevarchar
job_category_codevarchar
job_category_namevarchar
contract_start_datedate
contract_end_datedate
general_medical_practitioner_numbervarchar
general_medical_council_numbervarchar
nursing_and_midwifery_council_numbervarchar
general_dental_council_numbervarchar
identifier_issuing_bodyvarchar
organisationvarchar
transform_datetimetimestamp(6) with time zone

The table below presents the flavour specific schema and maps columns between core, V1, and V2. Refer to Changes in iPCV V2 for more information.

Column NameData TypesData in V1Data in V2Core MappingComments
_ingest_timevarchar✓✓
is_deletedboolean✗✓
load_datetimetimestamp(6) with time zone✗✓
user_in_role_idbigint✓✓Renamed from emis_user_id in v1
emis_userinrole_guidvarchar✓✓user_in_role_guid
user_in_role_uuidvarchar✗✓
organisation_idbigint✗✓
emis_employer_organisation_guidvarchar✓✓organisation_guid
organisation_uuidvarchar✗✓
user_idbigint✓✓
user_uuidvarchar✗✓
sds_user_idvarchar✗✓
sds_user_uuidvarchar✗✓
sds_job_role_codevarchar✓✓job_category_code
emis_job_category_namevarchar✓✓general_medical_practitioner_numberRenamed from emis_job_categoy_name in V1
contract_start_datedate✓✓
contract_end_datedate✓✓
titlevarchar✓✓
given_namevarchar✓✓
surnamevarchar✓✓
organisation_specialitiesvarchar✗✓
hcp_typevarchar✗✓healthcare_practitioner_type
gmp_numbervarchar✗✓general_medical_practitioner_number
general_medical_council_numbervarchar✗✓
nursing_and_midwifery_council_numbervarchar✗✓
general_dental_council_numbervarchar✗✓
identifier_issuing_bodyvarchar✗✓
organisationvarchar✓✓
transform_datetimetimestamp(6) with time zone✗✓
_execution_datevarchar✓✓

The table below presents the flavour specific schema and maps columns between core, V1, and V2. Refer to Changes in iPCV V2 for more information.

Column NameData TypesData in V1Data in V2Core MappingComments
_ingest_timevarchar✓✓
is_deletedboolean✗✓
load_datetimetimestamp(6) with time zone✗✓
user_in_role_idbigint✗✓
emis_userinrole_guidvarchar✓✓user_in_role_guid
user_in_role_uuidvarchar✗✓
organisation_idbigint✗✓
emis_employer_organisation_guidvarchar✓✓organisation_guid
organisation_uuidvarchar✗✓
user_idbigint✗✓
user_uuidvarchar✗✓
emis_job_category_codevarchar✓✓job_category_code
emis_job_category_namevarchar✓✓job_category_name
processing_idbigint✓✓Always NULL as it is deprecated in v2. Refer changes in v2 for more details.
organisationvarchar✓✓
transform_datetimetimestamp(6) with time zone✗✓
_execution_datevarchar✓✓

The table below presents the flavour specific schema and maps columns between core, V1, and V2. Refer to Changes in iPCV V2 for more information.

Column NameData TypesData in V1Data in V2Core MappingComments
_ingest_timevarchar✓✓
is_deletedboolean✗✓
load_datetimetimestamp(6) with time zone✗✓
user_in_role_idbigint✗✓
emis_userinrole_guidvarchar✓✓user_in_role_guid
user_in_role_uuidvarchar✗✓
organisation_idbigint✗✓
emis_employer_organisation_guidvarchar✓✓organisation_guid
organisation_uuidvarchar✗✓
user_idbigint✗✓
user_uuidvarchar✗✓
emis_job_category_codevarchar✓✓job_category_code
emis_job_category_namevarchar✓✓job_category_name
processing_idbigint✓✓Always NULL as it is deprecated in v2. Refer changes in v2 for more details.
organisationvarchar✓✓
transform_datetimetimestamp(6) with time zone✗✓
_execution_datevarchar✓✓Renamed from execution_date in V1

The table below presents the flavour specific schema and maps columns between core, V1, and V2. Refer to Changes in iPCV V2 for more information.

Column NameData TypesData in V1Data in V2Core MappingComments
_ingest_timevarchar✓✓
is_deletedboolean✗✓
load_datetimetimestamp(6) with time zone✗✓
user_in_role_idbigint✗✓
user_in_role_guidvarchar✓✓
user_in_role_uuidvarchar✗✓
organisation_idbigint✗✓
organisation_guidvarchar✓✓
organisation_uuidvarchar✗✓
user_idbigint✗✓
user_uuidvarchar✗✓
contract_start_datedate✓✓
contract_end_datedate✓✓
job_category_codevarchar✓✓
job_category_namevarchar✓✓
processing_idbigint✓✓Always NULL as it is deprecated in v2. Refer changes in v2 for more details.
organisationvarchar✓✓
transform_datetimetimestamp(6) with time zone✗✓
_execution_datevarchar✓✓Renamed from execution_date in V1

The table below presents the flavour specific schema and maps columns between core, V1, and V2. Refer to Changes in iPCV V2 for more information.

Column NameData TypesData in V1Data in V2Core MappingComments
_ingest_timevarchar✓✓
is_deletedboolean✗✓
load_datetimetimestamp(6) with time zone✗✓
user_in_role_idbigint✓✓
emis_userinrole_guidvarchar✓✓user_in_role_guid
user_in_role_uuidvarchar✗✓
organisation_idbigint✗✓
emis_employer_organisation_guidvarchar✓✓organisation_guid
organisation_uuidvarchar✗✓
user_idbigint✗✓
user_uuidvarchar✗✓
sds_user_idvarchar✗✓
sds_user_uuidvarchar✗✓
sds_job_role_codevarchar✓✓job_category_code
emis_job_category_namevarchar✓✓job_category_name
contract_start_datedate✓✓
contract_end_datedate✓✓
titlevarchar✓✓
given_namevarchar✓✓
surnamevarchar✓✓
organisation_specialitiesvarchar✗✓
healthcare_practitioner_typevarchar✗✓
general_medical_practitioner_numbervarchar✗✓
general_medical_council_numbervarchar✗✓
nursing_and_midwifery_council_numbervarchar✗✓
general_dental_council_numbervarchar✗✓
identifier_issuing_bodyvarchar✗✓
organisationvarchar✓✓
transform_datetimetimestamp(6) with time zone✗✓
_execution_datevarchar✓✓

Not used in this schema