Concept domain bindings link a resource or an element to a set of SNOMED CT concepts that represent the intended semantics of the instances (whether or not SNOMED CT is used to encode that data element).
This set of concepts is represented using a SNOMED CT expression constraint. Note that the 'Concept domain binding' may be a superset of the 'value set binding'. These bindings help to support:
- Quality checking FHIR resources by ensuring that (a) the intended semantics of the instances matches the valid range of the corresponding SNOMED CT attribute, and (b) the intended value set is appropriate for the intended semantics of the instances
- Semantic checking of data instances by helping to detect potential inconsistencies caused by overlap between the semantics incorporated in two concept domains
Observationvitalspanel |
Observation | | < 363787002 |Observable entity| |
id | | |
meta | | |
implicitRules | | |
language | | |
text | | |
contained | | |
extension | | |
modifierExtension | | |
identifier | | |
instantiates[x] | | |
basedOn | | |
triggeredBy | | |
id | | |
extension | | |
modifierExtension | | |
observation | | |
type | | |
reason | | |
partOf | | |
status | | < 445584004 |Report by finality status| |
category | | |
category | VSCat | |
id | | |
extension | | |
coding | | |
id | | |
extension | | |
system | | |
version | | |
code | | |
display | | |
userSelected | | |
text | | |
code | | < 363787002 |Observable entity| OR < 386053000 |Evaluation procedure| |
id | | |
extension | | |
coding | | |
coding | VitalsPanelCode | |
id | | |
extension | | |
system | | |
version | | |
code | | |
display | | |
userSelected | | |
text | | |
subject | | |
focus | | |
encounter | | |
effective[x] | | |
issued | | |
performer | | |
dataAbsentReason | | |
interpretation | | < 260245000 |Findings values| |
note | | |
bodySite | | < 123037004 |Body structure| |
bodyStructure | | |
method | | |
specimen | | < 123038009 |Specimen| |
device | | < 49062001 |Device| |
referenceRange | | |
id | | |
extension | | |
modifierExtension | | |
low | | |
high | | |
normalValue | | |
type | | < 260245000 |Findings values| OR
< 365860008 |General clinical state finding|
OR
< 250171008 |Clinical history or observation findings| OR
< 415229000 |Racial group| OR
< 365400002 |Finding of puberty stage| OR
< 443938003 |Procedure carried out on subject| |
appliesTo | | < 260245000 |Findings values| OR
< 365860008 |General clinical state finding|
OR
< 250171008 |Clinical history or observation findings| OR
< 415229000 |Racial group| OR
< 365400002 |Finding of puberty stage| OR
< 443938003 |Procedure carried out on subject| |
age | | |
text | | |
hasMember | | |
derivedFrom | | |
component | | |
id | | |
extension | | |
modifierExtension | | |
code | | < 363787002 |Observable entity| OR
< 386053000 |Evaluation procedure| |
value[x] | | 363714003 |Interprets| < 441742003 |Evaluation finding| |
dataAbsentReason | | |
interpretation | | < 260245000 |Findings values| |
referenceRange | | |
Observationvitalspanel |
Observation | | OBX |
id | | |
meta | | |
implicitRules | | |
language | | |
text | | |
contained | | |
extension | | |
modifierExtension | | |
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 3) some other way to uniquely ID the OBR/ORC + OBX-3 + OBX-4. |
instantiates[x] | | |
basedOn | | ORC |
triggeredBy | | ORC |
id | | |
extension | | |
modifierExtension | | |
observation | | |
type | | |
reason | | |
partOf | | Varies by domain |
status | | OBX-11 |
category | | |
category | VSCat | |
id | | |
extension | | |
coding | | C*E.1-8, C*E.10-22 |
id | | |
extension | | |
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 |
id | | |
extension | | |
coding | | C*E.1-8, C*E.10-22 |
coding | VitalsPanelCode | C*E.1-8, C*E.10-22 |
id | | |
extension | | |
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) |
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' |
dataAbsentReason | | N/A |
interpretation | | OBX-8 |
note | | NTE-3 (partner NTE to OBX, or sometimes another (child?) OBX) |
bodySite | | OBX-20 |
bodyStructure | | |
method | | OBX-17 |
specimen | | SPM segment |
device | | OBX-17 / PRT -10 |
referenceRange | | OBX-7 |
id | | |
extension | | |
modifierExtension | | |
low | | OBX-7 |
high | | OBX-7 |
normalValue | | OBX-7 |
type | | OBX-10 |
appliesTo | | OBX-10 |
age | | |
text | | OBX-7 |
hasMember | | Relationships established by OBX-4 usage |
derivedFrom | | Relationships established by OBX-4 usage |
component | | containment by OBX-4? |
id | | |
extension | | |
modifierExtension | | |
code | | OBX-3 |
value[x] | | OBX-2, OBX-5, OBX-6 |
dataAbsentReason | | N/A |
interpretation | | OBX-8 |
referenceRange | | OBX-7 |
Observationvitalspanel |
Observation | | Entity. Role, or Act |
id | | |
meta | | |
implicitRules | | |
language | | |
text | | Act.text? |
contained | | N/A |
extension | | N/A |
modifierExtension | | N/A |
identifier | | id |
instantiates[x] | | .outboundRelationship[typeCode=DEFN].target |
basedOn | | .inboundRelationship[typeCode=COMP].source[moodCode=EVN] |
triggeredBy | | .inboundRelationship[typeCode=COMP].source[moodCode=EVN] |
id | | n/a |
extension | | n/a |
modifierExtension | | N/A |
observation | | outBoundRelationship |
type | | code |
reason | | annotation |
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 |
category | VSCat | .outboundRelationship[typeCode="COMP].target[classCode="LIST", moodCode="EVN"].code |
id | | n/a |
extension | | n/a |
coding | | 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 | VitalsPanelCode | 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 |
issued | | participation[typeCode=AUT].time |
performer | | participation[typeCode=PRF] |
dataAbsentReason | | value.nullFlavor |
interpretation | | interpretationCode |
note | | subjectOf.observationEvent[code="annotation"].value |
bodySite | | targetSiteCode |
bodyStructure | | targetSiteCode |
method | | methodCode |
specimen | | participation[typeCode=SPC].specimen |
device | | participation[typeCode=DEV] |
referenceRange | | outboundRelationship[typeCode=REFV]/target[classCode=OBS, moodCode=EVN] |
id | | n/a |
extension | | n/a |
modifierExtension | | N/A |
low | | value:IVL_PQ.low |
high | | value:IVL_PQ.high |
normalValue | | value:IVL_PQ.normal |
type | | interpretationCode |
appliesTo | | interpretationCode |
age | | outboundRelationship[typeCode=PRCN].targetObservationCriterion[code="age"].value |
text | | value:ST |
hasMember | | outBoundRelationship |
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] |