HL7 FHIR Implementation Guide: minimal Common Oncology Data Elements (mCODE) Release 1 - US Realm | STU Ballot 1

This page is part of the HL7 FHIR Implementation Guide: minimal Common Oncology Data Elements (mCODE) Release 1 - US Realm | STU1 (v0.9.1: STU 1 Ballot 1) based on FHIR R4. The current version which supercedes this version is 2.0.0. For a full list of available versions, see the Directory of published versions

CancerDiseaseStatus

 

The official URL for this profile is:

http://hl7.org/fhir/us/mcode/StructureDefinition/onco-core-CancerDiseaseStatus

A clinician's qualitative judgment on the current trend of the cancer, e.g., whether it is stable, worsening (progressing), or improving (responding). The judgment may be based a single type or multiple kinds of evidence, such as imaging data, assessment of symptoms, tumor markers, laboratory data, etc.

This profile builds on Observation.

This profile was published on Thu Aug 01 00:00:00 EDT 2019 as a active by HL7 International Clinical Interoperability Council.

Summary

Mandatory: 0 element (3 nested mandatory elements)
Must-Support: 2 elements
Fixed Value: 2 elements
Prohibited: 6 elements

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element Observation.code.coding is sliced based on the value of value:code

Mapping Source

This structure represents the following mapping definition:

onco.core.CancerDiseaseStatus maps to Observation:
  Language maps to language
  ImplicitRules maps to implicitRules
  Metadata.VersionId maps to meta.versionId
  Metadata.SourceSystem maps to meta.source
  Metadata.Profile maps to meta.profile
  Metadata.LastUpdated maps to meta.lastUpdated
  Metadata.SecurityLabel maps to meta.security
  Metadata.Tag maps to meta.tag
  Narrative maps to text
  Identifier maps to identifier
  ObservationBasedOn maps to basedOn
  ObservationPartOf maps to partOf
  Status maps to status
  Category maps to category
  Code maps to code
  ObservationSubjectOfRecord maps to subject
  RelatedCancerCondition maps to focus
  CareContext maps to encounter
  RelevantTime maps to effective[x] // Add Types Timing, instant
  StatementDateTime maps to issued
  Performer maps to performer // Added Target Types PractitionerRole, CareTeam
  DataValue maps to value[x] // Add Type integer, remove Type Attachment
  DataAbsentReason maps to dataAbsentReason
  Interpretation maps to interpretation
  Annotation maps to note
  BodyLocation.Code maps to bodySite
  BodyLocation.Laterality maps to bodySite.extension
  BodyLocation.AnatomicalOrientation maps to bodySite.extension
  BodyLocation.RelationToLandmark maps to bodySite.extension
  Method maps to method
  Specimen maps to specimen
  Device maps to device
  ReferenceRange maps to referenceRange
  ReferenceRange.LowerBound maps to referenceRange.low
  ReferenceRange.UpperBound maps to referenceRange.high
  ReferenceRange.Type maps to referenceRange.type
  ReferenceRange.ApplicableSubpopulation maps to referenceRange.appliesTo
  ReferenceRange.ApplicableAgeRange maps to referenceRange.age
  ReferenceRange.Text maps to referenceRange.text
  PanelMembers.Observation maps to hasMember (slice on = $this.resolve().code.coding.code; slice strategy = includes)
  ObservationDerivedFrom maps to derivedFrom
  Components.ObservationComponent maps to component (slice on = code.coding.code; slice strategy = includes)
  Components.ObservationComponent.Code maps to component.code
  Components.ObservationComponent.DataValue maps to component.value[x]
  Components.ObservationComponent.DataAbsentReason maps to component.dataAbsentReason
  Components.ObservationComponent.Interpretation maps to component.interpretation
  Components.ObservationComponent.ReferenceRange maps to component.referenceRange
  Components.ObservationComponent.ReferenceRange.LowerBound maps to component.referenceRange.low
  Components.ObservationComponent.ReferenceRange.UpperBound maps to component.referenceRange.high
  Components.ObservationComponent.ReferenceRange.Type maps to component.referenceRange.type
  Components.ObservationComponent.ReferenceRange.ApplicableSubpopulation maps to component.referenceRange.appliesTo
  Components.ObservationComponent.ReferenceRange.ApplicableAgeRange maps to component.referenceRange.age
  Components.ObservationComponent.ReferenceRange.Text maps to component.referenceRange.text

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation onco-core-CancerDiseaseStatus
... extension Slice: Unordered, Open by value:url
... onco-core-EvidenceType-extension 0..*CodeableConceptEvidenceType
URL: http://hl7.org/fhir/us/mcode/StructureDefinition/onco-core-EvidenceType-extension
.... valueCodeableConcept Binding: CancerDiseaseStatusEvidenceTypeVS (required)
... basedOn Reference(US Core MedicationRequest Profile | ServiceRequest)
... partOf Reference(MedicationAdministration | obf-MedicationStatement | obf-Procedure)A larger event of which this particular Observation is a component or step. For example, an observation as part of a procedure.
... category 0..1Binding: ObservationCategoryCodes (extensible)
... code
.... coding Slice: Unordered, Open by value:code
.... coding Σ1..1CodingResponse to cancer treatment
..... system Fixed Value: http://loinc.org
..... code Fixed Value: 88040-1
... subject 1..1Reference(obf-Patient)The subject of an observation
... focus Reference(onco-core-PrimaryCancerCondition | onco-core-SecondaryCancerCondition | onco-core-Tumor)Cancer condition this information relates to. Includes the primary cancer, secondary cancer, or a particular tumor.
... encounter Reference(US Core Encounter Profile)
... effective[x] SdateTime, Period
... performer Reference(US Core Practitioner Profile)
... valueCodeableConcept SCodeableConceptBinding: ConditionStatusTrendVS (required)
... interpretation 0..1
... bodySite 0..0
... specimen 0..0
... device 0..0
... referenceRange 0..0
... hasMember 0..0
... derivedFrom Reference(US Core DocumentReference Profile | Media | QuestionnaireResponse | obf-Observation)
... component 0..0

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation I0..*onco-core-CancerDiseaseStatus
obs-7: If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present
obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not present
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... onco-core-EvidenceType-extension 0..*CodeableConceptEvidenceType
URL: http://hl7.org/fhir/us/mcode/StructureDefinition/onco-core-EvidenceType-extension
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"http://hl7.org/fhir/us/mcode/StructureDefinition/onco-core-EvidenceType-extension"
.... valueCodeableConcept 1..1CodeableConceptValue of extension
Binding: CancerDiseaseStatusEvidenceTypeVS (required)
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierBusiness Identifier for observation
... basedOn Σ0..*Reference(US Core MedicationRequest Profile | ServiceRequest)Fulfills plan, proposal or order
... partOf Σ0..*Reference(MedicationAdministration | obf-MedicationStatement | obf-Procedure)A larger event of which this particular Observation is a component or step. For example, an observation as part of a procedure.
... status ?!Σ1..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required)
... category 0..1CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (extensible)
... code Σ1..1CodeableConceptType of observation (code / type)
Binding: LOINCCodes (example)
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding ΣCodingCode defined by a terminology system
Slice: Unordered, Open by value:code
.... coding Σ1..1CodingResponse to cancer treatment
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
..... version Σ0..1stringVersion of the system - if relevant
..... code Σ0..1codeSymbol in syntax defined by the system
Fixed Value: 88040-1
..... display Σ0..1stringRepresentation defined by the system
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... subject Σ1..1Reference(obf-Patient)The subject of an observation
... focus Σ0..*Reference(onco-core-PrimaryCancerCondition | onco-core-SecondaryCancerCondition | onco-core-Tumor)Cancer condition this information relates to. Includes the primary cancer, secondary cancer, or a particular tumor.
... encounter Σ0..1Reference(US Core Encounter Profile)Healthcare event during which this observation is made
... effective[x] SΣ0..1dateTime, PeriodClinically relevant time/time-period for observation
... issued Σ0..1instantDate/Time this version was made available
... performer Σ0..*Reference(US Core Practitioner Profile)Who is responsible for the observation
... valueCodeableConcept SΣI0..1CodeableConceptActual result
Binding: ConditionStatusTrendVS (required)
... dataAbsentReason I0..1CodeableConceptWhy the result is missing
Binding: DataAbsentReason (extensible)
... interpretation 0..1CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible)
... note 0..*AnnotationComments about the observation
... method 0..1CodeableConceptHow it was done
Binding: ObservationMethods (example)
... derivedFrom Σ0..*Reference(US Core DocumentReference Profile | Media | QuestionnaireResponse | obf-Observation)Related measurements the observation is made from

doco Documentation for this format

Summary

Mandatory: 0 element (3 nested mandatory elements)
Must-Support: 2 elements
Fixed Value: 2 elements
Prohibited: 6 elements

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element Observation.code.coding is sliced based on the value of value:code

Mapping Source

This structure represents the following mapping definition:

onco.core.CancerDiseaseStatus maps to Observation:
  Language maps to language
  ImplicitRules maps to implicitRules
  Metadata.VersionId maps to meta.versionId
  Metadata.SourceSystem maps to meta.source
  Metadata.Profile maps to meta.profile
  Metadata.LastUpdated maps to meta.lastUpdated
  Metadata.SecurityLabel maps to meta.security
  Metadata.Tag maps to meta.tag
  Narrative maps to text
  Identifier maps to identifier
  ObservationBasedOn maps to basedOn
  ObservationPartOf maps to partOf
  Status maps to status
  Category maps to category
  Code maps to code
  ObservationSubjectOfRecord maps to subject
  RelatedCancerCondition maps to focus
  CareContext maps to encounter
  RelevantTime maps to effective[x] // Add Types Timing, instant
  StatementDateTime maps to issued
  Performer maps to performer // Added Target Types PractitionerRole, CareTeam
  DataValue maps to value[x] // Add Type integer, remove Type Attachment
  DataAbsentReason maps to dataAbsentReason
  Interpretation maps to interpretation
  Annotation maps to note
  BodyLocation.Code maps to bodySite
  BodyLocation.Laterality maps to bodySite.extension
  BodyLocation.AnatomicalOrientation maps to bodySite.extension
  BodyLocation.RelationToLandmark maps to bodySite.extension
  Method maps to method
  Specimen maps to specimen
  Device maps to device
  ReferenceRange maps to referenceRange
  ReferenceRange.LowerBound maps to referenceRange.low
  ReferenceRange.UpperBound maps to referenceRange.high
  ReferenceRange.Type maps to referenceRange.type
  ReferenceRange.ApplicableSubpopulation maps to referenceRange.appliesTo
  ReferenceRange.ApplicableAgeRange maps to referenceRange.age
  ReferenceRange.Text maps to referenceRange.text
  PanelMembers.Observation maps to hasMember (slice on = $this.resolve().code.coding.code; slice strategy = includes)
  ObservationDerivedFrom maps to derivedFrom
  Components.ObservationComponent maps to component (slice on = code.coding.code; slice strategy = includes)
  Components.ObservationComponent.Code maps to component.code
  Components.ObservationComponent.DataValue maps to component.value[x]
  Components.ObservationComponent.DataAbsentReason maps to component.dataAbsentReason
  Components.ObservationComponent.Interpretation maps to component.interpretation
  Components.ObservationComponent.ReferenceRange maps to component.referenceRange
  Components.ObservationComponent.ReferenceRange.LowerBound maps to component.referenceRange.low
  Components.ObservationComponent.ReferenceRange.UpperBound maps to component.referenceRange.high
  Components.ObservationComponent.ReferenceRange.Type maps to component.referenceRange.type
  Components.ObservationComponent.ReferenceRange.ApplicableSubpopulation maps to component.referenceRange.appliesTo
  Components.ObservationComponent.ReferenceRange.ApplicableAgeRange maps to component.referenceRange.age
  Components.ObservationComponent.ReferenceRange.Text maps to component.referenceRange.text

Differential View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation onco-core-CancerDiseaseStatus
... extension Slice: Unordered, Open by value:url
... onco-core-EvidenceType-extension 0..*CodeableConceptEvidenceType
URL: http://hl7.org/fhir/us/mcode/StructureDefinition/onco-core-EvidenceType-extension
.... valueCodeableConcept Binding: CancerDiseaseStatusEvidenceTypeVS (required)
... basedOn Reference(US Core MedicationRequest Profile | ServiceRequest)
... partOf Reference(MedicationAdministration | obf-MedicationStatement | obf-Procedure)A larger event of which this particular Observation is a component or step. For example, an observation as part of a procedure.
... category 0..1Binding: ObservationCategoryCodes (extensible)
... code
.... coding Slice: Unordered, Open by value:code
.... coding Σ1..1CodingResponse to cancer treatment
..... system Fixed Value: http://loinc.org
..... code Fixed Value: 88040-1
... subject 1..1Reference(obf-Patient)The subject of an observation
... focus Reference(onco-core-PrimaryCancerCondition | onco-core-SecondaryCancerCondition | onco-core-Tumor)Cancer condition this information relates to. Includes the primary cancer, secondary cancer, or a particular tumor.
... encounter Reference(US Core Encounter Profile)
... effective[x] SdateTime, Period
... performer Reference(US Core Practitioner Profile)
... valueCodeableConcept SCodeableConceptBinding: ConditionStatusTrendVS (required)
... interpretation 0..1
... bodySite 0..0
... specimen 0..0
... device 0..0
... referenceRange 0..0
... hasMember 0..0
... derivedFrom Reference(US Core DocumentReference Profile | Media | QuestionnaireResponse | obf-Observation)
... component 0..0

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation I0..*onco-core-CancerDiseaseStatus
obs-7: If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present
obs-6: dataAbsentReason SHALL only be present if Observation.value[x] is not present
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... onco-core-EvidenceType-extension 0..*CodeableConceptEvidenceType
URL: http://hl7.org/fhir/us/mcode/StructureDefinition/onco-core-EvidenceType-extension
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"http://hl7.org/fhir/us/mcode/StructureDefinition/onco-core-EvidenceType-extension"
.... valueCodeableConcept 1..1CodeableConceptValue of extension
Binding: CancerDiseaseStatusEvidenceTypeVS (required)
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierBusiness Identifier for observation
... basedOn Σ0..*Reference(US Core MedicationRequest Profile | ServiceRequest)Fulfills plan, proposal or order
... partOf Σ0..*Reference(MedicationAdministration | obf-MedicationStatement | obf-Procedure)A larger event of which this particular Observation is a component or step. For example, an observation as part of a procedure.
... status ?!Σ1..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required)
... category 0..1CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (extensible)
... code Σ1..1CodeableConceptType of observation (code / type)
Binding: LOINCCodes (example)
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding ΣCodingCode defined by a terminology system
Slice: Unordered, Open by value:code
.... coding Σ1..1CodingResponse to cancer treatment
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
..... version Σ0..1stringVersion of the system - if relevant
..... code Σ0..1codeSymbol in syntax defined by the system
Fixed Value: 88040-1
..... display Σ0..1stringRepresentation defined by the system
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... subject Σ1..1Reference(obf-Patient)The subject of an observation
... focus Σ0..*Reference(onco-core-PrimaryCancerCondition | onco-core-SecondaryCancerCondition | onco-core-Tumor)Cancer condition this information relates to. Includes the primary cancer, secondary cancer, or a particular tumor.
... encounter Σ0..1Reference(US Core Encounter Profile)Healthcare event during which this observation is made
... effective[x] SΣ0..1dateTime, PeriodClinically relevant time/time-period for observation
... issued Σ0..1instantDate/Time this version was made available
... performer Σ0..*Reference(US Core Practitioner Profile)Who is responsible for the observation
... valueCodeableConcept SΣI0..1CodeableConceptActual result
Binding: ConditionStatusTrendVS (required)
... dataAbsentReason I0..1CodeableConceptWhy the result is missing
Binding: DataAbsentReason (extensible)
... interpretation 0..1CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible)
... note 0..*AnnotationComments about the observation
... method 0..1CodeableConceptHow it was done
Binding: ObservationMethods (example)
... derivedFrom Σ0..*Reference(US Core DocumentReference Profile | Media | QuestionnaireResponse | obf-Observation)Related measurements the observation is made from

doco Documentation for this format

Downloads: StructureDefinition: (XML, JSON, TTL), Schema: XML Schematron

 

Terminology Bindings

PathConformanceValueSet
Observation.languagepreferredCommonLanguages
Max Binding: AllLanguages
Observation.extension:evidencetype.valueCodeableConceptrequiredCancerDiseaseStatusEvidenceTypeVS
Observation.statusrequiredObservationStatus
Observation.categoryextensibleObservationCategoryCodes
Observation.codeexampleLOINCCodes
Observation.valueCodeableConceptrequiredConditionStatusTrendVS
Observation.dataAbsentReasonextensibleDataAbsentReason
Observation.interpretationextensibleObservationInterpretationCodes
Observation.methodexampleObservationMethods
Observation.referenceRange.typeextensibleObservationReferenceRangeMeaningCodes
Observation.referenceRange.appliesToextensibleObservationReferenceRangeAppliesToCodes
Observation.component.codeexampleLOINCCodes
Observation.component.dataAbsentReasonextensibleDataAbsentReason
Observation.component.interpretationextensibleObservationInterpretationCodes
Observation.component.referenceRange.typeextensibleObservationReferenceRangeMeaningCodes
Observation.component.referenceRange.appliesToextensibleObservationReferenceRangeAppliesToCodes

 

Constraints

IdPathDetailsRequirements
dom-2ObservationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-4ObservationIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-3ObservationIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-6ObservationA resource should have narrative for robust management
: text.div.exists()
dom-5ObservationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
obs-7ObservationIf Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present
: value.empty() or component.code.where( (coding.code = %resource.code.coding.code) and (coding.system = %resource.code.coding.system)).empty()
obs-6ObservationdataAbsentReason SHALL only be present if Observation.value[x] is not present
: dataAbsentReason.empty() or value.empty()