HL7 FHIR Implementation Guide: Military Service History and Status Release 1 - US Realm | STU1 Ballot
0.1.0 - STU1 Ballot

This page is part of the HL7 FHIR Implementation Guide for Military Service History and Status (v0.1.0: STU 1 Ballot 1) based on FHIR R4. . For a full list of available versions, see the Directory of published versions

Resource Profile: Military Service Episode

Defining URL:http://hl7.org/fhir/us/military-service/StructureDefinition/military-service-episode
Version:0.1.0
Name:MilitaryServiceEpisode
Title:Military Service Episode
Status:Active as of 2021-08-13T16:25:22+00:00
Definition:

A patient/Veteran may have zero or more military service episodes. The contents of this profile is based on the HL7 Version 2 ZMH segment and the ServiceHistoryEpisode schema specified in the current Veteran Verification API and it allows this API to migrate to FHIR and to be consistent with the prior work done by Center for Disease Control (CDC) National Institute for Occupational Safety and Health (NIOSH). A service history episode may reference zero or more Combat episodes. This profile is based on the default FHIR Observation profile but may reuse ODD Past or Present Job profile ( http://hl.org/fhir/us/odh/StructureDefinition-odh-PastOrPresentJob.html).

Publisher:Cross Group Projects WG
Source Resource:XML / JSON / Turtle

The official URL for this profile is:

http://hl7.org/fhir/us/military-service/StructureDefinition/military-service-episode

Formal Views of Profile Content

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

This structure is derived from Observation

Summary

Mandatory: 11 elements (2 nested mandatory elements)
Must-Support: 11 elements
Prohibited: 14 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Observation.effective[x] is sliced based on the value of type:$this
  • The element Observation.hasMember is sliced based on the value of profile:$this.resolve()
  • The element Observation.component is sliced based on the value of pattern:code
  • The element Observation.component.value[x] is sliced based on the value of type:$this

This structure is derived from Observation

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 0..*ObservationMeasurements and simple assertions
... id 1..1stringLogical id of this artifact
... identifier 0..1IdentifierBusiness Identifier for observation
... basedOn 0..0
... status S1..1coderegistered | preliminary | final | amended +
... category
.... coding 0..*CodingCode defined by a terminology system
Required Pattern: At least the following
..... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: social-history
... code S1..1CodeableConceptType of observation (code / type)
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://loinc.org
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 87511-2
... subject S1..1Reference(US Veteran)Who and/or what the observation is about
... focus 0..0
... encounter 0..0
... Slices for effective[x] 1..1PeriodClinically relevant time/time-period for observation
Slice: Unordered, Open by type:$this
... effectivePeriod S1..1PeriodClinically relevant time/time-period for observation
.... start S1..1dateTimeStarting time with inclusive boundary
.... end S0..1dateTimeEnd time with inclusive boundary, if not ongoing
... issued 0..0
... performer 0..0
... dataAbsentReason 0..0
... interpretation 0..0
... bodySite 0..0
... method 0..0
... specimen 0..0
... device 0..0
... referenceRange 0..0
... Slices for hasMember 0..*Reference(Observation | QuestionnaireResponse | MolecularSequence)Related resource that belongs to the Observation group
Slice: Unordered, Open by profile:$this.resolve()
.... hasMember:DeploymentEpisode S0..*Reference(Deployment Episode)Related resource that belongs to the Observation group
.... hasMember:MilitaryOccupation S0..*Reference(Military Occupation)Related resource that belongs to the Observation group
... derivedFrom 0..0
... Slices for component S2..*BackboneElementComponent results
Slice: Unordered, Open by pattern:code
.... component:military-service-Industry 1..1BackboneElementComponent results
..... code 1..1CodeableConceptType of component observation (code / type)
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://loinc.org
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 86188-0
....... display1..1stringRepresentation defined by the system
Fixed Value: History of Occupation industry
..... Slices for value[x] 1..1CodeableConceptActual component result
Slice: Unordered, Open by type:$this
..... valueCodeableConcept 1..1CodeableConceptActual component result
Binding: Military Branch Value Set (required)
.... component:military-service-DischargeStatus 1..1BackboneElementComponent results
..... code 1..1CodeableConceptType of component observation (code / type)
Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: https://www.logicahealth.org/solutions/solor/military-service
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 9B7095A70B024CD789A36E48A3936592
....... display1..1stringRepresentation defined by the system
Fixed Value: Discharge Status
..... Slices for value[x] 1..1CodeableConceptActual component result
Slice: Unordered, Open by type:$this
..... valueCodeableConcept S1..1CodeableConceptActual component result
Binding: Discharge Status Value Set (required)
.... component:military-service-SeparationReason 0..1BackboneElementComponent results
..... code 1..1CodeableConceptType of component observation (code / type)
Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: https://www.logicahealth.org/solutions/solor/military-service
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 9CEAD6537D6A4F198549F70598B8F8BF
....... display1..1stringRepresentation defined by the system
Fixed Value: Separation Reason
..... Slices for value[x] 1..1CodeableConceptActual component result
Slice: Unordered, Open by type:$this
..... valueCodeableConcept S1..1CodeableConceptActual component result
Binding: Separation Reason Value Set (required)

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation I0..*ObservationMeasurements and simple assertions
... id Σ1..1stringLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..1IdentifierBusiness Identifier for observation
... status ?!SΣ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.


.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ0..*CodingCode defined by a terminology system

Required Pattern: At least the following
..... 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/observation-category
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: social-history
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... 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://loinc.org
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 87511-2
..... 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 Veteran)Who and/or what the observation is about
... Slices for effective[x] Σ1..1PeriodClinically relevant time/time-period for observation
Slice: Unordered, Closed by type:$this
.... effective[x]:effectivePeriod SΣ1..1PeriodClinically relevant time/time-period for observation
..... id 0..1stringUnique id for inter-element referencing
..... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... start SΣI1..1dateTimeStarting time with inclusive boundary
..... end SΣI0..1dateTimeEnd time with inclusive boundary, if not ongoing
... value[x] ΣI0..1Actual result
.... valueQuantityQuantity
.... valueCodeableConceptCodeableConcept
.... valueStringstring
.... valueBooleanboolean
.... valueIntegerinteger
.... valueRangeRange
.... valueRatioRatio
.... valueSampledDataSampledData
.... valueTimetime
.... valueDateTimedateTime
.... valuePeriodPeriod
... note 0..*AnnotationComments about the observation
... Slices for hasMember Σ0..*Reference(Observation | QuestionnaireResponse | MolecularSequence)Related resource that belongs to the Observation group
Slice: Unordered, Open by profile:$this.resolve()
.... hasMember:DeploymentEpisode SΣ0..*Reference(Deployment Episode)Related resource that belongs to the Observation group
.... hasMember:MilitaryOccupation SΣ0..*Reference(Military Occupation)Related resource that belongs to the Observation group
... Slices for component SΣ2..*BackboneElementComponent results
Slice: Unordered, Open by pattern: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:military-service-Industry Σ1..1BackboneElementComponent results
..... 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.


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://loinc.org
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 86188-0
....... display1..1stringRepresentation defined by the system
Fixed Value: History of Occupation industry
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... Slices for value[x] Σ1..1CodeableConceptActual component result
Slice: Unordered, Closed by type:$this
...... value[x]:valueCodeableConcept Σ1..1CodeableConceptActual component result
Binding: Military Branch Value Set (required)
..... 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:military-service-DischargeStatus Σ1..1BackboneElementComponent results
..... 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.


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: https://www.logicahealth.org/solutions/solor/military-service
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 9B7095A70B024CD789A36E48A3936592
....... display1..1stringRepresentation defined by the system
Fixed Value: Discharge Status
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... Slices for value[x] Σ1..1CodeableConceptActual component result
Slice: Unordered, Closed by type:$this
...... value[x]:valueCodeableConcept SΣ1..1CodeableConceptActual component result
Binding: Discharge Status Value Set (required)
..... 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:military-service-SeparationReason Σ0..1BackboneElementComponent results
..... 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.


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: https://www.logicahealth.org/solutions/solor/military-service
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 9CEAD6537D6A4F198549F70598B8F8BF
....... display1..1stringRepresentation defined by the system
Fixed Value: Separation Reason
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... Slices for value[x] Σ1..1CodeableConceptActual component result
Slice: Unordered, Closed by type:$this
...... value[x]:valueCodeableConcept SΣ1..1CodeableConceptActual component result
Binding: Separation Reason Value Set (required)
..... 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..*ObservationMeasurements and simple assertions
... status ?!Σ1..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required): Codes providing the status of an observation.

... 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://loinc.org
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 87511-2
... subject Σ1..1Reference(US Veteran)Who and/or what the observation is about
.... start ΣI1..1dateTimeStarting time with inclusive boundary
.... end ΣI0..1dateTimeEnd time with inclusive boundary, if not ongoing
... hasMember:DeploymentEpisode Σ0..*Reference(Deployment Episode)Related resource that belongs to the Observation group
... hasMember:MilitaryOccupation Σ0..*Reference(Military Occupation)Related resource that belongs to the Observation group
... Slices for component Σ2..*BackboneElementComponent results
Slice: Unordered, Open by pattern:code
.... component:military-service-DischargeStatus Σ1..1BackboneElementComponent results
..... value[x]:valueCodeableConcept Σ1..1CodeableConceptActual component result
Binding: Discharge Status Value Set (required)
.... component:military-service-SeparationReason Σ0..1BackboneElementComponent results
..... value[x]:valueCodeableConcept Σ1..1CodeableConceptActual component result
Binding: Separation Reason Value Set (required)

doco Documentation for this format

This structure is derived from Observation

Summary

Mandatory: 11 elements (2 nested mandatory elements)
Must-Support: 11 elements
Prohibited: 14 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element Observation.effective[x] is sliced based on the value of type:$this
  • The element Observation.hasMember is sliced based on the value of profile:$this.resolve()
  • The element Observation.component is sliced based on the value of pattern:code
  • The element Observation.component.value[x] is sliced based on the value of type:$this

Differential View

This structure is derived from Observation

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 0..*ObservationMeasurements and simple assertions
... id 1..1stringLogical id of this artifact
... identifier 0..1IdentifierBusiness Identifier for observation
... basedOn 0..0
... status S1..1coderegistered | preliminary | final | amended +
... category
.... coding 0..*CodingCode defined by a terminology system
Required Pattern: At least the following
..... system1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: social-history
... code S1..1CodeableConceptType of observation (code / type)
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://loinc.org
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 87511-2
... subject S1..1Reference(US Veteran)Who and/or what the observation is about
... focus 0..0
... encounter 0..0
... Slices for effective[x] 1..1PeriodClinically relevant time/time-period for observation
Slice: Unordered, Open by type:$this
... effectivePeriod S1..1PeriodClinically relevant time/time-period for observation
.... start S1..1dateTimeStarting time with inclusive boundary
.... end S0..1dateTimeEnd time with inclusive boundary, if not ongoing
... issued 0..0
... performer 0..0
... dataAbsentReason 0..0
... interpretation 0..0
... bodySite 0..0
... method 0..0
... specimen 0..0
... device 0..0
... referenceRange 0..0
... Slices for hasMember 0..*Reference(Observation | QuestionnaireResponse | MolecularSequence)Related resource that belongs to the Observation group
Slice: Unordered, Open by profile:$this.resolve()
.... hasMember:DeploymentEpisode S0..*Reference(Deployment Episode)Related resource that belongs to the Observation group
.... hasMember:MilitaryOccupation S0..*Reference(Military Occupation)Related resource that belongs to the Observation group
... derivedFrom 0..0
... Slices for component S2..*BackboneElementComponent results
Slice: Unordered, Open by pattern:code
.... component:military-service-Industry 1..1BackboneElementComponent results
..... code 1..1CodeableConceptType of component observation (code / type)
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://loinc.org
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 86188-0
....... display1..1stringRepresentation defined by the system
Fixed Value: History of Occupation industry
..... Slices for value[x] 1..1CodeableConceptActual component result
Slice: Unordered, Open by type:$this
..... valueCodeableConcept 1..1CodeableConceptActual component result
Binding: Military Branch Value Set (required)
.... component:military-service-DischargeStatus 1..1BackboneElementComponent results
..... code 1..1CodeableConceptType of component observation (code / type)
Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: https://www.logicahealth.org/solutions/solor/military-service
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 9B7095A70B024CD789A36E48A3936592
....... display1..1stringRepresentation defined by the system
Fixed Value: Discharge Status
..... Slices for value[x] 1..1CodeableConceptActual component result
Slice: Unordered, Open by type:$this
..... valueCodeableConcept S1..1CodeableConceptActual component result
Binding: Discharge Status Value Set (required)
.... component:military-service-SeparationReason 0..1BackboneElementComponent results
..... code 1..1CodeableConceptType of component observation (code / type)
Required Pattern: At least the following
...... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
....... system1..1uriIdentity of the terminology system
Fixed Value: https://www.logicahealth.org/solutions/solor/military-service
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 9CEAD6537D6A4F198549F70598B8F8BF
....... display1..1stringRepresentation defined by the system
Fixed Value: Separation Reason
..... Slices for value[x] 1..1CodeableConceptActual component result
Slice: Unordered, Open by type:$this
..... valueCodeableConcept S1..1CodeableConceptActual component result
Binding: Separation Reason Value Set (required)

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation I0..*ObservationMeasurements and simple assertions
... id Σ1..1stringLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..1IdentifierBusiness Identifier for observation
... status ?!SΣ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.


.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ0..*CodingCode defined by a terminology system

Required Pattern: At least the following
..... 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/observation-category
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: social-history
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... 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://loinc.org
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 87511-2
..... 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 Veteran)Who and/or what the observation is about
... Slices for effective[x] Σ1..1PeriodClinically relevant time/time-period for observation
Slice: Unordered, Closed by type:$this
.... effective[x]:effectivePeriod SΣ1..1PeriodClinically relevant time/time-period for observation
..... id 0..1stringUnique id for inter-element referencing
..... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... start SΣI1..1dateTimeStarting time with inclusive boundary
..... end SΣI0..1dateTimeEnd time with inclusive boundary, if not ongoing
... value[x] ΣI0..1Actual result
.... valueQuantityQuantity
.... valueCodeableConceptCodeableConcept
.... valueStringstring
.... valueBooleanboolean
.... valueIntegerinteger
.... valueRangeRange
.... valueRatioRatio
.... valueSampledDataSampledData
.... valueTimetime
.... valueDateTimedateTime
.... valuePeriodPeriod
... note 0..*AnnotationComments about the observation
... Slices for hasMember Σ0..*Reference(Observation | QuestionnaireResponse | MolecularSequence)Related resource that belongs to the Observation group
Slice: Unordered, Open by profile:$this.resolve()
.... hasMember:DeploymentEpisode SΣ0..*Reference(Deployment Episode)Related resource that belongs to the Observation group
.... hasMember:MilitaryOccupation SΣ0..*Reference(Military Occupation)Related resource that belongs to the Observation group
... Slices for component SΣ2..*BackboneElementComponent results
Slice: Unordered, Open by pattern: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:military-service-Industry Σ1..1BackboneElementComponent results
..... 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.


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://loinc.org
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 86188-0
....... display1..1stringRepresentation defined by the system
Fixed Value: History of Occupation industry
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... Slices for value[x] Σ1..1CodeableConceptActual component result
Slice: Unordered, Closed by type:$this
...... value[x]:valueCodeableConcept Σ1..1CodeableConceptActual component result
Binding: Military Branch Value Set (required)
..... 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:military-service-DischargeStatus Σ1..1BackboneElementComponent results
..... 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.


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: https://www.logicahealth.org/solutions/solor/military-service
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 9B7095A70B024CD789A36E48A3936592
....... display1..1stringRepresentation defined by the system
Fixed Value: Discharge Status
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... Slices for value[x] Σ1..1CodeableConceptActual component result
Slice: Unordered, Closed by type:$this
...... value[x]:valueCodeableConcept SΣ1..1CodeableConceptActual component result
Binding: Discharge Status Value Set (required)
..... 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:military-service-SeparationReason Σ0..1BackboneElementComponent results
..... 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.


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: https://www.logicahealth.org/solutions/solor/military-service
....... version0..1stringVersion of the system - if relevant
....... code1..1codeSymbol in syntax defined by the system
Fixed Value: 9CEAD6537D6A4F198549F70598B8F8BF
....... display1..1stringRepresentation defined by the system
Fixed Value: Separation Reason
....... userSelected0..1booleanIf this coding was chosen directly by the user
...... text0..1stringPlain text representation of the concept
..... Slices for value[x] Σ1..1CodeableConceptActual component result
Slice: Unordered, Closed by type:$this
...... value[x]:valueCodeableConcept SΣ1..1CodeableConceptActual component result
Binding: Separation Reason Value Set (required)
..... 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: LOINC code 87511-2
Observation.referenceRange.typepreferredObservationReferenceRangeMeaningCodes
Observation.referenceRange.appliesToexampleObservationReferenceRangeAppliesToCodes
Observation.component.codeexampleLOINCCodes
Observation.component.dataAbsentReasonextensibleDataAbsentReason
Observation.component.interpretationextensibleObservationInterpretationCodes
Observation.component:military-service-Industry.codeexamplePattern: LOINC code 86188-0("History of Occupation industry")
Observation.component:military-service-Industry.value[x]:valueCodeableConceptrequiredMilitaryBranchVS
Observation.component:military-service-Industry.dataAbsentReasonextensibleDataAbsentReason
Observation.component:military-service-Industry.interpretationextensibleObservationInterpretationCodes
Observation.component:military-service-DischargeStatus.codeexamplePattern: 9B7095A70B024CD789A36E48A3936592("Discharge Status")
Observation.component:military-service-DischargeStatus.value[x]:valueCodeableConceptrequiredDischargeStatusVS
Observation.component:military-service-DischargeStatus.dataAbsentReasonextensibleDataAbsentReason
Observation.component:military-service-DischargeStatus.interpretationextensibleObservationInterpretationCodes
Observation.component:military-service-SeparationReason.codeexamplePattern: 9CEAD6537D6A4F198549F70598B8F8BF("Separation Reason")
Observation.component:military-service-SeparationReason.value[x]:valueCodeableConceptrequiredSeparationReasonVS
Observation.component:military-service-SeparationReason.dataAbsentReasonextensibleDataAbsentReason
Observation.component:military-service-SeparationReason.interpretationextensibleObservationInterpretationCodes

Constraints

IdPathDetailsRequirements
dom-2ObservationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.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-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-5ObservationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6ObservationA resource should have narrative for robust management
: text.`div`.exists()
obs-6ObservationdataAbsentReason SHALL only be present if Observation.value[x] is not present
: dataAbsentReason.empty() or value.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.intersect(%resource.code.coding).exists()).empty()
ele-1Observation.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.categoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.category.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.category.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.category.codingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.category.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.subjectAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.effective[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.effective[x]:effectivePeriodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.effective[x]:effectivePeriod.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.effective[x]:effectivePeriod.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.effective[x]:effectivePeriod.startAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.effective[x]:effectivePeriod.endAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.noteAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.referenceRange.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.referenceRange.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.referenceRange.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.referenceRange.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.referenceRange.lowAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.referenceRange.highAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.referenceRange.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.referenceRange.appliesToAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.referenceRange.ageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.referenceRange.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.hasMemberAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.hasMember:DeploymentEpisodeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.hasMember:MilitaryOccupationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.componentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.component.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.component.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.component.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.component.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component.dataAbsentReasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component.interpretationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component.referenceRangeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-IndustryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-Industry.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.component:military-service-Industry.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.component:military-service-Industry.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.component:military-service-Industry.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.component:military-service-Industry.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-Industry.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-Industry.value[x]:valueCodeableConceptAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-Industry.dataAbsentReasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-Industry.interpretationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-Industry.referenceRangeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-DischargeStatusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-DischargeStatus.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.component:military-service-DischargeStatus.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.component:military-service-DischargeStatus.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.component:military-service-DischargeStatus.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.component:military-service-DischargeStatus.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-DischargeStatus.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-DischargeStatus.value[x]:valueCodeableConceptAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-DischargeStatus.dataAbsentReasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-DischargeStatus.interpretationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-DischargeStatus.referenceRangeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-SeparationReasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-SeparationReason.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.component:military-service-SeparationReason.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.component:military-service-SeparationReason.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Observation.component:military-service-SeparationReason.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Observation.component:military-service-SeparationReason.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-SeparationReason.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-SeparationReason.value[x]:valueCodeableConceptAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-SeparationReason.dataAbsentReasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-SeparationReason.interpretationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Observation.component:military-service-SeparationReason.referenceRangeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())