Skip to main content

Sentinel CDM to BFF

Mapping status

Tests cover the Sentinel CDM table profile with synthetic fixtures. Data-partner extensions may require additional mapping review.

The route joins supported clinical tables to DEMOGRAPHIC by PATID and creates one BFF individuals record per patient.

Patient​

Sentinel sourceBFF targetBehavior
DEMOGRAPHIC.PATIDidRequired and unique
SEX, fallback SEX_AT_BIRTH, GENDERsexMale, female, other, and unknown values use Beacon-compatible defaults
BIRTH_DATE, fallback BIRTHDATE, DATE_OF_BIRTHinfo.phenopacket.dateOfBirthSupported dates become UTC timestamps for later PXF conversion
ETHNICITY, ETHNIC, or HISPANICethnicityRetained as a source-derived Sentinel term; common Hispanic indicators receive readable labels
DEATH.DEATH_DATE, fallback DOD, DATE_OF_DEATHinfo.phenopacket.vitalStatusA death row sets DECEASED; a supported date becomes timeOfDeath.timestamp
RACEsource provenance onlyRace is not interpreted as Beacon ethnicity

Diagnoses And Procedures​

Sentinel sourceBFF targetBehavior
DIAGNOSIS.DX, fallback diagnosis code fieldsdiseases[].diseaseCodeDX_TYPE or equivalent identifies a recognized code system when possible
PROCEDURE.PX, fallback procedure code fieldsinterventionsOrProcedures[].procedureCodeProcedure type and label fields are retained
PX_DATE, fallback PROCEDURE_DATEinterventionsOrProcedures[].dateOfProcedureSupported date component is retained

Measurements​

Sentinel sourceBFF targetBehavior
LAB_RESULT.LAB_LOINCmeasures[].assayCodeUses LOINC:; laboratory name fields supply the label
laboratory name or test code without LOINCmeasures[].assayCodeRetained as a source-derived Sentinel laboratory term
numeric result and unitmeasurementValue.quantityNumeric value, unit, and complete low/high reference range are retained
qualitative or text resultcategorical measurementValueUsed when no numeric result is available
VITAL_SIGNS height, weight, BMI, systolic, diastolicmeasures[]Uses built-in LOINC assay codes and retains supplied values and units
result, specimen, laboratory, or order datemeasures[].dateFirst supported date is retained

Treatments​

Sentinel sourceBFF targetBehavior
PRESCRIBING, DISPENSING, INPATIENT_PHARMACYtreatments[]One treatment is emitted for each row with a usable code
RXNORM_CUI, fallback RXCUItreatmentCodeUses RxNorm:
NDCtreatmentCodeUses NDC:
generic medication code and typetreatmentCodeA recognized type selects the prefix; otherwise a source-derived Sentinel term is used
route fieldsrouteOfAdministrationRetained as a source-derived Sentinel term

Encounter Context​

ENCOUNTERID, ENCOUNTER_NUM, or VISIT_ID links a clinical row to ENCOUNTER. Convert-Pheno attaches available dates and encounter type to the mapped event through the private _visit extension. _visit is not a native Beacon v2 or Phenopackets property.

Terminology And Provenance​

Recognized type values map to ICD-9-CM, ICD-10-CM, ICD-10-PCS, ICD-11, SNOMED CT, LOINC, RxNorm, NDC, CVX, CPT-4, or HCPCS prefixes. Existing CURIEs are retained. Ambiguous values receive a Sentinel: source identifier rather than an unverified ontology assignment.

By default, source rows are copied to info.sentinel. Use --no-source-info to omit this raw copy. For OMOP output, the second conversion stage resolves supported terms against Athena-OHDSI; use --term-audit to inspect the result.

See the Sentinel CDM format guide for accepted packages, commands, and memory behavior.