Case Based Surveillance Implementation Guide
0.2.1 - ci-build

Case Based Surveillance Implementation Guide - Local Development build (v0.2.1). See the Directory of published versions

Resource Profile: US Case Based Surveillance Travel History Profile

Official URL: http://cbsig.chai.gatech.edu/StructureDefinition/us-cbs-travel-history Version: 0.2.1
Active as of 2021-01-01 Computable Name: USCaseBasedSurveillanceTravelHistory

This profile sets minimum expectations for the Observation resource to represent data requested as part of the U.S. Public Health Case Based Surveillance messaging guides. It identifies which core elements, extensions, vocabularies and value sets SHALL be present in the resource when using this profile. This profile is built on top of the ECR [US PH Travel History] profile.

Example Usage Scenarios:

The following are example usage scenarios for the US CBS Travel History profile:

  • Capture a narrative of single instance of travel to and from a distinct location.
  • Capture a complex narrative of travel, such as a cruise ship moving between ports of call, including relevant mode of travel, either as part of a chain of travel history observations or utilizing the provided extensions.

Relationship to CBS Exposure Observation and CDC Message Mapping Guides

The Center for Disease Control’s (CDC) Message Mapping Guides (MMGs) provide guidance on the transmission of records from jurisdictions to case based surveillance programs. MMG documents are publicly available through the CDC’s website. The US CBS Travel History profile and [US CBS Exposure Observation] profile capture similar data for distinct purposes. The CBS Exposure Observation Profile captures general data related to a location of exposure, when known, as part of the Gen V2 message mapping guide. Travel History is captured in multiple condition specific mapping guides, and provides extra data which may or may not be directly tied to the concept of exposure. The US CBS Travel History profile also includes the option to capture potentially relevant information such as modes of travel or time relative to the condition onset and other important case dates. These profiles should be considered complimentary.

Mandatory and Must Support Data Elements

The following data-elements must always be present (Mandatory definition]) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.

Each Observation must have:

  1. an Observation.code.coding with a fixed value for the system SNOMED CT (http://snomed.info/sct) with code “4200008001”
  2. a subject reference
  3. a component with the travel location

Each Observation must support:

  1. an effective date time

Profile specific implementation guidance:

  • The Observation.effective[x] element is specified as capturing “Date or period of time spent in the location, from date of arrival to date of departure from location”. Travel time to and from the specification location should not be included as part of Observation.effective[x] values in order to ensure common usage. Time related to travel to and from a location, that is prior to arrival and post departure, should be captured in the US CBS Period and Mode of Travel extension. In many circumstances this will create a bookending of extension dates around the core observation dates when extended travel time is involved and is required to be captured.
    • In the case of cruise ships, Observation.effective[x] may be used to capture the time spent on the cruise ship regardless of that the ship itself could be considered a mode of travel. Here the cruise would be considered the destination location. Handling of more complex scenarios in which a ship may be taken to a secondary destination with an extended stay (e.g. not a brief port of call) is left up to implementers.
  • Relative date values may be captured to obscure information that may be potentially identifiable. The US CBS Program Specific Time Window Extension should be used to indicate this. For example, some programs may request all instances of travel history within a month prior to reported condition onset. The extension’s timeWindow slice would be set to a quantity of “1 month”, the relativeTo slice coded as “conditionOnsetDateTime” or “conditionOnsetDatePeriodStart”, and relativeReference pointing to the Condition of Interest profile with the onset against which the window is set.

Formal Views of Profile Content

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

This structure is derived from USPublicHealthTravelHistory

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 0..*USPublicHealthTravelHistoryUS Public Health Travel History
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... us-cbs-period-and-mode-of-travel 0..*(Complex)US Case Based Surveillance Period and Mode of Travel Extension
URL: http://cbsig.chai.gatech.edu/StructureDefinition/us-cbs-period-and-mode-of-travel
... us-cbs-program-specific-time-window 0..1(Complex)US Case Based Surveillance Program Specific Time Window
URL: http://cbsig.chai.gatech.edu/StructureDefinition/us-cbs-program-specific-time-window
... effective[x] 0..1dateTime, Period, Timing, instantDate or period of time spent in the location, from date of arrival to date of departure from location

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation I0..*USPublicHealthTravelHistoryUS Public Health Travel History
... id Σ0..1stringLogical 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: A human language.

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... us-cbs-period-and-mode-of-travel 0..*(Complex)US Case Based Surveillance Period and Mode of Travel Extension
URL: http://cbsig.chai.gatech.edu/StructureDefinition/us-cbs-period-and-mode-of-travel
... us-cbs-program-specific-time-window 0..1(Complex)US Case Based Surveillance Program Specific Time Window
URL: http://cbsig.chai.gatech.edu/StructureDefinition/us-cbs-program-specific-time-window
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierBusiness Identifier for observation
... basedOn Σ0..*Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest)Fulfills plan, proposal or order
... partOf Σ0..*Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy)Part of referenced event
... status ?!Σ1..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required): Codes providing the status of an observation.

... category 0..*CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


... code SΣ1..1CodeableConceptType of observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.


Required Pattern: At least the following
.... id0..1stringUnique id for inter-element referencing
.... extension0..*ExtensionAdditional content defined by implementations
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 420008001
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
.... text0..1stringPlain text representation of the concept
... subject SΣ1..1Reference(US Case Based Surveillance Patient Profile)Who and/or what the observation is about
... focus Σ0..*Reference(Resource)What the observation is about, when it is not about the subject of record
... encounter Σ0..1Reference(Encounter)Healthcare event during which this observation is made
... effective[x] SΣ0..1Date or period of time spent in the location, from date of arrival to date of departure from location
.... effectiveDateTimedateTime
.... effectivePeriodPeriod
.... effectiveTimingTiming
.... effectiveInstantinstant
... issued Σ0..1instantDate/Time this version was made available
... performer Σ0..*Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson)Who is responsible for the observation
... value[x] ΣI0..1Actual result
.... valueQuantityQuantity
.... valueCodeableConceptCodeableConcept
.... valueStringstring
.... valueBooleanboolean
.... valueIntegerinteger
.... valueRangeRange
.... valueRatioRatio
.... valueSampledDataSampledData
.... valueTimetime
.... valueDateTimedateTime
.... valuePeriodPeriod
... dataAbsentReason I0..1CodeableConceptWhy the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.

... interpretation 0..*CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.


... note 0..*AnnotationComments about the observation
... bodySite 0..1CodeableConceptObserved body part
Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.

... method 0..1CodeableConceptHow it was done
Binding: ObservationMethods (example): Methods for simple observations.

... specimen 0..1Reference(Specimen)Specimen used for this observation
... device 0..1Reference(Device | DeviceMetric)(Measurement) Device
... referenceRange I0..*BackboneElementProvides guide for interpretation
obs-3: Must have at least a low or a high or text
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... low I0..1SimpleQuantityLow Range, if relevant
.... high I0..1SimpleQuantityHigh Range, if relevant
.... type 0..1CodeableConceptReference range qualifier
Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range.

.... appliesTo 0..*CodeableConceptReference range population
Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to.


.... age 0..1RangeApplicable age range, if relevant
.... text 0..1stringText based reference range in an observation
... hasMember SΣ0..*Reference(US Public Health Transportation Details | US Public Health Exposure Contact Information)Related resource that belongs to the Observation group
... derivedFrom Σ0..*Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence)Related measurements the observation is made from
... Slices for component SΣ1..*BackboneElementComponent results
Slice: Unordered, Open by value:code
.... component:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... code Σ1..1CodeableConceptType of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.

..... value[x] Σ0..1Actual component result
...... valueQuantityQuantity
...... valueCodeableConceptCodeableConcept
...... valueStringstring
...... valueBooleanboolean
...... valueIntegerinteger
...... valueRangeRange
...... valueRatioRatio
...... valueSampledDataSampledData
...... valueTimetime
...... valueDateTimedateTime
...... valuePeriodPeriod
..... dataAbsentReason I0..1CodeableConceptWhy the component result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.

..... interpretation 0..*CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.


..... referenceRange 0..*See referenceRange (Observation)Provides guide for interpretation of component result
.... component:travelLocation SΣ1..*BackboneElementTravel location
..... id 0..1stringUnique id for inter-element referencing
..... Slices for extension S0..*ExtensionExtension
Slice: Unordered, Open by value:url
..... us-ph-address-extension S0..1AddressTravel history address
URL: http://hl7.org/fhir/us/ecr/StructureDefinition/us-ph-address-extension
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... code SΣ1..1CodeableConceptType of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.


Required Pattern: At least the following
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... id0..1stringUnique id for inter-element referencing
....... extension0..*ExtensionAdditional content defined by implementations
....... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-ParticipationType
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: LOC
....... display1..1stringRepresentation defined by the system
Fixed Value: Location
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... value[x] SΣ0..1CodeableConceptActual component result
...... id 0..1stringUnique id for inter-element referencing
...... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... coding SΣ0..*CodingCode defined by a terminology system
Binding: Geographical location history (extensible): Geographical Location History



Example for coding: {"system":"urn:iso:std:iso:3166","code":"FJI","display":"Fiji"}
...... text SΣ0..1stringPlain text representation of the concept
Example for text: Spent 8 years in the UK during the BSE outbreak
..... dataAbsentReason I0..1CodeableConceptWhy the component result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.

..... interpretation 0..*CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.


..... referenceRange 0..*See referenceRange (Observation)Provides guide for interpretation of component result
.... component:travelPurpose SΣ0..*BackboneElementPurpose of travel
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... code SΣ1..1CodeableConceptType of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.


Required Pattern: At least the following
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... id0..1stringUnique id for inter-element referencing
....... extension0..*ExtensionAdditional content defined by implementations
....... system1..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 280147009
....... display0..1stringRepresentation defined by the system
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... value[x] SΣ1..1CodeableConceptActual component result
Binding: Travel Purpose (preferred): Travel Purpose

..... dataAbsentReason I0..1CodeableConceptWhy the component result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.

..... interpretation 0..*CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.


..... referenceRange 0..*See referenceRange (Observation)Provides guide for interpretation of component result

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation I0..*USPublicHealthTravelHistoryUS Public Health Travel History
... code Σ1..1CodeableConceptType of observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.


Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 420008001
... subject Σ1..1Reference(US Case Based Surveillance Patient Profile)Who and/or what the observation is about
... effective[x] Σ0..1Date or period of time spent in the location, from date of arrival to date of departure from location
.... effectiveDateTimedateTime
.... effectivePeriodPeriod
.... effectiveTimingTiming
.... effectiveInstantinstant
... Slices for component Σ1..*BackboneElementComponent results
Slice: Unordered, Open by value:code
.... component:travelLocation Σ1..*BackboneElementTravel location
..... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
..... us-ph-address-extension 0..1AddressTravel history address
URL: http://hl7.org/fhir/us/ecr/StructureDefinition/us-ph-address-extension
..... code Σ1..1CodeableConceptType of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.


Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-ParticipationType
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: LOC
....... display1..1stringRepresentation defined by the system
Fixed Value: Location
..... value[x] Σ0..1CodeableConceptActual component result
...... coding Σ0..*CodingCode defined by a terminology system
Binding: Geographical location history (extensible): Geographical Location History


...... text Σ0..1stringPlain text representation of the concept
.... component:travelPurpose Σ0..*BackboneElementPurpose of travel
..... code Σ1..1CodeableConceptType of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.


Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 280147009
..... value[x] Σ1..1CodeableConceptActual component result
Binding: Travel Purpose (preferred): Travel Purpose


doco Documentation for this format

Differential View

This structure is derived from USPublicHealthTravelHistory

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 0..*USPublicHealthTravelHistoryUS Public Health Travel History
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... us-cbs-period-and-mode-of-travel 0..*(Complex)US Case Based Surveillance Period and Mode of Travel Extension
URL: http://cbsig.chai.gatech.edu/StructureDefinition/us-cbs-period-and-mode-of-travel
... us-cbs-program-specific-time-window 0..1(Complex)US Case Based Surveillance Program Specific Time Window
URL: http://cbsig.chai.gatech.edu/StructureDefinition/us-cbs-program-specific-time-window
... effective[x] 0..1dateTime, Period, Timing, instantDate or period of time spent in the location, from date of arrival to date of departure from location

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation I0..*USPublicHealthTravelHistoryUS Public Health Travel History
... id Σ0..1stringLogical 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: A human language.

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... us-cbs-period-and-mode-of-travel 0..*(Complex)US Case Based Surveillance Period and Mode of Travel Extension
URL: http://cbsig.chai.gatech.edu/StructureDefinition/us-cbs-period-and-mode-of-travel
... us-cbs-program-specific-time-window 0..1(Complex)US Case Based Surveillance Program Specific Time Window
URL: http://cbsig.chai.gatech.edu/StructureDefinition/us-cbs-program-specific-time-window
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierBusiness Identifier for observation
... basedOn Σ0..*Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest)Fulfills plan, proposal or order
... partOf Σ0..*Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy)Part of referenced event
... status ?!Σ1..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required): Codes providing the status of an observation.

... category 0..*CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


... code SΣ1..1CodeableConceptType of observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.


Required Pattern: At least the following
.... id0..1stringUnique id for inter-element referencing
.... extension0..*ExtensionAdditional content defined by implementations
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 420008001
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
.... text0..1stringPlain text representation of the concept
... subject SΣ1..1Reference(US Case Based Surveillance Patient Profile)Who and/or what the observation is about
... focus Σ0..*Reference(Resource)What the observation is about, when it is not about the subject of record
... encounter Σ0..1Reference(Encounter)Healthcare event during which this observation is made
... effective[x] SΣ0..1Date or period of time spent in the location, from date of arrival to date of departure from location
.... effectiveDateTimedateTime
.... effectivePeriodPeriod
.... effectiveTimingTiming
.... effectiveInstantinstant
... issued Σ0..1instantDate/Time this version was made available
... performer Σ0..*Reference(Practitioner | PractitionerRole | Organization | CareTeam | Patient | RelatedPerson)Who is responsible for the observation
... value[x] ΣI0..1Actual result
.... valueQuantityQuantity
.... valueCodeableConceptCodeableConcept
.... valueStringstring
.... valueBooleanboolean
.... valueIntegerinteger
.... valueRangeRange
.... valueRatioRatio
.... valueSampledDataSampledData
.... valueTimetime
.... valueDateTimedateTime
.... valuePeriodPeriod
... dataAbsentReason I0..1CodeableConceptWhy the result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.

... interpretation 0..*CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.


... note 0..*AnnotationComments about the observation
... bodySite 0..1CodeableConceptObserved body part
Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.

... method 0..1CodeableConceptHow it was done
Binding: ObservationMethods (example): Methods for simple observations.

... specimen 0..1Reference(Specimen)Specimen used for this observation
... device 0..1Reference(Device | DeviceMetric)(Measurement) Device
... referenceRange I0..*BackboneElementProvides guide for interpretation
obs-3: Must have at least a low or a high or text
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... low I0..1SimpleQuantityLow Range, if relevant
.... high I0..1SimpleQuantityHigh Range, if relevant
.... type 0..1CodeableConceptReference range qualifier
Binding: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range.

.... appliesTo 0..*CodeableConceptReference range population
Binding: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to.


.... age 0..1RangeApplicable age range, if relevant
.... text 0..1stringText based reference range in an observation
... hasMember SΣ0..*Reference(US Public Health Transportation Details | US Public Health Exposure Contact Information)Related resource that belongs to the Observation group
... derivedFrom Σ0..*Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | Observation | MolecularSequence)Related measurements the observation is made from
... Slices for component SΣ1..*BackboneElementComponent results
Slice: Unordered, Open by value:code
.... component:All Slices Content/Rules for all slices
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... code Σ1..1CodeableConceptType of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.

..... value[x] Σ0..1Actual component result
...... valueQuantityQuantity
...... valueCodeableConceptCodeableConcept
...... valueStringstring
...... valueBooleanboolean
...... valueIntegerinteger
...... valueRangeRange
...... valueRatioRatio
...... valueSampledDataSampledData
...... valueTimetime
...... valueDateTimedateTime
...... valuePeriodPeriod
..... dataAbsentReason I0..1CodeableConceptWhy the component result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.

..... interpretation 0..*CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.


..... referenceRange 0..*See referenceRange (Observation)Provides guide for interpretation of component result
.... component:travelLocation SΣ1..*BackboneElementTravel location
..... id 0..1stringUnique id for inter-element referencing
..... Slices for extension S0..*ExtensionExtension
Slice: Unordered, Open by value:url
..... us-ph-address-extension S0..1AddressTravel history address
URL: http://hl7.org/fhir/us/ecr/StructureDefinition/us-ph-address-extension
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... code SΣ1..1CodeableConceptType of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.


Required Pattern: At least the following
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... id0..1stringUnique id for inter-element referencing
....... extension0..*ExtensionAdditional content defined by implementations
....... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/v3-ParticipationType
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: LOC
....... display1..1stringRepresentation defined by the system
Fixed Value: Location
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... value[x] SΣ0..1CodeableConceptActual component result
...... id 0..1stringUnique id for inter-element referencing
...... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... coding SΣ0..*CodingCode defined by a terminology system
Binding: Geographical location history (extensible): Geographical Location History



Example for coding: {"system":"urn:iso:std:iso:3166","code":"FJI","display":"Fiji"}
...... text SΣ0..1stringPlain text representation of the concept
Example for text: Spent 8 years in the UK during the BSE outbreak
..... dataAbsentReason I0..1CodeableConceptWhy the component result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.

..... interpretation 0..*CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.


..... referenceRange 0..*See referenceRange (Observation)Provides guide for interpretation of component result
.... component:travelPurpose SΣ0..*BackboneElementPurpose of travel
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... code SΣ1..1CodeableConceptType of component observation (code / type)
Binding: LOINCCodes (example): Codes identifying names of simple observations.


Required Pattern: At least the following
...... id0..1stringUnique id for inter-element referencing
...... extension0..*ExtensionAdditional content defined by implementations
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... id0..1stringUnique id for inter-element referencing
....... extension0..*ExtensionAdditional content defined by implementations
....... system1..1uriIdentity of the terminology system
Fixed Value: http://snomed.info/sct
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 280147009
....... display0..1stringRepresentation defined by the system
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... value[x] SΣ1..1CodeableConceptActual component result
Binding: Travel Purpose (preferred): Travel Purpose

..... dataAbsentReason I0..1CodeableConceptWhy the component result is missing
Binding: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing.

..... interpretation 0..*CodeableConceptHigh, low, normal, etc.
Binding: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations.


..... referenceRange 0..*See referenceRange (Observation)Provides guide for interpretation of component result

doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet / Code
Observation.languagepreferredCommonLanguages
Max Binding: AllLanguages
Observation.statusrequiredObservationStatus
Observation.categorypreferredObservationCategoryCodes
Observation.codeexamplePattern: SNOMED CT code 420008001
Observation.dataAbsentReasonextensibleDataAbsentReason
Observation.interpretationextensibleObservationInterpretationCodes
Observation.bodySiteexampleSNOMEDCTBodyStructures
Observation.methodexampleObservationMethods
Observation.referenceRange.typepreferredObservationReferenceRangeMeaningCodes
Observation.referenceRange.appliesToexampleObservationReferenceRangeAppliesToCodes
Observation.component.codeexampleLOINCCodes
Observation.component.dataAbsentReasonextensibleDataAbsentReason
Observation.component.interpretationextensibleObservationInterpretationCodes
Observation.component:travelLocation.codeexamplePattern: LOC("Location")
Observation.component:travelLocation.value[x].codingextensiblePHVS_GeographicLocationHistory_CDC
Observation.component:travelLocation.dataAbsentReasonextensibleDataAbsentReason
Observation.component:travelLocation.interpretationextensibleObservationInterpretationCodes
Observation.component:travelPurpose.codeexamplePattern: SNOMED CT code 280147009
Observation.component:travelPurpose.value[x]preferredPHVS_TravelPurpose_FDD
Observation.component:travelPurpose.dataAbsentReasonextensibleDataAbsentReason
Observation.component:travelPurpose.interpretationextensibleObservationInterpretationCodes

Constraints

IdGradePathDetailsRequirements
dom-2errorObservationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorObservationIf 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-4errorObservationIf 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-5errorObservationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6Best PracticeObservationA resource should have narrative for robust management
: text.`div`.exists()
obs-6errorObservationdataAbsentReason SHALL only be present if Observation.value[x] is not present
: dataAbsentReason.empty() or value.empty()
obs-7errorObservationIf 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.intersect(%resource.code.coding).exists()).empty()
ele-1errorObservation.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.extension:periodAndModeOfTravelAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.extension:periodAndModeOfTravelMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.extension:programSpecificTimeWindowAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.extension:programSpecificTimeWindowMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.basedOnAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.partOfAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.categoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.subjectAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.focusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.encounterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.effective[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.issuedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.performerAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.dataAbsentReasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.interpretationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.noteAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.bodySiteAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.methodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.specimenAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.deviceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.referenceRangeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
obs-3errorObservation.referenceRangeMust have at least a low or a high or text
: low.exists() or high.exists() or text.exists()
ele-1errorObservation.referenceRange.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.referenceRange.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.referenceRange.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.referenceRange.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.referenceRange.lowAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.referenceRange.highAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.referenceRange.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.referenceRange.appliesToAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.referenceRange.ageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.referenceRange.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.hasMemberAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.derivedFromAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.componentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.component.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.component.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.component.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.component.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component.dataAbsentReasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component.interpretationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component.referenceRangeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelLocationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelLocation.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.component:travelLocation.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.component:travelLocation.extension:travelHistoryAddressAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.component:travelLocation.extension:travelHistoryAddressMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.component:travelLocation.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.component:travelLocation.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.component:travelLocation.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelLocation.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelLocation.value[x].extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.component:travelLocation.value[x].extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.component:travelLocation.value[x].codingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelLocation.value[x].textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelLocation.dataAbsentReasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelLocation.interpretationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelLocation.referenceRangeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelPurposeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelPurpose.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.component:travelPurpose.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.component:travelPurpose.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorObservation.component:travelPurpose.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorObservation.component:travelPurpose.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelPurpose.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelPurpose.dataAbsentReasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelPurpose.interpretationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorObservation.component:travelPurpose.referenceRangeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())