Da Vinci - Coverage Requirements Discovery
2.0.1 - STU 2 United States of America flag

This page is part of the Da Vinci Coverage Requirements Discovery (CRD) FHIR IG (v2.0.1: STU 2.0) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions

Resource Profile: CRD Encounter

Official URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-encounter Version: 2.0.1
Standards status: Trial-use Maturity Level: 2 Computable Name: Encounter

This profile specifies additional extensions and constraints on the US Core Encounter profile to support coverage requirements discovery.

Usage


CRD Clients SHALL use this profile to resolve references to Encounter resources passed to CRD Servers, including encounterId context references when invoking the following CDS Hooks:

Information provided in Must Support elements will commonly be required for CRD Servers to perform coverage requirements discovery.

Usage:

Formal Views of Profile Content

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

This structure is derived from USCoreEncounterProfile

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter USCoreEncounterProfile
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... Coverage-Information S0..*(Complex)CoverageInfo
URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information
... serviceType S0..1CodeableConceptSpecific type of service
... basedOn 0..*Reference(CRD Service Request)The ServiceRequest that initiated this encounter
... participant
.... individual 0..1Reference(CRD Practitioner)Persons involved in the encounter other than the patient
... appointment S0..*Reference(CRD Appointment)The appointment that scheduled this encounter
... length S0..1DurationQuantity of time the encounter lasted (less time absent)
... reasonReference S0..*Reference(US Core Condition Profile | Procedure)Reason the encounter takes place (reference)
... diagnosis S0..*BackboneElementThe list of diagnosis relevant to this encounter
.... condition S1..1Reference(Condition | Procedure)The diagnosis or procedure relevant to the encounter
... location
.... location 1..1Reference(CRD Location)Location the encounter takes place
.... status S0..1codeplanned | active | reserved | completed
.... period S0..1PeriodTime period during which the patient was present at the location
... partOf 0..1Reference(CRD Encounter)Another Encounter this encounter is part of

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter 0..*USCoreEncounterProfileAn interaction during which services are provided to the patient
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... Coverage-Information SC0..*(Complex)CoverageInfo
URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information
... identifier SΣ0..*IdentifierIdentifier(s) by which this encounter is known
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... system SΣ1..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ1..1stringThe value that is unique
Example General: 123456
... status ?!SΣ1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
Binding: EncounterStatus (required): Current state of the encounter.

... class SΣ1..1CodingClassification of patient encounter
Binding: ActEncounterCode (extensible): Classification of the encounter.

... type SΣ1..*CodeableConceptSpecific type of encounter
Binding: US Core Encounter Type (extensible): Valueset to describe the Encounter Type


... serviceType SΣ0..1CodeableConceptSpecific type of service
Binding: ServiceType (example): Broad categorization of the service that is to be provided.

... subject SΣ1..1Reference(CRD Patient)The patient or group present at the encounter
... basedOn 0..*Reference(CRD Service Request)The ServiceRequest that initiated this encounter
... participant SΣ0..*BackboneElementList of participants involved in the encounter
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type SΣ0..*CodeableConceptRole of participant in encounter
Binding: ParticipantType (extensible): Role of participant in encounter.


.... period S0..1PeriodPeriod of time during the encounter that the participant participated
.... individual SΣ0..1Reference(CRD Practitioner)Persons involved in the encounter other than the patient
... appointment SΣ0..*Reference(CRD Appointment)The appointment that scheduled this encounter
... period S0..1PeriodThe start and end time of the encounter
... length S0..1DurationQuantity of time the encounter lasted (less time absent)
... reasonCode SΣ0..*CodeableConceptCoded reason the encounter takes place
Binding: EncounterReasonCodes (preferred): Reason why the encounter takes place.


... reasonReference SΣ0..*Reference(US Core Condition Profile | Procedure)Reason the encounter takes place (reference)
... diagnosis SΣ0..*BackboneElementThe list of diagnosis relevant to this encounter
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... condition SΣ1..1Reference(Condition | Procedure)The diagnosis or procedure relevant to the encounter
... hospitalization S0..1BackboneElementDetails about the admission to a healthcare service
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... dischargeDisposition S0..1CodeableConceptCategory or kind of location after discharge
Binding: DischargeDisposition (example): Discharge Disposition.

... location S0..*BackboneElementList of locations where the patient has been
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... location S1..1Reference(CRD Location)Location the encounter takes place
.... status S0..1codeplanned | active | reserved | completed
Binding: EncounterLocationStatus (required): The status of the location.

.... period S0..1PeriodTime period during which the patient was present at the location
... partOf 0..1Reference(CRD Encounter)Another Encounter this encounter is part of

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Encounter.identifier.userequiredIdentifierUse
Encounter.statusrequiredEncounterStatus
Encounter.classextensibleActEncounterCode
Encounter.typeextensibleUSCoreEncounterType
Encounter.serviceTypeexampleServiceType
Encounter.participant.typeextensibleParticipantType
Encounter.reasonCodepreferredEncounterReasonCodes
Encounter.hospitalization.dischargeDispositionexampleDischargeDisposition
Encounter.location.statusrequiredEncounterLocationStatus

Constraints

IdGradePath(s)DetailsRequirements
crd-ci-q1errorEncounter.extension:Coverage-InformationQuestionnaire and QuestionnaireResponse are only allowed when doc-needed exists and not equal to 'no-doc'
: extension.where(url='questionnaire' or url='response').exists() implies (extension.where(url = 'doc-needed').exists() and extension.where(url = 'doc-needed').all(value != 'no-doc'))
crd-ci-q2errorEncounter.extension:Coverage-InformationIf covered is set to 'not-covered', then 'pa-needed' should not exist.
: extension.where(url = 'covered' and value != 'not-covered') implies extension.where(url = 'pa-needed').exists()
crd-ci-q3errorEncounter.extension:Coverage-InformationIf 'info-needed' exists, then at least one of 'covered', 'pa-needed', or 'doc-needed' must be 'conditional'.
: extension.where(url = 'info-needed').exists() implies extension.where((url = 'covered' or url = 'pa-needed' or url = 'doc-needed') and value = 'conditional').count() >= 1
crd-ci-q4errorEncounter.extension:Coverage-InformationIf 'pa-needed' is 'satisfied', then 'Doc-purpose' can't be 'PA'.
: extension.where(url = 'pa-needed' and value = 'satisfied') and extension.where(url = 'doc-purpose').exists() implies extension.where(url = 'doc-purpose').all(value != 'PA')
crd-ci-q5errorEncounter.extension:Coverage-Information'satisfied-pa-id' must exist if and only if 'pa-needed' is set to 'satisfied'.
: extension.where(url = 'pa-needed' and value = 'satisfied').exists() = extension.where(url = 'satisfied-pa-id').exists()
dom-2errorEncounterIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorEncounterIf 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-4errorEncounterIf 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-5errorEncounterIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceEncounterA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter 0..*USCoreEncounterProfileAn interaction during which services are provided to the patient
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... 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
... Coverage-Information SC0..*(Complex)CoverageInfo
URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier SΣ0..*IdentifierIdentifier(s) by which this encounter is known
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system SΣ1..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ1..1stringThe value that is unique
Example General: 123456
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... status ?!SΣ1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
Binding: EncounterStatus (required): Current state of the encounter.

... statusHistory 0..*BackboneElementList of past encounter statuses
.... 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
.... status 1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
Binding: EncounterStatus (required): Current state of the encounter.

.... period 1..1PeriodThe time that the episode was in the specified status
... class SΣ1..1CodingClassification of patient encounter
Binding: ActEncounterCode (extensible): Classification of the encounter.

... classHistory 0..*BackboneElementList of past encounter classes
.... 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
.... class 1..1Codinginpatient | outpatient | ambulatory | emergency +
Binding: ActEncounterCode (extensible): Classification of the encounter.

.... period 1..1PeriodThe time that the episode was in the specified class
... type SΣ1..*CodeableConceptSpecific type of encounter
Binding: US Core Encounter Type (extensible): Valueset to describe the Encounter Type


... serviceType SΣ0..1CodeableConceptSpecific type of service
Binding: ServiceType (example): Broad categorization of the service that is to be provided.

... priority 0..1CodeableConceptIndicates the urgency of the encounter
Binding: ActPriority (example): Indicates the urgency of the encounter.

... subject SΣ1..1Reference(CRD Patient)The patient or group present at the encounter
... episodeOfCare Σ0..*Reference(EpisodeOfCare)Episode(s) of care that this encounter should be recorded against
... basedOn 0..*Reference(CRD Service Request)The ServiceRequest that initiated this encounter
... participant SΣ0..*BackboneElementList of participants involved in the encounter
.... 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
.... type SΣ0..*CodeableConceptRole of participant in encounter
Binding: ParticipantType (extensible): Role of participant in encounter.


.... period S0..1PeriodPeriod of time during the encounter that the participant participated
.... individual SΣ0..1Reference(CRD Practitioner)Persons involved in the encounter other than the patient
... appointment SΣ0..*Reference(CRD Appointment)The appointment that scheduled this encounter
... period S0..1PeriodThe start and end time of the encounter
... length S0..1DurationQuantity of time the encounter lasted (less time absent)
... reasonCode SΣ0..*CodeableConceptCoded reason the encounter takes place
Binding: EncounterReasonCodes (preferred): Reason why the encounter takes place.


... reasonReference SΣ0..*Reference(US Core Condition Profile | Procedure)Reason the encounter takes place (reference)
... diagnosis SΣ0..*BackboneElementThe list of diagnosis relevant to this encounter
.... 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
.... condition SΣ1..1Reference(Condition | Procedure)The diagnosis or procedure relevant to the encounter
.... use 0..1CodeableConceptRole that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
Binding: DiagnosisRole (preferred): The type of diagnosis this condition represents.

.... rank 0..1positiveIntRanking of the diagnosis (for each role type)
... account 0..*Reference(Account)The set of accounts that may be used for billing for this Encounter
... hospitalization S0..1BackboneElementDetails about the admission to a healthcare service
.... 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
.... preAdmissionIdentifier 0..1IdentifierPre-admission identifier
.... origin 0..1Reference(Location | Organization)The location/organization from which the patient came before admission
.... admitSource 0..1CodeableConceptFrom where patient was admitted (physician referral, transfer)
Binding: AdmitSource (preferred): From where the patient was admitted.

.... reAdmission 0..1CodeableConceptThe type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission
Binding: hl7VS-re-admissionIndicator (example): The reason for re-admission of this hospitalization encounter.

.... dietPreference 0..*CodeableConceptDiet preferences reported by the patient
Binding: Diet (example): Medical, cultural or ethical food preferences to help with catering requirements.


.... specialCourtesy 0..*CodeableConceptSpecial courtesies (VIP, board member)
Binding: SpecialCourtesy (preferred): Special courtesies.


.... specialArrangement 0..*CodeableConceptWheelchair, translator, stretcher, etc.
Binding: SpecialArrangements (preferred): Special arrangements.


.... destination 0..1Reference(Location | Organization)Location/organization to which the patient is discharged
.... dischargeDisposition S0..1CodeableConceptCategory or kind of location after discharge
Binding: DischargeDisposition (example): Discharge Disposition.

... location S0..*BackboneElementList of locations where the patient has been
.... 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
.... location S1..1Reference(CRD Location)Location the encounter takes place
.... status S0..1codeplanned | active | reserved | completed
Binding: EncounterLocationStatus (required): The status of the location.

.... physicalType 0..1CodeableConceptThe physical type of the location (usually the level in the location hierachy - bed room ward etc.)
Binding: LocationType (example): Physical form of the location.

.... period S0..1PeriodTime period during which the patient was present at the location
... serviceProvider 0..1Reference(Organization)The organization (facility) responsible for this encounter
... partOf 0..1Reference(CRD Encounter)Another Encounter this encounter is part of

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Encounter.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Encounter.identifier.userequiredIdentifierUse
Encounter.identifier.typeextensibleIdentifier Type Codes
Encounter.statusrequiredEncounterStatus
Encounter.statusHistory.statusrequiredEncounterStatus
Encounter.classextensibleActEncounterCode
Encounter.classHistory.classextensibleActEncounterCode
Encounter.typeextensibleUSCoreEncounterType
Encounter.serviceTypeexampleServiceType
Encounter.priorityexampleActPriority
Encounter.participant.typeextensibleParticipantType
Encounter.reasonCodepreferredEncounterReasonCodes
Encounter.diagnosis.usepreferredDiagnosisRole
Encounter.hospitalization.admitSourcepreferredAdmitSource
Encounter.hospitalization.reAdmissionexampleHl7VSReAdmissionIndicator
Encounter.hospitalization.dietPreferenceexampleDiet
Encounter.hospitalization.specialCourtesypreferredSpecialCourtesy
Encounter.hospitalization.specialArrangementpreferredSpecialArrangements
Encounter.hospitalization.dischargeDispositionexampleDischargeDisposition
Encounter.location.statusrequiredEncounterLocationStatus
Encounter.location.physicalTypeexampleLocationType

Constraints

IdGradePath(s)DetailsRequirements
crd-ci-q1errorEncounter.extension:Coverage-InformationQuestionnaire and QuestionnaireResponse are only allowed when doc-needed exists and not equal to 'no-doc'
: extension.where(url='questionnaire' or url='response').exists() implies (extension.where(url = 'doc-needed').exists() and extension.where(url = 'doc-needed').all(value != 'no-doc'))
crd-ci-q2errorEncounter.extension:Coverage-InformationIf covered is set to 'not-covered', then 'pa-needed' should not exist.
: extension.where(url = 'covered' and value != 'not-covered') implies extension.where(url = 'pa-needed').exists()
crd-ci-q3errorEncounter.extension:Coverage-InformationIf 'info-needed' exists, then at least one of 'covered', 'pa-needed', or 'doc-needed' must be 'conditional'.
: extension.where(url = 'info-needed').exists() implies extension.where((url = 'covered' or url = 'pa-needed' or url = 'doc-needed') and value = 'conditional').count() >= 1
crd-ci-q4errorEncounter.extension:Coverage-InformationIf 'pa-needed' is 'satisfied', then 'Doc-purpose' can't be 'PA'.
: extension.where(url = 'pa-needed' and value = 'satisfied') and extension.where(url = 'doc-purpose').exists() implies extension.where(url = 'doc-purpose').all(value != 'PA')
crd-ci-q5errorEncounter.extension:Coverage-Information'satisfied-pa-id' must exist if and only if 'pa-needed' is set to 'satisfied'.
: extension.where(url = 'pa-needed' and value = 'satisfied').exists() = extension.where(url = 'satisfied-pa-id').exists()
dom-2errorEncounterIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorEncounterIf 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-4errorEncounterIf 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-5errorEncounterIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceEncounterA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Differential View

This structure is derived from USCoreEncounterProfile

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter USCoreEncounterProfile
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... Coverage-Information S0..*(Complex)CoverageInfo
URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information
... serviceType S0..1CodeableConceptSpecific type of service
... basedOn 0..*Reference(CRD Service Request)The ServiceRequest that initiated this encounter
... participant
.... individual 0..1Reference(CRD Practitioner)Persons involved in the encounter other than the patient
... appointment S0..*Reference(CRD Appointment)The appointment that scheduled this encounter
... length S0..1DurationQuantity of time the encounter lasted (less time absent)
... reasonReference S0..*Reference(US Core Condition Profile | Procedure)Reason the encounter takes place (reference)
... diagnosis S0..*BackboneElementThe list of diagnosis relevant to this encounter
.... condition S1..1Reference(Condition | Procedure)The diagnosis or procedure relevant to the encounter
... location
.... location 1..1Reference(CRD Location)Location the encounter takes place
.... status S0..1codeplanned | active | reserved | completed
.... period S0..1PeriodTime period during which the patient was present at the location
... partOf 0..1Reference(CRD Encounter)Another Encounter this encounter is part of

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter 0..*USCoreEncounterProfileAn interaction during which services are provided to the patient
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... Coverage-Information SC0..*(Complex)CoverageInfo
URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information
... identifier SΣ0..*IdentifierIdentifier(s) by which this encounter is known
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... system SΣ1..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ1..1stringThe value that is unique
Example General: 123456
... status ?!SΣ1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
Binding: EncounterStatus (required): Current state of the encounter.

... class SΣ1..1CodingClassification of patient encounter
Binding: ActEncounterCode (extensible): Classification of the encounter.

... type SΣ1..*CodeableConceptSpecific type of encounter
Binding: US Core Encounter Type (extensible): Valueset to describe the Encounter Type


... serviceType SΣ0..1CodeableConceptSpecific type of service
Binding: ServiceType (example): Broad categorization of the service that is to be provided.

... subject SΣ1..1Reference(CRD Patient)The patient or group present at the encounter
... basedOn 0..*Reference(CRD Service Request)The ServiceRequest that initiated this encounter
... participant SΣ0..*BackboneElementList of participants involved in the encounter
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type SΣ0..*CodeableConceptRole of participant in encounter
Binding: ParticipantType (extensible): Role of participant in encounter.


.... period S0..1PeriodPeriod of time during the encounter that the participant participated
.... individual SΣ0..1Reference(CRD Practitioner)Persons involved in the encounter other than the patient
... appointment SΣ0..*Reference(CRD Appointment)The appointment that scheduled this encounter
... period S0..1PeriodThe start and end time of the encounter
... length S0..1DurationQuantity of time the encounter lasted (less time absent)
... reasonCode SΣ0..*CodeableConceptCoded reason the encounter takes place
Binding: EncounterReasonCodes (preferred): Reason why the encounter takes place.


... reasonReference SΣ0..*Reference(US Core Condition Profile | Procedure)Reason the encounter takes place (reference)
... diagnosis SΣ0..*BackboneElementThe list of diagnosis relevant to this encounter
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... condition SΣ1..1Reference(Condition | Procedure)The diagnosis or procedure relevant to the encounter
... hospitalization S0..1BackboneElementDetails about the admission to a healthcare service
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... dischargeDisposition S0..1CodeableConceptCategory or kind of location after discharge
Binding: DischargeDisposition (example): Discharge Disposition.

... location S0..*BackboneElementList of locations where the patient has been
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... location S1..1Reference(CRD Location)Location the encounter takes place
.... status S0..1codeplanned | active | reserved | completed
Binding: EncounterLocationStatus (required): The status of the location.

.... period S0..1PeriodTime period during which the patient was present at the location
... partOf 0..1Reference(CRD Encounter)Another Encounter this encounter is part of

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Encounter.identifier.userequiredIdentifierUse
Encounter.statusrequiredEncounterStatus
Encounter.classextensibleActEncounterCode
Encounter.typeextensibleUSCoreEncounterType
Encounter.serviceTypeexampleServiceType
Encounter.participant.typeextensibleParticipantType
Encounter.reasonCodepreferredEncounterReasonCodes
Encounter.hospitalization.dischargeDispositionexampleDischargeDisposition
Encounter.location.statusrequiredEncounterLocationStatus

Constraints

IdGradePath(s)DetailsRequirements
crd-ci-q1errorEncounter.extension:Coverage-InformationQuestionnaire and QuestionnaireResponse are only allowed when doc-needed exists and not equal to 'no-doc'
: extension.where(url='questionnaire' or url='response').exists() implies (extension.where(url = 'doc-needed').exists() and extension.where(url = 'doc-needed').all(value != 'no-doc'))
crd-ci-q2errorEncounter.extension:Coverage-InformationIf covered is set to 'not-covered', then 'pa-needed' should not exist.
: extension.where(url = 'covered' and value != 'not-covered') implies extension.where(url = 'pa-needed').exists()
crd-ci-q3errorEncounter.extension:Coverage-InformationIf 'info-needed' exists, then at least one of 'covered', 'pa-needed', or 'doc-needed' must be 'conditional'.
: extension.where(url = 'info-needed').exists() implies extension.where((url = 'covered' or url = 'pa-needed' or url = 'doc-needed') and value = 'conditional').count() >= 1
crd-ci-q4errorEncounter.extension:Coverage-InformationIf 'pa-needed' is 'satisfied', then 'Doc-purpose' can't be 'PA'.
: extension.where(url = 'pa-needed' and value = 'satisfied') and extension.where(url = 'doc-purpose').exists() implies extension.where(url = 'doc-purpose').all(value != 'PA')
crd-ci-q5errorEncounter.extension:Coverage-Information'satisfied-pa-id' must exist if and only if 'pa-needed' is set to 'satisfied'.
: extension.where(url = 'pa-needed' and value = 'satisfied').exists() = extension.where(url = 'satisfied-pa-id').exists()
dom-2errorEncounterIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorEncounterIf 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-4errorEncounterIf 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-5errorEncounterIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceEncounterA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter 0..*USCoreEncounterProfileAn interaction during which services are provided to the patient
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... 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
... Coverage-Information SC0..*(Complex)CoverageInfo
URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier SΣ0..*IdentifierIdentifier(s) by which this encounter is known
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

.... system SΣ1..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value SΣ1..1stringThe value that is unique
Example General: 123456
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... status ?!SΣ1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
Binding: EncounterStatus (required): Current state of the encounter.

... statusHistory 0..*BackboneElementList of past encounter statuses
.... 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
.... status 1..1codeplanned | arrived | triaged | in-progress | onleave | finished | cancelled +
Binding: EncounterStatus (required): Current state of the encounter.

.... period 1..1PeriodThe time that the episode was in the specified status
... class SΣ1..1CodingClassification of patient encounter
Binding: ActEncounterCode (extensible): Classification of the encounter.

... classHistory 0..*BackboneElementList of past encounter classes
.... 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
.... class 1..1Codinginpatient | outpatient | ambulatory | emergency +
Binding: ActEncounterCode (extensible): Classification of the encounter.

.... period 1..1PeriodThe time that the episode was in the specified class
... type SΣ1..*CodeableConceptSpecific type of encounter
Binding: US Core Encounter Type (extensible): Valueset to describe the Encounter Type


... serviceType SΣ0..1CodeableConceptSpecific type of service
Binding: ServiceType (example): Broad categorization of the service that is to be provided.

... priority 0..1CodeableConceptIndicates the urgency of the encounter
Binding: ActPriority (example): Indicates the urgency of the encounter.

... subject SΣ1..1Reference(CRD Patient)The patient or group present at the encounter
... episodeOfCare Σ0..*Reference(EpisodeOfCare)Episode(s) of care that this encounter should be recorded against
... basedOn 0..*Reference(CRD Service Request)The ServiceRequest that initiated this encounter
... participant SΣ0..*BackboneElementList of participants involved in the encounter
.... 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
.... type SΣ0..*CodeableConceptRole of participant in encounter
Binding: ParticipantType (extensible): Role of participant in encounter.


.... period S0..1PeriodPeriod of time during the encounter that the participant participated
.... individual SΣ0..1Reference(CRD Practitioner)Persons involved in the encounter other than the patient
... appointment SΣ0..*Reference(CRD Appointment)The appointment that scheduled this encounter
... period S0..1PeriodThe start and end time of the encounter
... length S0..1DurationQuantity of time the encounter lasted (less time absent)
... reasonCode SΣ0..*CodeableConceptCoded reason the encounter takes place
Binding: EncounterReasonCodes (preferred): Reason why the encounter takes place.


... reasonReference SΣ0..*Reference(US Core Condition Profile | Procedure)Reason the encounter takes place (reference)
... diagnosis SΣ0..*BackboneElementThe list of diagnosis relevant to this encounter
.... 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
.... condition SΣ1..1Reference(Condition | Procedure)The diagnosis or procedure relevant to the encounter
.... use 0..1CodeableConceptRole that this diagnosis has within the encounter (e.g. admission, billing, discharge …)
Binding: DiagnosisRole (preferred): The type of diagnosis this condition represents.

.... rank 0..1positiveIntRanking of the diagnosis (for each role type)
... account 0..*Reference(Account)The set of accounts that may be used for billing for this Encounter
... hospitalization S0..1BackboneElementDetails about the admission to a healthcare service
.... 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
.... preAdmissionIdentifier 0..1IdentifierPre-admission identifier
.... origin 0..1Reference(Location | Organization)The location/organization from which the patient came before admission
.... admitSource 0..1CodeableConceptFrom where patient was admitted (physician referral, transfer)
Binding: AdmitSource (preferred): From where the patient was admitted.

.... reAdmission 0..1CodeableConceptThe type of hospital re-admission that has occurred (if any). If the value is absent, then this is not identified as a readmission
Binding: hl7VS-re-admissionIndicator (example): The reason for re-admission of this hospitalization encounter.

.... dietPreference 0..*CodeableConceptDiet preferences reported by the patient
Binding: Diet (example): Medical, cultural or ethical food preferences to help with catering requirements.


.... specialCourtesy 0..*CodeableConceptSpecial courtesies (VIP, board member)
Binding: SpecialCourtesy (preferred): Special courtesies.


.... specialArrangement 0..*CodeableConceptWheelchair, translator, stretcher, etc.
Binding: SpecialArrangements (preferred): Special arrangements.


.... destination 0..1Reference(Location | Organization)Location/organization to which the patient is discharged
.... dischargeDisposition S0..1CodeableConceptCategory or kind of location after discharge
Binding: DischargeDisposition (example): Discharge Disposition.

... location S0..*BackboneElementList of locations where the patient has been
.... 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
.... location S1..1Reference(CRD Location)Location the encounter takes place
.... status S0..1codeplanned | active | reserved | completed
Binding: EncounterLocationStatus (required): The status of the location.

.... physicalType 0..1CodeableConceptThe physical type of the location (usually the level in the location hierachy - bed room ward etc.)
Binding: LocationType (example): Physical form of the location.

.... period S0..1PeriodTime period during which the patient was present at the location
... serviceProvider 0..1Reference(Organization)The organization (facility) responsible for this encounter
... partOf 0..1Reference(CRD Encounter)Another Encounter this encounter is part of

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Encounter.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Encounter.identifier.userequiredIdentifierUse
Encounter.identifier.typeextensibleIdentifier Type Codes
Encounter.statusrequiredEncounterStatus
Encounter.statusHistory.statusrequiredEncounterStatus
Encounter.classextensibleActEncounterCode
Encounter.classHistory.classextensibleActEncounterCode
Encounter.typeextensibleUSCoreEncounterType
Encounter.serviceTypeexampleServiceType
Encounter.priorityexampleActPriority
Encounter.participant.typeextensibleParticipantType
Encounter.reasonCodepreferredEncounterReasonCodes
Encounter.diagnosis.usepreferredDiagnosisRole
Encounter.hospitalization.admitSourcepreferredAdmitSource
Encounter.hospitalization.reAdmissionexampleHl7VSReAdmissionIndicator
Encounter.hospitalization.dietPreferenceexampleDiet
Encounter.hospitalization.specialCourtesypreferredSpecialCourtesy
Encounter.hospitalization.specialArrangementpreferredSpecialArrangements
Encounter.hospitalization.dischargeDispositionexampleDischargeDisposition
Encounter.location.statusrequiredEncounterLocationStatus
Encounter.location.physicalTypeexampleLocationType

Constraints

IdGradePath(s)DetailsRequirements
crd-ci-q1errorEncounter.extension:Coverage-InformationQuestionnaire and QuestionnaireResponse are only allowed when doc-needed exists and not equal to 'no-doc'
: extension.where(url='questionnaire' or url='response').exists() implies (extension.where(url = 'doc-needed').exists() and extension.where(url = 'doc-needed').all(value != 'no-doc'))
crd-ci-q2errorEncounter.extension:Coverage-InformationIf covered is set to 'not-covered', then 'pa-needed' should not exist.
: extension.where(url = 'covered' and value != 'not-covered') implies extension.where(url = 'pa-needed').exists()
crd-ci-q3errorEncounter.extension:Coverage-InformationIf 'info-needed' exists, then at least one of 'covered', 'pa-needed', or 'doc-needed' must be 'conditional'.
: extension.where(url = 'info-needed').exists() implies extension.where((url = 'covered' or url = 'pa-needed' or url = 'doc-needed') and value = 'conditional').count() >= 1
crd-ci-q4errorEncounter.extension:Coverage-InformationIf 'pa-needed' is 'satisfied', then 'Doc-purpose' can't be 'PA'.
: extension.where(url = 'pa-needed' and value = 'satisfied') and extension.where(url = 'doc-purpose').exists() implies extension.where(url = 'doc-purpose').all(value != 'PA')
crd-ci-q5errorEncounter.extension:Coverage-Information'satisfied-pa-id' must exist if and only if 'pa-needed' is set to 'satisfied'.
: extension.where(url = 'pa-needed' and value = 'satisfied').exists() = extension.where(url = 'satisfied-pa-id').exists()
dom-2errorEncounterIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorEncounterIf 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-4errorEncounterIf 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-5errorEncounterIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceEncounterA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

 

Other representations of profile: CSV, Excel, Schematron