HL7 FHIR Profile: Occupational Data for Health (ODH), Release 1, STU 1.3 (Standard for Trial Use), published by HL7 International Public Health Work Group. This is not an authorized publication; it is the continuous build for version 1.3.0). This version is based on the current content of https://github.com/HL7/us-odh/ and changes regularly. See the Directory of published versions
Mappings for the odh-UsualWork resource profile.
UsualWork |
Observation | < 363787002 |Observable entity| |
status | < 445584004 |Report by finality status| |
code | < 363787002 |Observable entity| OR < 386053000 |Evaluation procedure| |
value[x] | < 441742003 |Evaluation finding| |
value[x] (valueCodeableConcept) | < 441742003 |Evaluation finding| |
component | |
code | < 363787002 |Observable entity| OR
< 386053000 |Evaluation procedure| |
value[x] | 363714003 |Interprets| < 441742003 |Evaluation finding| |
interpretation | < 260245000 |Findings values| |
referenceRange | |
component (odh-UsualIndustry) | |
code | < 363787002 |Observable entity| OR
< 386053000 |Evaluation procedure| |
value[x] | 363714003 |Interprets| < 441742003 |Evaluation finding| |
component (odh-UsualOccupationDuration) | |
code | < 363787002 |Observable entity| OR
< 386053000 |Evaluation procedure| |
value[x] | 363714003 |Interprets| < 441742003 |Evaluation finding| |
UsualWork |
Observation | OBX |
identifier | OBX.21 For OBX segments from systems without OBX-21 support a combination of ORC/OBR and OBX must be negotiated between trading partners to uniquely identify the OBX segment. Depending on how V2 has been implemented each of these may be an option: 1) OBR-3 + OBX-3 + OBX-4 or 2) OBR-3 + OBR-4 + OBX-3 + OBX-4 or 2) some other way to uniquely ID the OBR/ORC + OBX-3 + OBX-4. |
basedOn | ORC |
partOf | Varies by domain |
status | OBX-11 |
category | |
coding | C*E.1-8, C*E.10-22 |
coding (Fixed_social-history) | C*E.1-8, C*E.10-22 |
system | C*E.3 |
version | C*E.7 |
code | C*E.1 |
display | C*E.2 - but note this is not well followed |
userSelected | Sometimes implied by being first |
text | C*E.9. But note many systems use C*E.2 for this |
code | OBX-3 |
coding | C*E.1-8, C*E.10-22 |
coding (Fixed_21843-8) | C*E.1-8, C*E.10-22 |
system | C*E.3 |
version | C*E.7 |
code | C*E.1 |
display | C*E.2 - but note this is not well followed |
userSelected | Sometimes implied by being first |
text | C*E.9. But note many systems use C*E.2 for this |
subject | PID-3 |
focus | OBX-3 |
encounter | PV1 |
effective[x] | OBX-14, and/or OBX-19 after v2.4 (depends on who observation made) |
effective[x] (effectivePeriod) | OBX-14, and/or OBX-19 after v2.4 (depends on who observation made) |
issued | OBR.22 (or MSH.7), or perhaps OBX-19 (depends on who observation made) |
performer | OBX.15 / (Practitioner) OBX-16, PRT-5:PRT-4='RO' / (Device) OBX-18 , PRT-10:PRT-4='EQUIP' / (Organization) OBX-23, PRT-8:PRT-4='PO' |
value[x] | OBX.2, OBX.5, OBX.6 |
value[x] (valueCodeableConcept) | OBX.2, OBX.5, OBX.6 |
coding | C*E.1-8, C*E.10-22 |
coding (occupationCDCCensus2010) | C*E.1-8, C*E.10-22 |
coding (occupationONETSOCDetailODH) | C*E.1-8, C*E.10-22 |
coding (occupationCDCCensus2018) | C*E.1-8, C*E.10-22 |
text | C*E.9. But note many systems use C*E.2 for this |
dataAbsentReason | N/A |
note | NTE.3 (partner NTE to OBX, or sometimes another (child?) OBX) |
derivedFrom | Relationships established by OBX-4 usage |
component | containment by OBX-4? |
code | OBX-3 |
value[x] | OBX.2, OBX.5, OBX.6 |
dataAbsentReason | N/A |
interpretation | OBX-8 |
referenceRange | OBX.7 |
component (odh-UsualIndustry) | containment by OBX-4? |
code | OBX-3 |
value[x] | OBX.2, OBX.5, OBX.6 |
coding | C*E.1-8, C*E.10-22 |
coding (industryCDCCensus2010) | C*E.1-8, C*E.10-22 |
coding (industryONETSOCDetailODH) | C*E.1-8, C*E.10-22 |
coding (industryCDCCensus2018) | C*E.1-8, C*E.10-22 |
text | C*E.9. But note many systems use C*E.2 for this |
dataAbsentReason | N/A |
component (odh-UsualOccupationDuration) | containment by OBX-4? |
code | OBX-3 |
value[x] | OBX.2, OBX.5, OBX.6 |
value | SN.2 / CQ - N/A |
comparator | SN.1 / CQ.1 |
unit | (see OBX.6 etc.) / CQ.2 |
system | (see OBX.6 etc.) / CQ.2 |
code | (see OBX.6 etc.) / CQ.2 |
dataAbsentReason | N/A |
UsualWork |
Observation | Entity. Role, or Act, Observation[classCode=OBS, moodCode=EVN] |
text | Act.text? |
contained | N/A |
extension | N/A |
modifierExtension | N/A |
identifier | id |
basedOn | .inboundRelationship[typeCode=COMP].source[moodCode=EVN] |
partOf | .outboundRelationship[typeCode=FLFS].target |
status | status Amended & Final are differentiated by whether it is the subject of a ControlAct event with a type of "revise" |
category | .outboundRelationship[typeCode="COMP].target[classCode="LIST", moodCode="EVN"].code |
id | n/a |
extension | n/a |
coding | union(., ./translation) |
coding (Fixed_social-history) | union(., ./translation) |
id | n/a |
extension | n/a |
system | ./codeSystem |
version | ./codeSystemVersion |
code | ./code |
display | CV.displayName |
userSelected | CD.codingRationale |
text | ./originalText[mediaType/code="text/plain"]/data |
code | code |
id | n/a |
extension | n/a |
coding | union(., ./translation) |
coding (Fixed_21843-8) | union(., ./translation) |
id | n/a |
extension | n/a |
system | ./codeSystem |
version | ./codeSystemVersion |
code | ./code |
display | CV.displayName |
userSelected | CD.codingRationale |
text | ./originalText[mediaType/code="text/plain"]/data |
subject | participation[typeCode=RTGT] |
focus | participation[typeCode=SBJ] |
encounter | inboundRelationship[typeCode=COMP].source[classCode=ENC, moodCode=EVN] |
effective[x] | effectiveTime |
effective[x] (effectivePeriod) | effectiveTime |
issued | participation[typeCode=AUT].time |
performer | participation[typeCode=PRF] |
value[x] | value |
value[x] (valueCodeableConcept) | value |
id | n/a |
extension | n/a |
coding | union(., ./translation) |
coding (occupationCDCCensus2010) | union(., ./translation) |
coding (occupationONETSOCDetailODH) | union(., ./translation) |
coding (occupationCDCCensus2018) | union(., ./translation) |
text | ./originalText[mediaType/code="text/plain"]/data |
dataAbsentReason | value.nullFlavor |
note | subjectOf.observationEvent[code="annotation"].value |
derivedFrom | .targetObservation |
component | outBoundRelationship[typeCode=COMP] |
id | n/a |
extension | n/a |
modifierExtension | N/A |
code | code |
value[x] | value |
dataAbsentReason | value.nullFlavor |
interpretation | interpretationCode |
referenceRange | outboundRelationship[typeCode=REFV]/target[classCode=OBS, moodCode=EVN] |
component (odh-UsualIndustry) | outBoundRelationship[typeCode=COMP] |
id | n/a |
extension | n/a |
modifierExtension | N/A |
code | code |
value[x] | value |
id | n/a |
extension | n/a |
coding | union(., ./translation) |
coding (industryCDCCensus2010) | union(., ./translation) |
coding (industryONETSOCDetailODH) | union(., ./translation) |
coding (industryCDCCensus2018) | union(., ./translation) |
text | ./originalText[mediaType/code="text/plain"]/data |
dataAbsentReason | value.nullFlavor |
component (odh-UsualOccupationDuration) | outBoundRelationship[typeCode=COMP] |
id | n/a |
extension | n/a |
modifierExtension | N/A |
code | code |
value[x] | value |
id | n/a |
extension | n/a |
value | PQ.value, CO.value, MO.value, IVL.high or IVL.low depending on the value |
comparator | IVL properties |
unit | PQ.unit |
system | CO.codeSystem, PQ.translation.codeSystem |
code | PQ.code, MO.currency, PQ.translation.code |
dataAbsentReason | value.nullFlavor |