Consolidated CDA Release 2.1 StructureDefinition Publication
2.1 - CI Build United States of America flag

Consolidated CDA Release 2.1 StructureDefinition Publication, published by Health Level Seven. This is not an authorized publication; it is the continuous build for version 2.1). This version is based on the current content of https://github.com/HL7/CDA-ccda-2.1-sd/ and changes regularly. See the Directory of published versions

Logical Model: Problem Observation

Official URL: http://hl7.org/cda/us/ccda/StructureDefinition/ProblemObservation Version: 2.1
Draft as of 2023-09-29 Computable Name: ProblemObservation
Other Identifiers: id: urn:hl7ii:2.16.840.1.113883.10.20.22.4.4:2015-08-01

This template reflects a discrete observation about a patient’s problem. Because it is a discrete observation, it will have a statusCode of “completed”. The effectiveTime, also referred to as the “biologically relevant time” is the time at which the observation holds for the patient. For a provider seeing a patient in the clinic today, observing a history of heart attack that occurred five years ago, the effectiveTime is five years ago.

The effectiveTime of the Problem Observation is the definitive indication of whether or not the underlying condition is resolved. If the problem is known to be resolved, then an effectiveTime/high would be present. If the date of resolution is not known, then effectiveTime/high will be present with a nullFlavor of “UNK”.

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

This structure is derived from CDAR2.Observation

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation CDAR2.ObservationXML Namespace: urn:hl7-org:v3
Elements defined in Ancestors: @classCode, @moodCode, @negationInd, realmCode, typeId, templateId, id, code, derivationExpr, text, statusCode, effectiveTime, priorityCode, repeatNumber, languageCode, value, interpretationCode, methodCode, targetSiteCode, subject, specimen, performer, author, informant, participant, entryRelationship, reference, precondition, referenceRange
... classCode 1..1csFixed Value: OBS
... moodCode 1..1csFixed Value: EVN
... negationInd 0..1blThe negationInd is used to indicate the absence of the condition in observation/value. A negationInd of "true" coupled with an observation/value of SNOMED code 64572001 "Disease (disorder)" indicates that the patient has no known conditions.
.... templateId:primary 1..1II
..... root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.22.4.4
..... extension 1..1stRequired Pattern: 2015-08-01
... id 1..*II
... code C1..1CDBinding: Problem Type (SNOMEDCT) (preferred)
1198-32950: If code is selected from ValueSet Problem Type (SNOMEDCT) urn:oid:2.16.840.1.113883.3.88.12.3221.7.2 **DYNAMIC**, then it **SHALL** have at least one [1..*] translation, which **SHOULD** be selected from ValueSet Problem Type (LOINC) urn:oid:2.16.840.1.113762.1.4.1099.28 **DYNAMIC** (CONF:1198-32950) (CONF:1198-32950).
... statusCode 1..1CS
.... code 1..1csFixed Value: completed
... effectiveTime 1..1IVL_TSIf the problem is known to be resolved, but the date of resolution is not known, then the high element **SHALL** be present, and the nullFlavor attribute **SHALL** be set to 'UNK'. Therefore, the existence of a high element within a problem does indicate that the problem has been resolved.
.... low 1..1IVXB_TSThe effectiveTime/low (a.k.a. "onset date") asserts when the condition became biologically active.
.... high 0..1IVXB_TSThe effectiveTime/high (a.k.a. "resolution date") asserts when the condition became biologically resolved.
... value 1..1CDBinding: Problem (preferred)
.... code 0..1csA negationInd of "true" coupled with an observation/value/@code of SNOMED code 64572001 "Disease (disorder)" indicates that the patient has no known conditions.
.... qualifier 0..*CRThe observation/value and all the qualifiers together (often referred to as a post-coordinated expression) make up one concept. Qualifiers constrain the meaning of the primary code, and cannot negate it or change its meaning. Qualifiers can only be used according to well-defined rules of post-coordination and only if the underlying code system defines the use of such qualifiers or if there is a third code system that specifies how other code systems may be combined. For example, SNOMED CT allows constructing concepts as a combination of multiple codes. SNOMED CT defines a concept "pneumonia (disorder)" (233604007) an attribute "finding site" (363698007) and another concept "left lower lobe of lung (body structure)" (41224006). SNOMED CT allows one to combine these codes in a code phrase, as shown in the sample XML.
.... Slices for translation 0..*CDSlice: Unordered, Open by value:code
..... translation:alt 0..*CD
...... code 0..1cs
... author 0..*AuthorParticipationBase for all types and resources
... Slices for entryRelationship 0..*EntryRelationshipSlice: Unordered, Open by profile:observation
.... entryRelationship:age 0..1EntryRelationship
..... typeCode 1..1csFixed Value: SUBJ
..... inversionInd 1..1blFixed Value: true
..... observation 1..1AgeObservationBase for all types and resources
.... entryRelationship:prognosis 0..1EntryRelationship
..... typeCode 1..1csFixed Value: REFR
..... observation 1..1PrognosisObservationBase for all types and resources
.... entryRelationship:priority 0..*EntryRelationship
..... typeCode 1..1csFixed Value: REFR
..... observation 1..1PriorityPreferenceBase for all types and resources
.... entryRelationship:status 0..1EntryRelationship
..... typeCode 1..1csFixed Value: REFR
..... observation 1..1ProblemStatusBase for all types and resources

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Observation.codepreferredProblem Type (SNOMEDCT)
Observation.valuepreferredProblem

Constraints

IdGradePath(s)DetailsRequirements
1198-32950errorObservation.codeIf code is selected from ValueSet Problem Type (SNOMEDCT) urn:oid:2.16.840.1.113883.3.88.12.3221.7.2 **DYNAMIC**, then it **SHALL** have at least one [1..*] translation, which **SHOULD** be selected from ValueSet Problem Type (LOINC) urn:oid:2.16.840.1.113762.1.4.1099.28 **DYNAMIC** (CONF:1198-32950) (CONF:1198-32950).
:
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 1..1CDAR2.ObservationXML Namespace: urn:hl7-org:v3
Elements defined in Ancestors: @classCode, @moodCode, @negationInd, realmCode, typeId, templateId, id, code, derivationExpr, text, statusCode, effectiveTime, priorityCode, repeatNumber, languageCode, value, interpretationCode, methodCode, targetSiteCode, subject, specimen, performer, author, informant, participant, entryRelationship, reference, precondition, referenceRange
Base for all types and resources
... @classCode 1..1csBinding: ActClassObservation (required)
Fixed Value: OBS
... @moodCode 1..1csFixed Value: EVN
... @negationInd 0..1blThe negationInd is used to indicate the absence of the condition in observation/value. A negationInd of "true" coupled with an observation/value of SNOMED code 64572001 "Disease (disorder)" indicates that the patient has no known conditions.
.... templateId:primary 1..1II
..... @root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.22.4.4
..... @extension 1..1stRequired Pattern: 2015-08-01
... id 1..*II
... code C1..1CDBinding: Problem Type (SNOMEDCT) (preferred)
1198-32950: If code is selected from ValueSet Problem Type (SNOMEDCT) urn:oid:2.16.840.1.113883.3.88.12.3221.7.2 **DYNAMIC**, then it **SHALL** have at least one [1..*] translation, which **SHOULD** be selected from ValueSet Problem Type (LOINC) urn:oid:2.16.840.1.113762.1.4.1099.28 **DYNAMIC** (CONF:1198-32950) (CONF:1198-32950).
... statusCode 1..1CSBinding: ActStatus (required)
.... @code 1..1csFixed Value: completed
... effectiveTime 1..1IVL_TSIf the problem is known to be resolved, but the date of resolution is not known, then the high element **SHALL** be present, and the nullFlavor attribute **SHALL** be set to 'UNK'. Therefore, the existence of a high element within a problem does indicate that the problem has been resolved.
.... low 1..1IVXB_TSThe effectiveTime/low (a.k.a. "onset date") asserts when the condition became biologically active.
.... high 0..1IVXB_TSThe effectiveTime/high (a.k.a. "resolution date") asserts when the condition became biologically resolved.
... value 1..1CDBinding: Problem (preferred)
.... @code 0..1csA negationInd of "true" coupled with an observation/value/@code of SNOMED code 64572001 "Disease (disorder)" indicates that the patient has no known conditions.
.... qualifier 0..*CRThe observation/value and all the qualifiers together (often referred to as a post-coordinated expression) make up one concept. Qualifiers constrain the meaning of the primary code, and cannot negate it or change its meaning. Qualifiers can only be used according to well-defined rules of post-coordination and only if the underlying code system defines the use of such qualifiers or if there is a third code system that specifies how other code systems may be combined. For example, SNOMED CT allows constructing concepts as a combination of multiple codes. SNOMED CT defines a concept "pneumonia (disorder)" (233604007) an attribute "finding site" (363698007) and another concept "left lower lobe of lung (body structure)" (41224006). SNOMED CT allows one to combine these codes in a code phrase, as shown in the sample XML.
.... Slices for translation 0..*CDSlice: Unordered, Open by value:code
..... translation:alt 0..*CD
...... @code 0..1cs
... author 0..*AuthorParticipationBase for all types and resources
... Slices for entryRelationship 0..*EntryRelationshipSlice: Unordered, Open by profile:observation
.... entryRelationship:age 0..1EntryRelationship
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: SUBJ
..... @inversionInd 1..1blFixed Value: true
..... observation 1..1AgeObservationBase for all types and resources
.... entryRelationship:prognosis 0..1EntryRelationship
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: REFR
..... observation 1..1PrognosisObservationBase for all types and resources
.... entryRelationship:priority 0..*EntryRelationship
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: REFR
..... observation 1..1PriorityPreferenceBase for all types and resources
.... entryRelationship:status 0..1EntryRelationship
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: REFR
..... observation 1..1ProblemStatusBase for all types and resources

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.classCoderequiredFixed Value: OBS
Observation.codepreferredProblem Type (SNOMEDCT)
Observation.statusCoderequiredActStatus
Observation.valuepreferredProblem
Observation.entryRelationship:age.typeCoderequiredFixed Value: SUBJ
Observation.entryRelationship:prognosis.typeCoderequiredFixed Value: REFR
Observation.entryRelationship:priority.typeCoderequiredFixed Value: REFR
Observation.entryRelationship:status.typeCoderequiredFixed Value: REFR

Constraints

IdGradePath(s)DetailsRequirements
1198-32950errorObservation.codeIf code is selected from ValueSet Problem Type (SNOMEDCT) urn:oid:2.16.840.1.113883.3.88.12.3221.7.2 **DYNAMIC**, then it **SHALL** have at least one [1..*] translation, which **SHOULD** be selected from ValueSet Problem Type (LOINC) urn:oid:2.16.840.1.113762.1.4.1099.28 **DYNAMIC** (CONF:1198-32950) (CONF:1198-32950).
:
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 1..1CDAR2.ObservationXML Namespace: urn:hl7-org:v3
Elements defined in Ancestors: @classCode, @moodCode, @negationInd, realmCode, typeId, templateId, id, code, derivationExpr, text, statusCode, effectiveTime, priorityCode, repeatNumber, languageCode, value, interpretationCode, methodCode, targetSiteCode, subject, specimen, performer, author, informant, participant, entryRelationship, reference, precondition, referenceRange
Base for all types and resources
... @classCode 1..1csBinding: ActClassObservation (required)
Fixed Value: OBS
... @moodCode 1..1csFixed Value: EVN
... @negationInd 0..1blThe negationInd is used to indicate the absence of the condition in observation/value. A negationInd of "true" coupled with an observation/value of SNOMED code 64572001 "Disease (disorder)" indicates that the patient has no known conditions.
... realmCode 0..*CS
... typeId 0..1II
... Slices for templateId 1..*IISlice: Unordered, Open by value:root, value:extension
.... templateId:primary 1..1II
..... @nullFlavor 0..1csBinding: NullFlavor (required)
..... @assigningAuthorityName 0..1st
..... @displayable 0..1bl
..... @root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.22.4.4
..... @extension 1..1stRequired Pattern: 2015-08-01
... id 1..*II
... code C1..1CDBinding: Problem Type (SNOMEDCT) (preferred)
1198-32950: If code is selected from ValueSet Problem Type (SNOMEDCT) urn:oid:2.16.840.1.113883.3.88.12.3221.7.2 **DYNAMIC**, then it **SHALL** have at least one [1..*] translation, which **SHOULD** be selected from ValueSet Problem Type (LOINC) urn:oid:2.16.840.1.113762.1.4.1099.28 **DYNAMIC** (CONF:1198-32950) (CONF:1198-32950).
... derivationExpr 0..1ST
... text 0..1ED
... statusCode 1..1CSBinding: ActStatus (required)
.... @nullFlavor 0..1csBinding: NullFlavor (required)
.... @code 1..1csFixed Value: completed
.... @sdtcValueSet 0..1oidXML Namespace: urn:hl7-org:sdtc
XML: valueSet (urn:hl7-org:sdtc)
.... @sdtcValueSetVersion 0..1stXML Namespace: urn:hl7-org:sdtc
XML: valueSetVersion (urn:hl7-org:sdtc)
... effectiveTime 1..1IVL_TSIf the problem is known to be resolved, but the date of resolution is not known, then the high element **SHALL** be present, and the nullFlavor attribute **SHALL** be set to 'UNK'. Therefore, the existence of a high element within a problem does indicate that the problem has been resolved.
.... @nullFlavor 0..1csBinding: NullFlavor (required)
.... @value 0..1tsDate Format: YYYYMMDDHHMMSS.UUUU[+|-ZZzz]
.... @operator 0..1csBinding: SetOperator (required)
.... low 1..1IVXB_TSThe effectiveTime/low (a.k.a. "onset date") asserts when the condition became biologically active.
.... center 0..1TS
.... width 0..1PQ
.... high 0..1IVXB_TSThe effectiveTime/high (a.k.a. "resolution date") asserts when the condition became biologically resolved.
... priorityCode 0..1CEBinding: ActPriority (extensible)
... repeatNumber 0..1IVL_INT
... languageCode 0..1CSBinding: HumanLanguage (required)
... value 1..1CDBinding: Problem (preferred)
.... @nullFlavor 0..1csBinding: NullFlavor (required)
.... @code 0..1csA negationInd of "true" coupled with an observation/value/@code of SNOMED code 64572001 "Disease (disorder)" indicates that the patient has no known conditions.
.... @codeSystem 0..1oid, uuid, ruid
.... @codeSystemName 0..1st
.... @codeSystemVersion 0..1st
.... @displayName 0..1st
.... @sdtcValueSet 0..1oidXML Namespace: urn:hl7-org:sdtc
XML: valueSet (urn:hl7-org:sdtc)
.... @sdtcValueSetVersion 0..1stXML Namespace: urn:hl7-org:sdtc
XML: valueSetVersion (urn:hl7-org:sdtc)
.... originalText 0..1ED
.... qualifier 0..*CRThe observation/value and all the qualifiers together (often referred to as a post-coordinated expression) make up one concept. Qualifiers constrain the meaning of the primary code, and cannot negate it or change its meaning. Qualifiers can only be used according to well-defined rules of post-coordination and only if the underlying code system defines the use of such qualifiers or if there is a third code system that specifies how other code systems may be combined. For example, SNOMED CT allows constructing concepts as a combination of multiple codes. SNOMED CT defines a concept "pneumonia (disorder)" (233604007) an attribute "finding site" (363698007) and another concept "left lower lobe of lung (body structure)" (41224006). SNOMED CT allows one to combine these codes in a code phrase, as shown in the sample XML.
.... Slices for translation 0..*CDSlice: Unordered, Open by value:code
..... translation:alt 0..*CD
...... @nullFlavor 0..1csBinding: NullFlavor (required)
...... @code 0..1cs
...... @codeSystem 0..1oid, uuid, ruid
...... @codeSystemName 0..1st
...... @codeSystemVersion 0..1st
...... @displayName 0..1st
...... @sdtcValueSet 0..1oidXML Namespace: urn:hl7-org:sdtc
XML: valueSet (urn:hl7-org:sdtc)
...... @sdtcValueSetVersion 0..1stXML Namespace: urn:hl7-org:sdtc
XML: valueSetVersion (urn:hl7-org:sdtc)
...... originalText 0..1ED
...... qualifier 0..*CR
...... translation 0..*CD
... interpretationCode 0..*CEBinding: ObservationInterpretation (required)
... methodCode 0..*CEBinding: ObservationMethod (extensible)
... targetSiteCode 0..*CD
... subject 0..1Subject
... specimen 0..*Specimen
... performer 0..*Performer2
... author 0..*AuthorParticipationBase for all types and resources
... informant 0..*Informant
... participant 0..*Participant2
... Slices for entryRelationship 0..*EntryRelationshipSlice: Unordered, Open by profile:observation
.... entryRelationship:age 0..1EntryRelationship
..... @nullFlavor 0..1csBinding: NullFlavor (required)
..... realmCode 0..*CS
..... typeId 0..1II
..... templateId 0..*II
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: SUBJ
..... @inversionInd 1..1blFixed Value: true
..... @contextConductionInd 0..1bl
..... @negationInd 0..1bl
..... sequenceNumber 0..1INT
..... seperatableInd 0..1BL
..... act 0..1Act
..... encounter 0..1Encounter
..... observation 1..1AgeObservationBase for all types and resources
..... observationMedia 0..1ObservationMedia
..... organizer 0..1Organizer
..... procedure 0..1Procedure
..... regionOfInterest 0..1RegionOfInterest
..... substanceAdministration 0..1SubstanceAdministration
..... supply 0..1Supply
.... entryRelationship:prognosis 0..1EntryRelationship
..... @nullFlavor 0..1csBinding: NullFlavor (required)
..... realmCode 0..*CS
..... typeId 0..1II
..... templateId 0..*II
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: REFR
..... @inversionInd 0..1bl
..... @contextConductionInd 0..1bl
..... @negationInd 0..1bl
..... sequenceNumber 0..1INT
..... seperatableInd 0..1BL
..... act 0..1Act
..... encounter 0..1Encounter
..... observation 1..1PrognosisObservationBase for all types and resources
..... observationMedia 0..1ObservationMedia
..... organizer 0..1Organizer
..... procedure 0..1Procedure
..... regionOfInterest 0..1RegionOfInterest
..... substanceAdministration 0..1SubstanceAdministration
..... supply 0..1Supply
.... entryRelationship:priority 0..*EntryRelationship
..... @nullFlavor 0..1csBinding: NullFlavor (required)
..... realmCode 0..*CS
..... typeId 0..1II
..... templateId 0..*II
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: REFR
..... @inversionInd 0..1bl
..... @contextConductionInd 0..1bl
..... @negationInd 0..1bl
..... sequenceNumber 0..1INT
..... seperatableInd 0..1BL
..... act 0..1Act
..... encounter 0..1Encounter
..... observation 1..1PriorityPreferenceBase for all types and resources
..... observationMedia 0..1ObservationMedia
..... organizer 0..1Organizer
..... procedure 0..1Procedure
..... regionOfInterest 0..1RegionOfInterest
..... substanceAdministration 0..1SubstanceAdministration
..... supply 0..1Supply
.... entryRelationship:status 0..1EntryRelationship
..... @nullFlavor 0..1csBinding: NullFlavor (required)
..... realmCode 0..*CS
..... typeId 0..1II
..... templateId 0..*II
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: REFR
..... @inversionInd 0..1bl
..... @contextConductionInd 0..1bl
..... @negationInd 0..1bl
..... sequenceNumber 0..1INT
..... seperatableInd 0..1BL
..... act 0..1Act
..... encounter 0..1Encounter
..... observation 1..1ProblemStatusBase for all types and resources
..... observationMedia 0..1ObservationMedia
..... organizer 0..1Organizer
..... procedure 0..1Procedure
..... regionOfInterest 0..1RegionOfInterest
..... substanceAdministration 0..1SubstanceAdministration
..... supply 0..1Supply
... reference 0..*Reference
... precondition 0..*Precondition
... referenceRange 0..*InfrastructureRoot
.... @nullFlavor 0..1csBinding: NullFlavor (required)
.... realmCode 0..*CS
.... typeId 0..1II
.... templateId 0..*II
.... @typeCode 0..1csBinding: ActRelationshipPertains (required)
Fixed Value: REFV
.... observationRange 1..1ObservationRange

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.classCoderequiredFixed Value: OBS
Observation.templateId:primary.nullFlavorrequiredNullFlavor
Observation.codepreferredProblem Type (SNOMEDCT)
Observation.statusCoderequiredActStatus
Observation.statusCode.nullFlavorrequiredNullFlavor
Observation.effectiveTime.nullFlavorrequiredNullFlavor
Observation.effectiveTime.operatorrequiredSetOperator
Observation.priorityCodeextensibleActPriority
Observation.languageCoderequiredHumanLanguage (a valid code from http://terminology.hl7.org/CodeSystem/ietf3066)
Observation.valuepreferredProblem
Observation.value.nullFlavorrequiredNullFlavor
Observation.value.translation:alt.nullFlavorrequiredNullFlavor
Observation.interpretationCoderequiredObservationInterpretation
Observation.methodCodeextensibleObservationMethod
Observation.entryRelationship:age.nullFlavorrequiredNullFlavor
Observation.entryRelationship:age.typeCoderequiredFixed Value: SUBJ
Observation.entryRelationship:prognosis.nullFlavorrequiredNullFlavor
Observation.entryRelationship:prognosis.typeCoderequiredFixed Value: REFR
Observation.entryRelationship:priority.nullFlavorrequiredNullFlavor
Observation.entryRelationship:priority.typeCoderequiredFixed Value: REFR
Observation.entryRelationship:status.nullFlavorrequiredNullFlavor
Observation.entryRelationship:status.typeCoderequiredFixed Value: REFR
Observation.referenceRange.nullFlavorrequiredNullFlavor
Observation.referenceRange.typeCoderequiredFixed Value: REFV

Constraints

IdGradePath(s)DetailsRequirements
1198-32950errorObservation.codeIf code is selected from ValueSet Problem Type (SNOMEDCT) urn:oid:2.16.840.1.113883.3.88.12.3221.7.2 **DYNAMIC**, then it **SHALL** have at least one [1..*] translation, which **SHOULD** be selected from ValueSet Problem Type (LOINC) urn:oid:2.16.840.1.113762.1.4.1099.28 **DYNAMIC** (CONF:1198-32950) (CONF:1198-32950).
:
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())

This structure is derived from CDAR2.Observation

Summary

Mandatory: 10 elements (5 nested mandatory elements)
Fixed Value: 8 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Observation.templateId is sliced based on the values of value:root, value:extension
  • The element Observation.value.translation is sliced based on the value of value:code
  • The element Observation.entryRelationship is sliced based on the value of profile:observation

Differential View

This structure is derived from CDAR2.Observation

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation CDAR2.ObservationXML Namespace: urn:hl7-org:v3
Elements defined in Ancestors: @classCode, @moodCode, @negationInd, realmCode, typeId, templateId, id, code, derivationExpr, text, statusCode, effectiveTime, priorityCode, repeatNumber, languageCode, value, interpretationCode, methodCode, targetSiteCode, subject, specimen, performer, author, informant, participant, entryRelationship, reference, precondition, referenceRange
... classCode 1..1csFixed Value: OBS
... moodCode 1..1csFixed Value: EVN
... negationInd 0..1blThe negationInd is used to indicate the absence of the condition in observation/value. A negationInd of "true" coupled with an observation/value of SNOMED code 64572001 "Disease (disorder)" indicates that the patient has no known conditions.
.... templateId:primary 1..1II
..... root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.22.4.4
..... extension 1..1stRequired Pattern: 2015-08-01
... id 1..*II
... code C1..1CDBinding: Problem Type (SNOMEDCT) (preferred)
1198-32950: If code is selected from ValueSet Problem Type (SNOMEDCT) urn:oid:2.16.840.1.113883.3.88.12.3221.7.2 **DYNAMIC**, then it **SHALL** have at least one [1..*] translation, which **SHOULD** be selected from ValueSet Problem Type (LOINC) urn:oid:2.16.840.1.113762.1.4.1099.28 **DYNAMIC** (CONF:1198-32950) (CONF:1198-32950).
... statusCode 1..1CS
.... code 1..1csFixed Value: completed
... effectiveTime 1..1IVL_TSIf the problem is known to be resolved, but the date of resolution is not known, then the high element **SHALL** be present, and the nullFlavor attribute **SHALL** be set to 'UNK'. Therefore, the existence of a high element within a problem does indicate that the problem has been resolved.
.... low 1..1IVXB_TSThe effectiveTime/low (a.k.a. "onset date") asserts when the condition became biologically active.
.... high 0..1IVXB_TSThe effectiveTime/high (a.k.a. "resolution date") asserts when the condition became biologically resolved.
... value 1..1CDBinding: Problem (preferred)
.... code 0..1csA negationInd of "true" coupled with an observation/value/@code of SNOMED code 64572001 "Disease (disorder)" indicates that the patient has no known conditions.
.... qualifier 0..*CRThe observation/value and all the qualifiers together (often referred to as a post-coordinated expression) make up one concept. Qualifiers constrain the meaning of the primary code, and cannot negate it or change its meaning. Qualifiers can only be used according to well-defined rules of post-coordination and only if the underlying code system defines the use of such qualifiers or if there is a third code system that specifies how other code systems may be combined. For example, SNOMED CT allows constructing concepts as a combination of multiple codes. SNOMED CT defines a concept "pneumonia (disorder)" (233604007) an attribute "finding site" (363698007) and another concept "left lower lobe of lung (body structure)" (41224006). SNOMED CT allows one to combine these codes in a code phrase, as shown in the sample XML.
.... Slices for translation 0..*CDSlice: Unordered, Open by value:code
..... translation:alt 0..*CD
...... code 0..1cs
... author 0..*AuthorParticipationBase for all types and resources
... Slices for entryRelationship 0..*EntryRelationshipSlice: Unordered, Open by profile:observation
.... entryRelationship:age 0..1EntryRelationship
..... typeCode 1..1csFixed Value: SUBJ
..... inversionInd 1..1blFixed Value: true
..... observation 1..1AgeObservationBase for all types and resources
.... entryRelationship:prognosis 0..1EntryRelationship
..... typeCode 1..1csFixed Value: REFR
..... observation 1..1PrognosisObservationBase for all types and resources
.... entryRelationship:priority 0..*EntryRelationship
..... typeCode 1..1csFixed Value: REFR
..... observation 1..1PriorityPreferenceBase for all types and resources
.... entryRelationship:status 0..1EntryRelationship
..... typeCode 1..1csFixed Value: REFR
..... observation 1..1ProblemStatusBase for all types and resources

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Observation.codepreferredProblem Type (SNOMEDCT)
Observation.valuepreferredProblem

Constraints

IdGradePath(s)DetailsRequirements
1198-32950errorObservation.codeIf code is selected from ValueSet Problem Type (SNOMEDCT) urn:oid:2.16.840.1.113883.3.88.12.3221.7.2 **DYNAMIC**, then it **SHALL** have at least one [1..*] translation, which **SHOULD** be selected from ValueSet Problem Type (LOINC) urn:oid:2.16.840.1.113762.1.4.1099.28 **DYNAMIC** (CONF:1198-32950) (CONF:1198-32950).
:

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 1..1CDAR2.ObservationXML Namespace: urn:hl7-org:v3
Elements defined in Ancestors: @classCode, @moodCode, @negationInd, realmCode, typeId, templateId, id, code, derivationExpr, text, statusCode, effectiveTime, priorityCode, repeatNumber, languageCode, value, interpretationCode, methodCode, targetSiteCode, subject, specimen, performer, author, informant, participant, entryRelationship, reference, precondition, referenceRange
Base for all types and resources
... @classCode 1..1csBinding: ActClassObservation (required)
Fixed Value: OBS
... @moodCode 1..1csFixed Value: EVN
... @negationInd 0..1blThe negationInd is used to indicate the absence of the condition in observation/value. A negationInd of "true" coupled with an observation/value of SNOMED code 64572001 "Disease (disorder)" indicates that the patient has no known conditions.
.... templateId:primary 1..1II
..... @root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.22.4.4
..... @extension 1..1stRequired Pattern: 2015-08-01
... id 1..*II
... code C1..1CDBinding: Problem Type (SNOMEDCT) (preferred)
1198-32950: If code is selected from ValueSet Problem Type (SNOMEDCT) urn:oid:2.16.840.1.113883.3.88.12.3221.7.2 **DYNAMIC**, then it **SHALL** have at least one [1..*] translation, which **SHOULD** be selected from ValueSet Problem Type (LOINC) urn:oid:2.16.840.1.113762.1.4.1099.28 **DYNAMIC** (CONF:1198-32950) (CONF:1198-32950).
... statusCode 1..1CSBinding: ActStatus (required)
.... @code 1..1csFixed Value: completed
... effectiveTime 1..1IVL_TSIf the problem is known to be resolved, but the date of resolution is not known, then the high element **SHALL** be present, and the nullFlavor attribute **SHALL** be set to 'UNK'. Therefore, the existence of a high element within a problem does indicate that the problem has been resolved.
.... low 1..1IVXB_TSThe effectiveTime/low (a.k.a. "onset date") asserts when the condition became biologically active.
.... high 0..1IVXB_TSThe effectiveTime/high (a.k.a. "resolution date") asserts when the condition became biologically resolved.
... value 1..1CDBinding: Problem (preferred)
.... @code 0..1csA negationInd of "true" coupled with an observation/value/@code of SNOMED code 64572001 "Disease (disorder)" indicates that the patient has no known conditions.
.... qualifier 0..*CRThe observation/value and all the qualifiers together (often referred to as a post-coordinated expression) make up one concept. Qualifiers constrain the meaning of the primary code, and cannot negate it or change its meaning. Qualifiers can only be used according to well-defined rules of post-coordination and only if the underlying code system defines the use of such qualifiers or if there is a third code system that specifies how other code systems may be combined. For example, SNOMED CT allows constructing concepts as a combination of multiple codes. SNOMED CT defines a concept "pneumonia (disorder)" (233604007) an attribute "finding site" (363698007) and another concept "left lower lobe of lung (body structure)" (41224006). SNOMED CT allows one to combine these codes in a code phrase, as shown in the sample XML.
.... Slices for translation 0..*CDSlice: Unordered, Open by value:code
..... translation:alt 0..*CD
...... @code 0..1cs
... author 0..*AuthorParticipationBase for all types and resources
... Slices for entryRelationship 0..*EntryRelationshipSlice: Unordered, Open by profile:observation
.... entryRelationship:age 0..1EntryRelationship
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: SUBJ
..... @inversionInd 1..1blFixed Value: true
..... observation 1..1AgeObservationBase for all types and resources
.... entryRelationship:prognosis 0..1EntryRelationship
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: REFR
..... observation 1..1PrognosisObservationBase for all types and resources
.... entryRelationship:priority 0..*EntryRelationship
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: REFR
..... observation 1..1PriorityPreferenceBase for all types and resources
.... entryRelationship:status 0..1EntryRelationship
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: REFR
..... observation 1..1ProblemStatusBase for all types and resources

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.classCoderequiredFixed Value: OBS
Observation.codepreferredProblem Type (SNOMEDCT)
Observation.statusCoderequiredActStatus
Observation.valuepreferredProblem
Observation.entryRelationship:age.typeCoderequiredFixed Value: SUBJ
Observation.entryRelationship:prognosis.typeCoderequiredFixed Value: REFR
Observation.entryRelationship:priority.typeCoderequiredFixed Value: REFR
Observation.entryRelationship:status.typeCoderequiredFixed Value: REFR

Constraints

IdGradePath(s)DetailsRequirements
1198-32950errorObservation.codeIf code is selected from ValueSet Problem Type (SNOMEDCT) urn:oid:2.16.840.1.113883.3.88.12.3221.7.2 **DYNAMIC**, then it **SHALL** have at least one [1..*] translation, which **SHOULD** be selected from ValueSet Problem Type (LOINC) urn:oid:2.16.840.1.113762.1.4.1099.28 **DYNAMIC** (CONF:1198-32950) (CONF:1198-32950).
:
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 1..1CDAR2.ObservationXML Namespace: urn:hl7-org:v3
Elements defined in Ancestors: @classCode, @moodCode, @negationInd, realmCode, typeId, templateId, id, code, derivationExpr, text, statusCode, effectiveTime, priorityCode, repeatNumber, languageCode, value, interpretationCode, methodCode, targetSiteCode, subject, specimen, performer, author, informant, participant, entryRelationship, reference, precondition, referenceRange
Base for all types and resources
... @classCode 1..1csBinding: ActClassObservation (required)
Fixed Value: OBS
... @moodCode 1..1csFixed Value: EVN
... @negationInd 0..1blThe negationInd is used to indicate the absence of the condition in observation/value. A negationInd of "true" coupled with an observation/value of SNOMED code 64572001 "Disease (disorder)" indicates that the patient has no known conditions.
... realmCode 0..*CS
... typeId 0..1II
... Slices for templateId 1..*IISlice: Unordered, Open by value:root, value:extension
.... templateId:primary 1..1II
..... @nullFlavor 0..1csBinding: NullFlavor (required)
..... @assigningAuthorityName 0..1st
..... @displayable 0..1bl
..... @root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.22.4.4
..... @extension 1..1stRequired Pattern: 2015-08-01
... id 1..*II
... code C1..1CDBinding: Problem Type (SNOMEDCT) (preferred)
1198-32950: If code is selected from ValueSet Problem Type (SNOMEDCT) urn:oid:2.16.840.1.113883.3.88.12.3221.7.2 **DYNAMIC**, then it **SHALL** have at least one [1..*] translation, which **SHOULD** be selected from ValueSet Problem Type (LOINC) urn:oid:2.16.840.1.113762.1.4.1099.28 **DYNAMIC** (CONF:1198-32950) (CONF:1198-32950).
... derivationExpr 0..1ST
... text 0..1ED
... statusCode 1..1CSBinding: ActStatus (required)
.... @nullFlavor 0..1csBinding: NullFlavor (required)
.... @code 1..1csFixed Value: completed
.... @sdtcValueSet 0..1oidXML Namespace: urn:hl7-org:sdtc
XML: valueSet (urn:hl7-org:sdtc)
.... @sdtcValueSetVersion 0..1stXML Namespace: urn:hl7-org:sdtc
XML: valueSetVersion (urn:hl7-org:sdtc)
... effectiveTime 1..1IVL_TSIf the problem is known to be resolved, but the date of resolution is not known, then the high element **SHALL** be present, and the nullFlavor attribute **SHALL** be set to 'UNK'. Therefore, the existence of a high element within a problem does indicate that the problem has been resolved.
.... @nullFlavor 0..1csBinding: NullFlavor (required)
.... @value 0..1tsDate Format: YYYYMMDDHHMMSS.UUUU[+|-ZZzz]
.... @operator 0..1csBinding: SetOperator (required)
.... low 1..1IVXB_TSThe effectiveTime/low (a.k.a. "onset date") asserts when the condition became biologically active.
.... center 0..1TS
.... width 0..1PQ
.... high 0..1IVXB_TSThe effectiveTime/high (a.k.a. "resolution date") asserts when the condition became biologically resolved.
... priorityCode 0..1CEBinding: ActPriority (extensible)
... repeatNumber 0..1IVL_INT
... languageCode 0..1CSBinding: HumanLanguage (required)
... value 1..1CDBinding: Problem (preferred)
.... @nullFlavor 0..1csBinding: NullFlavor (required)
.... @code 0..1csA negationInd of "true" coupled with an observation/value/@code of SNOMED code 64572001 "Disease (disorder)" indicates that the patient has no known conditions.
.... @codeSystem 0..1oid, uuid, ruid
.... @codeSystemName 0..1st
.... @codeSystemVersion 0..1st
.... @displayName 0..1st
.... @sdtcValueSet 0..1oidXML Namespace: urn:hl7-org:sdtc
XML: valueSet (urn:hl7-org:sdtc)
.... @sdtcValueSetVersion 0..1stXML Namespace: urn:hl7-org:sdtc
XML: valueSetVersion (urn:hl7-org:sdtc)
.... originalText 0..1ED
.... qualifier 0..*CRThe observation/value and all the qualifiers together (often referred to as a post-coordinated expression) make up one concept. Qualifiers constrain the meaning of the primary code, and cannot negate it or change its meaning. Qualifiers can only be used according to well-defined rules of post-coordination and only if the underlying code system defines the use of such qualifiers or if there is a third code system that specifies how other code systems may be combined. For example, SNOMED CT allows constructing concepts as a combination of multiple codes. SNOMED CT defines a concept "pneumonia (disorder)" (233604007) an attribute "finding site" (363698007) and another concept "left lower lobe of lung (body structure)" (41224006). SNOMED CT allows one to combine these codes in a code phrase, as shown in the sample XML.
.... Slices for translation 0..*CDSlice: Unordered, Open by value:code
..... translation:alt 0..*CD
...... @nullFlavor 0..1csBinding: NullFlavor (required)
...... @code 0..1cs
...... @codeSystem 0..1oid, uuid, ruid
...... @codeSystemName 0..1st
...... @codeSystemVersion 0..1st
...... @displayName 0..1st
...... @sdtcValueSet 0..1oidXML Namespace: urn:hl7-org:sdtc
XML: valueSet (urn:hl7-org:sdtc)
...... @sdtcValueSetVersion 0..1stXML Namespace: urn:hl7-org:sdtc
XML: valueSetVersion (urn:hl7-org:sdtc)
...... originalText 0..1ED
...... qualifier 0..*CR
...... translation 0..*CD
... interpretationCode 0..*CEBinding: ObservationInterpretation (required)
... methodCode 0..*CEBinding: ObservationMethod (extensible)
... targetSiteCode 0..*CD
... subject 0..1Subject
... specimen 0..*Specimen
... performer 0..*Performer2
... author 0..*AuthorParticipationBase for all types and resources
... informant 0..*Informant
... participant 0..*Participant2
... Slices for entryRelationship 0..*EntryRelationshipSlice: Unordered, Open by profile:observation
.... entryRelationship:age 0..1EntryRelationship
..... @nullFlavor 0..1csBinding: NullFlavor (required)
..... realmCode 0..*CS
..... typeId 0..1II
..... templateId 0..*II
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: SUBJ
..... @inversionInd 1..1blFixed Value: true
..... @contextConductionInd 0..1bl
..... @negationInd 0..1bl
..... sequenceNumber 0..1INT
..... seperatableInd 0..1BL
..... act 0..1Act
..... encounter 0..1Encounter
..... observation 1..1AgeObservationBase for all types and resources
..... observationMedia 0..1ObservationMedia
..... organizer 0..1Organizer
..... procedure 0..1Procedure
..... regionOfInterest 0..1RegionOfInterest
..... substanceAdministration 0..1SubstanceAdministration
..... supply 0..1Supply
.... entryRelationship:prognosis 0..1EntryRelationship
..... @nullFlavor 0..1csBinding: NullFlavor (required)
..... realmCode 0..*CS
..... typeId 0..1II
..... templateId 0..*II
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: REFR
..... @inversionInd 0..1bl
..... @contextConductionInd 0..1bl
..... @negationInd 0..1bl
..... sequenceNumber 0..1INT
..... seperatableInd 0..1BL
..... act 0..1Act
..... encounter 0..1Encounter
..... observation 1..1PrognosisObservationBase for all types and resources
..... observationMedia 0..1ObservationMedia
..... organizer 0..1Organizer
..... procedure 0..1Procedure
..... regionOfInterest 0..1RegionOfInterest
..... substanceAdministration 0..1SubstanceAdministration
..... supply 0..1Supply
.... entryRelationship:priority 0..*EntryRelationship
..... @nullFlavor 0..1csBinding: NullFlavor (required)
..... realmCode 0..*CS
..... typeId 0..1II
..... templateId 0..*II
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: REFR
..... @inversionInd 0..1bl
..... @contextConductionInd 0..1bl
..... @negationInd 0..1bl
..... sequenceNumber 0..1INT
..... seperatableInd 0..1BL
..... act 0..1Act
..... encounter 0..1Encounter
..... observation 1..1PriorityPreferenceBase for all types and resources
..... observationMedia 0..1ObservationMedia
..... organizer 0..1Organizer
..... procedure 0..1Procedure
..... regionOfInterest 0..1RegionOfInterest
..... substanceAdministration 0..1SubstanceAdministration
..... supply 0..1Supply
.... entryRelationship:status 0..1EntryRelationship
..... @nullFlavor 0..1csBinding: NullFlavor (required)
..... realmCode 0..*CS
..... typeId 0..1II
..... templateId 0..*II
..... @typeCode 1..1csBinding: x_ActRelationshipEntryRelationship (required)
Fixed Value: REFR
..... @inversionInd 0..1bl
..... @contextConductionInd 0..1bl
..... @negationInd 0..1bl
..... sequenceNumber 0..1INT
..... seperatableInd 0..1BL
..... act 0..1Act
..... encounter 0..1Encounter
..... observation 1..1ProblemStatusBase for all types and resources
..... observationMedia 0..1ObservationMedia
..... organizer 0..1Organizer
..... procedure 0..1Procedure
..... regionOfInterest 0..1RegionOfInterest
..... substanceAdministration 0..1SubstanceAdministration
..... supply 0..1Supply
... reference 0..*Reference
... precondition 0..*Precondition
... referenceRange 0..*InfrastructureRoot
.... @nullFlavor 0..1csBinding: NullFlavor (required)
.... realmCode 0..*CS
.... typeId 0..1II
.... templateId 0..*II
.... @typeCode 0..1csBinding: ActRelationshipPertains (required)
Fixed Value: REFV
.... observationRange 1..1ObservationRange

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.classCoderequiredFixed Value: OBS
Observation.templateId:primary.nullFlavorrequiredNullFlavor
Observation.codepreferredProblem Type (SNOMEDCT)
Observation.statusCoderequiredActStatus
Observation.statusCode.nullFlavorrequiredNullFlavor
Observation.effectiveTime.nullFlavorrequiredNullFlavor
Observation.effectiveTime.operatorrequiredSetOperator
Observation.priorityCodeextensibleActPriority
Observation.languageCoderequiredHumanLanguage (a valid code from http://terminology.hl7.org/CodeSystem/ietf3066)
Observation.valuepreferredProblem
Observation.value.nullFlavorrequiredNullFlavor
Observation.value.translation:alt.nullFlavorrequiredNullFlavor
Observation.interpretationCoderequiredObservationInterpretation
Observation.methodCodeextensibleObservationMethod
Observation.entryRelationship:age.nullFlavorrequiredNullFlavor
Observation.entryRelationship:age.typeCoderequiredFixed Value: SUBJ
Observation.entryRelationship:prognosis.nullFlavorrequiredNullFlavor
Observation.entryRelationship:prognosis.typeCoderequiredFixed Value: REFR
Observation.entryRelationship:priority.nullFlavorrequiredNullFlavor
Observation.entryRelationship:priority.typeCoderequiredFixed Value: REFR
Observation.entryRelationship:status.nullFlavorrequiredNullFlavor
Observation.entryRelationship:status.typeCoderequiredFixed Value: REFR
Observation.referenceRange.nullFlavorrequiredNullFlavor
Observation.referenceRange.typeCoderequiredFixed Value: REFV

Constraints

IdGradePath(s)DetailsRequirements
1198-32950errorObservation.codeIf code is selected from ValueSet Problem Type (SNOMEDCT) urn:oid:2.16.840.1.113883.3.88.12.3221.7.2 **DYNAMIC**, then it **SHALL** have at least one [1..*] translation, which **SHOULD** be selected from ValueSet Problem Type (LOINC) urn:oid:2.16.840.1.113762.1.4.1099.28 **DYNAMIC** (CONF:1198-32950) (CONF:1198-32950).
:
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())

This structure is derived from CDAR2.Observation

Summary

Mandatory: 10 elements (5 nested mandatory elements)
Fixed Value: 8 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Observation.templateId is sliced based on the values of value:root, value:extension
  • The element Observation.value.translation is sliced based on the value of value:code
  • The element Observation.entryRelationship is sliced based on the value of profile:observation

 

Other representations of profile: CSV, Excel