Consolidated CDA Release 2.1 StructureDefinition Prototype Publication
2.1.0-draft1 - CI Build United States of America

This page is part of the CCDA: Consolidated CDA Release (v2.1.0-draft1: CCDA 2.1 Draft) based on FHIR v5.0.0. . For a full list of available versions, see the Directory of published versions

Resource Profile: Problem Observation

Official URL: http://hl7.org/cda/us/ccda/StructureDefinition/2.16.840.1.113883.10.20.22.4.4 Version: 2.1.0-draft1
Active as of 2023-01-16 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 1..1CDAR2.ObservationBase for all types and resources
... classCode 1..1codeRequired Pattern: OBS
... moodCode 1..1codeRequired Pattern: EVN
... negationInd 0..1booleanThe 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..1stringRequired Pattern: 2.16.840.1.113883.10.20.22.4.4
..... extension 1..1stringRequired 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..1stringRequired Pattern: 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..1TSThe effectiveTime/low (a.k.a. "onset date") asserts when the condition became biologically active.
.... high 0..1TSThe effectiveTime/high (a.k.a. "resolution date") asserts when the condition became biologically resolved.
... value 1..1CDBinding: Problem (preferred)
.... code 0..1stringA 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
..... translation:alt 0..*CD
...... code 0..1string
... author 0..*AuthorParticipationBase for all types and resources
... Slices for entryRelationship 0..*ElementSlice: Unordered, Open by profile:observation
.... entryRelationship:age 0..1Element
..... typeCode 1..1codeRequired Pattern: SUBJ
..... inversionInd 1..1booleanRequired Pattern: true
..... observation 1..1AgeObservationBase for all types and resources
.... entryRelationship:prognosis 0..1Element
..... typeCode 1..1codeRequired Pattern: REFR
..... observation 1..1PrognosisObservationBase for all types and resources
.... entryRelationship:priority 0..*Element
..... typeCode 1..1codeRequired Pattern: REFR
..... observation 1..1PriorityPreferenceBase for all types and resources
.... entryRelationship:status 0..1Element
..... typeCode 1..1codeRequired Pattern: 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.ObservationBase for all types and resources
... classCode 1..1codeBinding: ActClassObservation (required)
Required Pattern: OBS
... moodCode 1..1codeRequired Pattern: EVN
... negationInd 0..1booleanThe 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..1stringRequired Pattern: 2.16.840.1.113883.10.20.22.4.4
..... extension 1..1stringRequired 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..1stringRequired Pattern: 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..1TSThe effectiveTime/low (a.k.a. "onset date") asserts when the condition became biologically active.
.... high 0..1TSThe effectiveTime/high (a.k.a. "resolution date") asserts when the condition became biologically resolved.
... value 1..1CDBinding: Problem (preferred)
.... code 0..1stringA 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
..... translation:alt 0..*CD
...... code 0..1string
... author 0..*AuthorParticipationBase for all types and resources
... Slices for entryRelationship C0..*ElementSlice: Unordered, Open by profile:observation
.... entryRelationship:All Slices Content/Rules for all slices
..... typeCode 1..1code
..... contextConductionInd 1..1boolean
.... entryRelationship:age C0..1Element
..... typeCode 1..1codeRequired Pattern: SUBJ
..... inversionInd 1..1booleanRequired Pattern: true
..... contextConductionInd 1..1boolean
..... observation 1..1AgeObservationBase for all types and resources
.... entryRelationship:prognosis C0..1Element
..... typeCode 1..1codeRequired Pattern: REFR
..... contextConductionInd 1..1boolean
..... observation 1..1PrognosisObservationBase for all types and resources
.... entryRelationship:priority C0..*Element
..... typeCode 1..1codeRequired Pattern: REFR
..... contextConductionInd 1..1boolean
..... observation 1..1PriorityPreferenceBase for all types and resources
.... entryRelationship:status C0..1Element
..... typeCode 1..1codeRequired Pattern: REFR
..... contextConductionInd 1..1boolean
..... observation 1..1ProblemStatusBase for all types and resources

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.classCoderequiredPattern: OBS
Observation.codepreferredProblem Type (SNOMEDCT)
Observation.statusCoderequiredActStatus
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).
:
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
obs-er-1errorObservation.entryRelationship, Observation.entryRelationship:age, Observation.entryRelationship:prognosis, Observation.entryRelationship:priority, Observation.entryRelationship:statusOnly one of observation, regionOfInterest, observationMedia, substanceAdministration, supply, procedure, encounter, organizer, and act
: (observation | regionOfInterest | observationMedia | substanceAdministration | supply | procedure | encounter | organizer | act).count() = 1
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 1..1CDAR2.ObservationBase for all types and resources
... classCode 1..1codeBinding: ActClassObservation (required)
Required Pattern: OBS
... moodCode 1..1codeRequired Pattern: EVN
... negationInd 0..1booleanThe 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 0..*IISlice: Unordered, Open by value:root, value:extension
.... templateId:primary 1..1II
..... nullFlavor 0..1codeBinding: NullFlavor (required)
..... assigningAuthorityName 0..1string
..... displayable 0..1boolean
..... root 1..1stringRequired Pattern: 2.16.840.1.113883.10.20.22.4.4
..... extension 1..1stringRequired 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..1ED
... text 0..1ED
... statusCode 1..1CSBinding: ActStatus (required)
.... nullFlavor 0..1codeBinding: NullFlavor (required)
.... code 1..1stringRequired Pattern: completed
.... sdtcValueSet 0..1stringXML: valueSet (urn:hl7-org:sdtc)
.... sdtcValueSetVersion 0..1stringXML: 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..1codeBinding: NullFlavor (required)
.... value 0..1dateTime
.... inclusive 0..1boolean
.... operator 0..1code
.... low 1..1TSThe effectiveTime/low (a.k.a. "onset date") asserts when the condition became biologically active.
.... high 0..1TSThe effectiveTime/high (a.k.a. "resolution date") asserts when the condition became biologically resolved.
.... width 0..1PQ
.... center 0..1TS
... priorityCode 0..1CEBinding: ActPriority (extensible)
... repeatNumber 0..1IVL_INT
... languageCode 0..1CSBinding: HumanLanguage (required)
... value 1..1CDBinding: Problem (preferred)
.... nullFlavor 0..1codeBinding: NullFlavor (required)
.... code 0..1stringA 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..1string
.... codeSystemName 0..1string
.... codeSystemVersion 0..1string
.... displayName 0..1string
.... sdtcValueSet 0..1stringXML: valueSet (urn:hl7-org:sdtc)
.... sdtcValueSetVersion 0..1stringXML: 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
..... translation:alt 0..*CD
...... nullFlavor 0..1codeBinding: NullFlavor (required)
...... code 0..1string
...... codeSystem 0..1string
...... codeSystemName 0..1string
...... codeSystemVersion 0..1string
...... displayName 0..1string
...... sdtcValueSet 0..1stringXML: valueSet (urn:hl7-org:sdtc)
...... sdtcValueSetVersion 0..1stringXML: 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..1Element
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... typeCode 1..1codeBinding: ParticipationTargetSubject (required)
Fixed Value: SBJ
.... contextControlCode 1..1codeBinding: ContextControl (required)
Fixed Value: OP
.... awarenessCode 0..1CEBinding: TargetAwareness (extensible)
.... relatedSubject 1..1RelatedSubject
... specimen 0..*Specimen
... performer 0..*Performer2
... author 0..*AuthorParticipationBase for all types and resources
... informant 0..*Element
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... typeCode 1..1codeBinding: ParticipationInformationGenerator (required)
Fixed Value: INF
.... contextControlCode 1..1codeBinding: ContextControl (required)
Fixed Value: OP
.... assignedEntity 0..1AssignedEntity
.... relatedEntity 0..1RelatedEntity
... participant 0..*Participant2
... Slices for entryRelationship C0..*ElementSlice: Unordered, Open by profile:observation
.... entryRelationship:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... typeCode 1..1code
..... inversionInd 0..1boolean
..... contextConductionInd 1..1boolean
..... sequenceNumber 0..1INT
..... negationInd 0..1boolean
..... seperatableInd 0..1BL
..... (Choice of one) 1..1
...... observation 0..1Observation
...... regionOfInterest 0..1RegionOfInterest
...... observationMedia 0..1ObservationMedia
...... substanceAdministration 0..1SubstanceAdministration
...... supply 0..1Supply
...... procedure 0..1Procedure
...... encounter 0..1Encounter
...... organizer 0..1Organizer
...... act 0..1Act
.... entryRelationship:age C0..1Element
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... typeCode 1..1codeRequired Pattern: SUBJ
..... inversionInd 1..1booleanRequired Pattern: true
..... contextConductionInd 1..1boolean
..... sequenceNumber 0..1INT
..... negationInd 0..1boolean
..... seperatableInd 0..1BL
..... observation 1..1AgeObservationBase for all types and resources
.... entryRelationship:prognosis C0..1Element
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... typeCode 1..1codeRequired Pattern: REFR
..... inversionInd 0..1boolean
..... contextConductionInd 1..1boolean
..... sequenceNumber 0..1INT
..... negationInd 0..1boolean
..... seperatableInd 0..1BL
..... observation 1..1PrognosisObservationBase for all types and resources
.... entryRelationship:priority C0..*Element
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... typeCode 1..1codeRequired Pattern: REFR
..... inversionInd 0..1boolean
..... contextConductionInd 1..1boolean
..... sequenceNumber 0..1INT
..... negationInd 0..1boolean
..... seperatableInd 0..1BL
..... observation 1..1PriorityPreferenceBase for all types and resources
.... entryRelationship:status C0..1Element
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... typeCode 1..1codeRequired Pattern: REFR
..... inversionInd 0..1boolean
..... contextConductionInd 1..1boolean
..... sequenceNumber 0..1INT
..... negationInd 0..1boolean
..... seperatableInd 0..1BL
..... observation 1..1ProblemStatusBase for all types and resources
... reference 0..*Element
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... typeCode 1..1code
.... seperatableInd 0..1BL
.... externalAct 0..1ExternalAct
.... externalObservation 0..1ExternalObservation
.... externalProcedure 0..1ExternalProcedure
.... externalDocument 0..1ExternalDocument
... precondition 0..*Precondition
... referenceRange 0..*Element
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... typeCode 1..1codeBinding: ActRelationshipPertains (required)
Fixed Value: REFV
.... observationRange 1..1ObservationRange

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.classCoderequiredPattern: OBS
Observation.templateId:primary.nullFlavorrequiredNullFlavor
Observation.codepreferredProblem Type (SNOMEDCT)
Observation.statusCoderequiredActStatus
Observation.statusCode.nullFlavorrequiredNullFlavor
Observation.effectiveTime.nullFlavorrequiredNullFlavor
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.subject.typeCoderequiredFixed Value: SBJ
Observation.subject.contextControlCoderequiredFixed Value: OP
Observation.subject.awarenessCodeextensibleTargetAwareness
Observation.informant.typeCoderequiredFixed Value: INF
Observation.informant.contextControlCoderequiredFixed Value: OP
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())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
obs-er-1errorObservation.entryRelationship, Observation.entryRelationship:age, Observation.entryRelationship:prognosis, Observation.entryRelationship:priority, Observation.entryRelationship:statusOnly one of observation, regionOfInterest, observationMedia, substanceAdministration, supply, procedure, encounter, organizer, and act
: (observation | regionOfInterest | observationMedia | substanceAdministration | supply | procedure | encounter | organizer | act).count() = 1

This structure is derived from CDAR2.Observation

Summary

Mandatory: 12 elements (9 nested mandatory 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
  • There is a slice with no discriminator at Observation.value.translation
  • 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 1..1CDAR2.ObservationBase for all types and resources
... classCode 1..1codeRequired Pattern: OBS
... moodCode 1..1codeRequired Pattern: EVN
... negationInd 0..1booleanThe 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..1stringRequired Pattern: 2.16.840.1.113883.10.20.22.4.4
..... extension 1..1stringRequired 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..1stringRequired Pattern: 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..1TSThe effectiveTime/low (a.k.a. "onset date") asserts when the condition became biologically active.
.... high 0..1TSThe effectiveTime/high (a.k.a. "resolution date") asserts when the condition became biologically resolved.
... value 1..1CDBinding: Problem (preferred)
.... code 0..1stringA 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
..... translation:alt 0..*CD
...... code 0..1string
... author 0..*AuthorParticipationBase for all types and resources
... Slices for entryRelationship 0..*ElementSlice: Unordered, Open by profile:observation
.... entryRelationship:age 0..1Element
..... typeCode 1..1codeRequired Pattern: SUBJ
..... inversionInd 1..1booleanRequired Pattern: true
..... observation 1..1AgeObservationBase for all types and resources
.... entryRelationship:prognosis 0..1Element
..... typeCode 1..1codeRequired Pattern: REFR
..... observation 1..1PrognosisObservationBase for all types and resources
.... entryRelationship:priority 0..*Element
..... typeCode 1..1codeRequired Pattern: REFR
..... observation 1..1PriorityPreferenceBase for all types and resources
.... entryRelationship:status 0..1Element
..... typeCode 1..1codeRequired Pattern: 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.ObservationBase for all types and resources
... classCode 1..1codeBinding: ActClassObservation (required)
Required Pattern: OBS
... moodCode 1..1codeRequired Pattern: EVN
... negationInd 0..1booleanThe 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..1stringRequired Pattern: 2.16.840.1.113883.10.20.22.4.4
..... extension 1..1stringRequired 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..1stringRequired Pattern: 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..1TSThe effectiveTime/low (a.k.a. "onset date") asserts when the condition became biologically active.
.... high 0..1TSThe effectiveTime/high (a.k.a. "resolution date") asserts when the condition became biologically resolved.
... value 1..1CDBinding: Problem (preferred)
.... code 0..1stringA 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
..... translation:alt 0..*CD
...... code 0..1string
... author 0..*AuthorParticipationBase for all types and resources
... Slices for entryRelationship C0..*ElementSlice: Unordered, Open by profile:observation
.... entryRelationship:All Slices Content/Rules for all slices
..... typeCode 1..1code
..... contextConductionInd 1..1boolean
.... entryRelationship:age C0..1Element
..... typeCode 1..1codeRequired Pattern: SUBJ
..... inversionInd 1..1booleanRequired Pattern: true
..... contextConductionInd 1..1boolean
..... observation 1..1AgeObservationBase for all types and resources
.... entryRelationship:prognosis C0..1Element
..... typeCode 1..1codeRequired Pattern: REFR
..... contextConductionInd 1..1boolean
..... observation 1..1PrognosisObservationBase for all types and resources
.... entryRelationship:priority C0..*Element
..... typeCode 1..1codeRequired Pattern: REFR
..... contextConductionInd 1..1boolean
..... observation 1..1PriorityPreferenceBase for all types and resources
.... entryRelationship:status C0..1Element
..... typeCode 1..1codeRequired Pattern: REFR
..... contextConductionInd 1..1boolean
..... observation 1..1ProblemStatusBase for all types and resources

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.classCoderequiredPattern: OBS
Observation.codepreferredProblem Type (SNOMEDCT)
Observation.statusCoderequiredActStatus
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).
:
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
obs-er-1errorObservation.entryRelationship, Observation.entryRelationship:age, Observation.entryRelationship:prognosis, Observation.entryRelationship:priority, Observation.entryRelationship:statusOnly one of observation, regionOfInterest, observationMedia, substanceAdministration, supply, procedure, encounter, organizer, and act
: (observation | regionOfInterest | observationMedia | substanceAdministration | supply | procedure | encounter | organizer | act).count() = 1

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 1..1CDAR2.ObservationBase for all types and resources
... classCode 1..1codeBinding: ActClassObservation (required)
Required Pattern: OBS
... moodCode 1..1codeRequired Pattern: EVN
... negationInd 0..1booleanThe 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 0..*IISlice: Unordered, Open by value:root, value:extension
.... templateId:primary 1..1II
..... nullFlavor 0..1codeBinding: NullFlavor (required)
..... assigningAuthorityName 0..1string
..... displayable 0..1boolean
..... root 1..1stringRequired Pattern: 2.16.840.1.113883.10.20.22.4.4
..... extension 1..1stringRequired 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..1ED
... text 0..1ED
... statusCode 1..1CSBinding: ActStatus (required)
.... nullFlavor 0..1codeBinding: NullFlavor (required)
.... code 1..1stringRequired Pattern: completed
.... sdtcValueSet 0..1stringXML: valueSet (urn:hl7-org:sdtc)
.... sdtcValueSetVersion 0..1stringXML: 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..1codeBinding: NullFlavor (required)
.... value 0..1dateTime
.... inclusive 0..1boolean
.... operator 0..1code
.... low 1..1TSThe effectiveTime/low (a.k.a. "onset date") asserts when the condition became biologically active.
.... high 0..1TSThe effectiveTime/high (a.k.a. "resolution date") asserts when the condition became biologically resolved.
.... width 0..1PQ
.... center 0..1TS
... priorityCode 0..1CEBinding: ActPriority (extensible)
... repeatNumber 0..1IVL_INT
... languageCode 0..1CSBinding: HumanLanguage (required)
... value 1..1CDBinding: Problem (preferred)
.... nullFlavor 0..1codeBinding: NullFlavor (required)
.... code 0..1stringA 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..1string
.... codeSystemName 0..1string
.... codeSystemVersion 0..1string
.... displayName 0..1string
.... sdtcValueSet 0..1stringXML: valueSet (urn:hl7-org:sdtc)
.... sdtcValueSetVersion 0..1stringXML: 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
..... translation:alt 0..*CD
...... nullFlavor 0..1codeBinding: NullFlavor (required)
...... code 0..1string
...... codeSystem 0..1string
...... codeSystemName 0..1string
...... codeSystemVersion 0..1string
...... displayName 0..1string
...... sdtcValueSet 0..1stringXML: valueSet (urn:hl7-org:sdtc)
...... sdtcValueSetVersion 0..1stringXML: 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..1Element
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... typeCode 1..1codeBinding: ParticipationTargetSubject (required)
Fixed Value: SBJ
.... contextControlCode 1..1codeBinding: ContextControl (required)
Fixed Value: OP
.... awarenessCode 0..1CEBinding: TargetAwareness (extensible)
.... relatedSubject 1..1RelatedSubject
... specimen 0..*Specimen
... performer 0..*Performer2
... author 0..*AuthorParticipationBase for all types and resources
... informant 0..*Element
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... typeCode 1..1codeBinding: ParticipationInformationGenerator (required)
Fixed Value: INF
.... contextControlCode 1..1codeBinding: ContextControl (required)
Fixed Value: OP
.... assignedEntity 0..1AssignedEntity
.... relatedEntity 0..1RelatedEntity
... participant 0..*Participant2
... Slices for entryRelationship C0..*ElementSlice: Unordered, Open by profile:observation
.... entryRelationship:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... typeCode 1..1code
..... inversionInd 0..1boolean
..... contextConductionInd 1..1boolean
..... sequenceNumber 0..1INT
..... negationInd 0..1boolean
..... seperatableInd 0..1BL
..... (Choice of one) 1..1
...... observation 0..1Observation
...... regionOfInterest 0..1RegionOfInterest
...... observationMedia 0..1ObservationMedia
...... substanceAdministration 0..1SubstanceAdministration
...... supply 0..1Supply
...... procedure 0..1Procedure
...... encounter 0..1Encounter
...... organizer 0..1Organizer
...... act 0..1Act
.... entryRelationship:age C0..1Element
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... typeCode 1..1codeRequired Pattern: SUBJ
..... inversionInd 1..1booleanRequired Pattern: true
..... contextConductionInd 1..1boolean
..... sequenceNumber 0..1INT
..... negationInd 0..1boolean
..... seperatableInd 0..1BL
..... observation 1..1AgeObservationBase for all types and resources
.... entryRelationship:prognosis C0..1Element
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... typeCode 1..1codeRequired Pattern: REFR
..... inversionInd 0..1boolean
..... contextConductionInd 1..1boolean
..... sequenceNumber 0..1INT
..... negationInd 0..1boolean
..... seperatableInd 0..1BL
..... observation 1..1PrognosisObservationBase for all types and resources
.... entryRelationship:priority C0..*Element
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... typeCode 1..1codeRequired Pattern: REFR
..... inversionInd 0..1boolean
..... contextConductionInd 1..1boolean
..... sequenceNumber 0..1INT
..... negationInd 0..1boolean
..... seperatableInd 0..1BL
..... observation 1..1PriorityPreferenceBase for all types and resources
.... entryRelationship:status C0..1Element
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... typeCode 1..1codeRequired Pattern: REFR
..... inversionInd 0..1boolean
..... contextConductionInd 1..1boolean
..... sequenceNumber 0..1INT
..... negationInd 0..1boolean
..... seperatableInd 0..1BL
..... observation 1..1ProblemStatusBase for all types and resources
... reference 0..*Element
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... typeCode 1..1code
.... seperatableInd 0..1BL
.... externalAct 0..1ExternalAct
.... externalObservation 0..1ExternalObservation
.... externalProcedure 0..1ExternalProcedure
.... externalDocument 0..1ExternalDocument
... precondition 0..*Precondition
... referenceRange 0..*Element
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... typeCode 1..1codeBinding: ActRelationshipPertains (required)
Fixed Value: REFV
.... observationRange 1..1ObservationRange

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.classCoderequiredPattern: OBS
Observation.templateId:primary.nullFlavorrequiredNullFlavor
Observation.codepreferredProblem Type (SNOMEDCT)
Observation.statusCoderequiredActStatus
Observation.statusCode.nullFlavorrequiredNullFlavor
Observation.effectiveTime.nullFlavorrequiredNullFlavor
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.subject.typeCoderequiredFixed Value: SBJ
Observation.subject.contextControlCoderequiredFixed Value: OP
Observation.subject.awarenessCodeextensibleTargetAwareness
Observation.informant.typeCoderequiredFixed Value: INF
Observation.informant.contextControlCoderequiredFixed Value: OP
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())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
obs-er-1errorObservation.entryRelationship, Observation.entryRelationship:age, Observation.entryRelationship:prognosis, Observation.entryRelationship:priority, Observation.entryRelationship:statusOnly one of observation, regionOfInterest, observationMedia, substanceAdministration, supply, procedure, encounter, organizer, and act
: (observation | regionOfInterest | observationMedia | substanceAdministration | supply | procedure | encounter | organizer | act).count() = 1

This structure is derived from CDAR2.Observation

Summary

Mandatory: 12 elements (9 nested mandatory 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
  • There is a slice with no discriminator at Observation.value.translation
  • The element Observation.entryRelationship is sliced based on the value of profile:observation

 

Other representations of profile: CSV, Excel, Schematron