Encounter (MY Core)

Defining URL http://fhir.hie.moh.gov.my/StructureDefinition/Encounter-my-core
Version 1.0.0
Name EncounterMyCore
Definition An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s)or assessing the health status of a patient.
Title Encounter (MY Core)
Status Active as of 11-3-2022
Publisher Malaysia MOH - HIE Steering Committee
Copyright Used by permission of HL7 International, all rights reserved Creative Commons License

Encounter
DefinitionAn interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient.
Cardinality0...*
AliasVisit
Invariants
  • dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
    contained.contained.empty()
  • dom-4: If 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-3: If 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-6: A resource should have narrative for robust management
    text.`div`.exists()
  • dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
    contained.meta.security.empty()
Mappings
  • rim: Entity. Role, or Act
  • workflow: Event
  • rim: Encounter[@moodCode='EVN']
Encounter.id
DefinitionThe logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
Cardinality0...1
Typestring
SummaryTrue
Comments

The only time that a resource does not have an id is when it is being submitted to the server using a create operation.

Encounter.meta
DefinitionThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
Cardinality0...1
TypeMeta
SummaryTrue
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • rim: N/A
Encounter.implicitRules
DefinitionA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Cardinality0...1
Typeuri
ModifierTrue
SummaryTrue
Comments

Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
Encounter.language
DefinitionThe base language in which the resource is written.
Cardinality0...1
Typecode
Binding

A human language.

CommonLanguages (preferred)
Comments

Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
Encounter.text
DefinitionA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
Cardinality0...1
TypeNarrative
Aliasnarrative, html, xhtml, display
Comments

Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • rim: N/A
  • rim: Act.text?
Encounter.contained
DefinitionThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Cardinality0...*
TypeResource
Aliasinline resources, anonymous resources, contained resources
Comments

This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.

Mappings
  • rim: Entity. Role, or Act
  • rim: N/A
Encounter.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.extension:audit
DefinitionExtension of the individual who recorded and updated the date
Cardinality0...1
TypeExtension(Complex)
Aliasextensions, user content
Comments

Record audit on individual who recorded and updated the data

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.extension:outcome
DefinitionExtension about the outcome of an encounter
Cardinality0...1
TypeExtension(Complex)
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.extension:visitType
DefinitionExtension to determine the visit type
Cardinality0...1
TypeExtension(CodeableConcept)
Aliasextensions, user content
Comments

visit type

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.extension:internalReferral
DefinitionExtension whether this Encounter is from an internal or external referral
Cardinality0...1
TypeExtension(boolean)
Aliasextensions, user content
Comments

Extension whether this Encounter is from an internal or external referral

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.extension:Rating
DefinitionExtension about the rating of an encounter
Cardinality0...1
TypeExtension(Complex)
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.extension:ncdVcDx
DefinitionExtension to define the outcome diagnosis of a Virtual Consultation (To fulfil their analytics requirement)
Cardinality0...*
TypeExtension(Complex)
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.extension:policeCase
DefinitionExtension whether this Encounter is directly created as part of a police case investigation
Cardinality0...*
TypeExtension(boolean)
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.extension:vrStatus
DefinitionExtension about the current status of the virtual consultation session
Cardinality0...*
TypeExtension(CodeableConcept)
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.modifierExtension
DefinitionMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
Cardinality0...*
TypeExtension
ModifierTrue
Aliasextensions, user content
Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.identifier
DefinitionIdentifier(s) by which this encounter is known.
Cardinality0...*
TypeIdentifier
SummaryTrue
SlicingUnordered, Open, by system(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CX / EI (occasionally, more often EI maps to a resource id or a URL)
  • rim: II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
  • servd: Identifier
  • workflow: Event.identifier
  • w5: FiveWs.identifier
  • v2: PV1-19
  • rim: .id
Encounter.identifier:encounterNo
DefinitionIdentifier(s) by which this encounter is known.
Cardinality0...*
TypeIdentifier
SummaryTrue
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CX / EI (occasionally, more often EI maps to a resource id or a URL)
  • rim: II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
  • servd: Identifier
  • workflow: Event.identifier
  • w5: FiveWs.identifier
  • v2: PV1-19
  • rim: .id
Encounter.identifier:encounterNo.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.identifier:encounterNo.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.identifier:encounterNo.use
DefinitionThe purpose of this identifier.
Cardinality0...1
Typecode
Binding

Identifies the purpose for this identifier, if known .

IdentifierUse (required)
ModifierTrue
SummaryTrue
Requirements

Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.

Comments

Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: N/A
  • rim: Role.code or implied by context
Encounter.identifier:encounterNo.type
DefinitionA coded type for the identifier that can be used to determine which identifier to use for a specific purpose.
Cardinality0...1
TypeCodeableConcept
Binding

A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

Identifier Type Codes (extensible)
SummaryTrue
Requirements

Allows users to make use of identifiers when the identifier system is not known.

Comments

This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
  • v2: CX.5
  • rim: Role.code or implied by context
Encounter.identifier:encounterNo.system
DefinitionEstablishes the namespace for the value - that is, a URL that describes a set values that are unique.
Cardinality0...1
Typeuri
SummaryTrue
Requirements

There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.

Comments

Identifier.system is always case sensitive.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Fixed Value

http://fhir.hie.moh.gov.my/sid/encounter-id

Mappings
  • rim: n/a
  • v2: CX.4 / EI-2-4
  • rim: II.root or Role.id.root
  • servd: ./IdentifierType
Encounter.identifier:encounterNo.value
DefinitionThe portion of the identifier typically relevant to the user and which is unique within the context of the system.
Cardinality0...1
Typestring
SummaryTrue
Comments

If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

123456


Mappings
  • rim: n/a
  • v2: CX.1 / EI.1
  • rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
  • servd: ./Value
Encounter.identifier:encounterNo.period
DefinitionTime period during which identifier is/was valid for use.
Cardinality0...1
TypePeriod
SummaryTrue
Comments

A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times").

Period is not used for a duration (a measure of elapsed time). See Duration.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • per-1: If present, start SHALL have a lower value than end
    start.hasValue().not() or end.hasValue().not() or (start <= end)
Mappings
  • rim: n/a
  • v2: DR
  • rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
  • v2: CX.7 + CX.8
  • rim: Role.effectiveTime or implied by context
  • servd: ./StartDate and ./EndDate
Encounter.identifier:encounterNo.assigner
DefinitionOrganization that issued/manages the identifier.
Cardinality0...1
TypeReference(Organization)
SummaryTrue
Comments

The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • v2: CX.4 / (CX.4,CX.9,CX.10)
  • rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • servd: ./IdentifierIssuingAuthority
Encounter.identifier:vcToken
DefinitionIdentifier(s) by which this encounter is known.
Cardinality0...1
TypeIdentifier
SummaryTrue
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CX / EI (occasionally, more often EI maps to a resource id or a URL)
  • rim: II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
  • servd: Identifier
  • workflow: Event.identifier
  • w5: FiveWs.identifier
  • v2: PV1-19
  • rim: .id
Encounter.identifier:vcToken.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.identifier:vcToken.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.identifier:vcToken.use
DefinitionThe purpose of this identifier.
Cardinality0...1
Typecode
Binding

Identifies the purpose for this identifier, if known .

IdentifierUse (required)
ModifierTrue
SummaryTrue
Requirements

Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.

Comments

Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: N/A
  • rim: Role.code or implied by context
Encounter.identifier:vcToken.type
DefinitionA coded type for the identifier that can be used to determine which identifier to use for a specific purpose.
Cardinality0...1
TypeCodeableConcept
Binding

A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

Identifier Type Codes (extensible)
SummaryTrue
Requirements

Allows users to make use of identifiers when the identifier system is not known.

Comments

This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
  • v2: CX.5
  • rim: Role.code or implied by context
Encounter.identifier:vcToken.system
DefinitionEstablishes the namespace for the value - that is, a URL that describes a set values that are unique.
Cardinality0...1
Typeuri
SummaryTrue
Requirements

There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.

Comments

Identifier.system is always case sensitive.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Fixed Value

http://fhir.hie.moh.gov.my/sid/vc-token

Mappings
  • rim: n/a
  • v2: CX.4 / EI-2-4
  • rim: II.root or Role.id.root
  • servd: ./IdentifierType
Encounter.identifier:vcToken.value
DefinitionThe portion of the identifier typically relevant to the user and which is unique within the context of the system.
Cardinality0...1
Typestring
SummaryTrue
Comments

If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

123456


Mappings
  • rim: n/a
  • v2: CX.1 / EI.1
  • rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
  • servd: ./Value
Encounter.identifier:vcToken.period
DefinitionTime period during which identifier is/was valid for use.
Cardinality0...1
TypePeriod
SummaryTrue
Comments

A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times").

Period is not used for a duration (a measure of elapsed time). See Duration.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • per-1: If present, start SHALL have a lower value than end
    start.hasValue().not() or end.hasValue().not() or (start <= end)
Mappings
  • rim: n/a
  • v2: DR
  • rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
  • v2: CX.7 + CX.8
  • rim: Role.effectiveTime or implied by context
  • servd: ./StartDate and ./EndDate
Encounter.identifier:vcToken.assigner
DefinitionOrganization that issued/manages the identifier.
Cardinality0...1
TypeReference(Organization)
SummaryTrue
Comments

The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • v2: CX.4 / (CX.4,CX.9,CX.10)
  • rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • servd: ./IdentifierIssuingAuthority
Encounter.status
Definitionarrived | in-progress | finished | unknown
Cardinality1...1
Typecode
Binding

Current state of the encounter.

ValueSetEncounterStatusMyCore (required)
ModifierTrue
SummaryTrue
Comments

Note that internal business rules will determine the appropriate transitions that may occur between statuses (and also classes).

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • workflow: Event.status
  • w5: FiveWs.status
  • v2: No clear equivalent in HL7 v2; active/finished could be inferred from PV1-44, PV1-45, PV2-24; inactive could be inferred from PV2-16
  • rim: .statusCode
Encounter.statusHistory
DefinitionThe status history permits the encounter resource to contain the status history without needing to read through the historical versions of the resource, or even have the server store them.
Cardinality0...*
TypeBackboneElement
Comments

The current status is always found in the current version of the resource, not the status history.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
Encounter.statusHistory.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.statusHistory.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.statusHistory.modifierExtension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
Cardinality0...*
TypeExtension
ModifierTrue
SummaryTrue
Aliasextensions, user content, modifiers
Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.statusHistory.status
Definitionplanned | arrived | triaged | in-progress | onleave | finished | cancelled +.
Cardinality1...1
Typecode
Binding

Current state of the encounter.

EncounterStatus (required)
Comments

Note that FHIR strings SHALL NOT exceed 1MB in size

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
Encounter.statusHistory.period
DefinitionThe time that the episode was in the specified status.
Cardinality1...1
TypePeriod
Comments

A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times").

Period is not used for a duration (a measure of elapsed time). See Duration.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • per-1: If present, start SHALL have a lower value than end
    start.hasValue().not() or end.hasValue().not() or (start <= end)
Mappings
  • rim: n/a
  • v2: DR
  • rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
Encounter.class
DefinitionConcepts representing classification of patient encounter such as ambulatory (outpatient), inpatient, emergency, home health or others due to local variations.
Cardinality1...1
TypeCoding
Binding

Classification of the encounter.

ValueSetEncounterClassMyCore (required)
SummaryTrue
Comments

Codes may be defined very casually in enumerations or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
  • rim: CV
  • orim: fhir:Coding rdfs:subClassOf dt:CDCoding
  • w5: FiveWs.class
  • v2: PV1-2
  • rim: .inboundRelationship[typeCode=SUBJ].source[classCode=LIST].code
Encounter.classHistory
DefinitionThe class history permits the tracking of the encounters transitions without needing to go through the resource history. This would be used for a case where an admission starts of as an emergency encounter, then transitions into an inpatient scenario. Doing this and not restarting a new encounter ensures that any lab/diagnostic results can more easily follow the patient and not require re-processing and not get lost or cancelled during a kind of discharge from emergency to inpatient.
Cardinality0...*
TypeBackboneElement
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
Encounter.classHistory.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.classHistory.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.classHistory.modifierExtension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
Cardinality0...*
TypeExtension
ModifierTrue
SummaryTrue
Aliasextensions, user content, modifiers
Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.classHistory.class
Definitioninpatient | outpatient | ambulatory | emergency +.
Cardinality1...1
TypeCoding
Binding

Classification of the encounter.

ValueSetEncounterClassMyCore (extensible)
Comments

Codes may be defined very casually in enumerations or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
  • rim: CV
  • orim: fhir:Coding rdfs:subClassOf dt:CDCoding
Encounter.classHistory.period
DefinitionThe time that the episode was in the specified class.
Cardinality1...1
TypePeriod
Comments

A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times").

Period is not used for a duration (a measure of elapsed time). See Duration.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • per-1: If present, start SHALL have a lower value than end
    start.hasValue().not() or end.hasValue().not() or (start <= end)
Mappings
  • rim: n/a
  • v2: DR
  • rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
Encounter.type
DefinitionPrimary specialty managing the encounter
Cardinality1...*
TypeCodeableConcept
Binding

Primary specialty managing the encounter

ValueSetSpecialtyMyCore (example)
SummaryTrue
Comments

Primary specialty managing the encounter

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
  • workflow: Event.code
  • w5: FiveWs.class
  • v2: PV1-4 / PV1-18
  • rim: .code
Encounter.type.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.type.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.type.coding
DefinitionA reference to a code defined by a terminology system.
Cardinality0...*
TypeCoding
SummaryTrue
Requirements

Allows for alternative encodings within a code system, and translations to other code systems.

Comments

Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.

SlicingUnordered, Open, by system(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
  • rim: CV
  • orim: fhir:Coding rdfs:subClassOf dt:CDCoding
  • v2: C*E.1-8, C*E.10-22
  • rim: union(., ./translation)
  • orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
Encounter.type.coding:specialty
DefinitionA reference to a code defined by a terminology system.
Cardinality0...*
TypeCoding
BindingValueSetSpecialtyMyCore (example)
SummaryTrue
Requirements

Allows for alternative encodings within a code system, and translations to other code systems.

Comments

Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
  • rim: CV
  • orim: fhir:Coding rdfs:subClassOf dt:CDCoding
  • v2: C*E.1-8, C*E.10-22
  • rim: union(., ./translation)
  • orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
Encounter.type.coding:specialty.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.type.coding:specialty.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.type.coding:specialty.system
DefinitionThe identification of the code system that defines the meaning of the symbol in the code.
Cardinality0...1
Typeuri
SummaryTrue
Requirements

Need to be unambiguous about the source of the definition of the symbol.

Comments

The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Fixed Value

http://fhir.hie.moh.gov.my/CodeSystem/specialty-my-core

Mappings
  • rim: n/a
  • v2: C*E.3
  • rim: ./codeSystem
  • orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
Encounter.type.coding:specialty.version
DefinitionThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Cardinality0...1
Typestring
SummaryTrue
Comments

Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.7
  • rim: ./codeSystemVersion
  • orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
Encounter.type.coding:specialty.code
DefinitionA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
Cardinality0...1
Typecode
SummaryTrue
Requirements

Need to refer to a particular code in the system.

Comments

Note that FHIR strings SHALL NOT exceed 1MB in size

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.1
  • rim: ./code
  • orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
Encounter.type.coding:specialty.display
DefinitionA representation of the meaning of the code in the system, following the rules of the system.
Cardinality0...1
Typestring
SummaryTrue
Requirements

Need to be able to carry a human-readable meaning of the code for readers that do not know the system.

Comments

Note that FHIR strings SHALL NOT exceed 1MB in size

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.2 - but note this is not well followed
  • rim: CV.displayName
  • orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
Encounter.type.coding:specialty.userSelected
DefinitionIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
Cardinality0...1
Typeboolean
SummaryTrue
Requirements

This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.

Comments

Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: Sometimes implied by being first
  • rim: CD.codingRationale
  • orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
Encounter.type.coding:category
DefinitionA reference to a code defined by a terminology system.
Cardinality0...*
TypeCoding
BindingValueSetEncounterCategoryMyCore (example)
SummaryTrue
Requirements

Allows for alternative encodings within a code system, and translations to other code systems.

Comments

Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
  • rim: CV
  • orim: fhir:Coding rdfs:subClassOf dt:CDCoding
  • v2: C*E.1-8, C*E.10-22
  • rim: union(., ./translation)
  • orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
Encounter.type.coding:category.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.type.coding:category.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.type.coding:category.system
DefinitionThe identification of the code system that defines the meaning of the symbol in the code.
Cardinality0...1
Typeuri
SummaryTrue
Requirements

Need to be unambiguous about the source of the definition of the symbol.

Comments

The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Fixed Value

http://fhir.hie.moh.gov.my/CodeSystem/encounter-category-my-core

Mappings
  • rim: n/a
  • v2: C*E.3
  • rim: ./codeSystem
  • orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
Encounter.type.coding:category.version
DefinitionThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Cardinality0...1
Typestring
SummaryTrue
Comments

Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.7
  • rim: ./codeSystemVersion
  • orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
Encounter.type.coding:category.code
DefinitionA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
Cardinality0...1
Typecode
SummaryTrue
Requirements

Need to refer to a particular code in the system.

Comments

Note that FHIR strings SHALL NOT exceed 1MB in size

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.1
  • rim: ./code
  • orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
Encounter.type.coding:category.display
DefinitionA representation of the meaning of the code in the system, following the rules of the system.
Cardinality0...1
Typestring
SummaryTrue
Requirements

Need to be able to carry a human-readable meaning of the code for readers that do not know the system.

Comments

Note that FHIR strings SHALL NOT exceed 1MB in size

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.2 - but note this is not well followed
  • rim: CV.displayName
  • orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
Encounter.type.coding:category.userSelected
DefinitionIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
Cardinality0...1
Typeboolean
SummaryTrue
Requirements

This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.

Comments

Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: Sometimes implied by being first
  • rim: CD.codingRationale
  • orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
Encounter.type.coding:serviceCategory
DefinitionA reference to a code defined by a terminology system.
Cardinality0...*
TypeCoding
BindingValueSetServiceRequestCategoryMyCore (example)
SummaryTrue
Requirements

Allows for alternative encodings within a code system, and translations to other code systems.

Comments

Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
  • rim: CV
  • orim: fhir:Coding rdfs:subClassOf dt:CDCoding
  • v2: C*E.1-8, C*E.10-22
  • rim: union(., ./translation)
  • orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
Encounter.type.coding:serviceCategory.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.type.coding:serviceCategory.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.type.coding:serviceCategory.system
DefinitionThe identification of the code system that defines the meaning of the symbol in the code.
Cardinality0...1
Typeuri
SummaryTrue
Requirements

Need to be unambiguous about the source of the definition of the symbol.

Comments

The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Fixed Value

http://fhir.hie.moh.gov.my/ValueSet/servicerequest-category-my-core

Mappings
  • rim: n/a
  • v2: C*E.3
  • rim: ./codeSystem
  • orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
Encounter.type.coding:serviceCategory.version
DefinitionThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Cardinality0...1
Typestring
SummaryTrue
Comments

Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.7
  • rim: ./codeSystemVersion
  • orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
Encounter.type.coding:serviceCategory.code
DefinitionA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
Cardinality0...1
Typecode
SummaryTrue
Requirements

Need to refer to a particular code in the system.

Comments

Note that FHIR strings SHALL NOT exceed 1MB in size

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.1
  • rim: ./code
  • orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
Encounter.type.coding:serviceCategory.display
DefinitionA representation of the meaning of the code in the system, following the rules of the system.
Cardinality0...1
Typestring
SummaryTrue
Requirements

Need to be able to carry a human-readable meaning of the code for readers that do not know the system.

Comments

Note that FHIR strings SHALL NOT exceed 1MB in size

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.2 - but note this is not well followed
  • rim: CV.displayName
  • orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
Encounter.type.coding:serviceCategory.userSelected
DefinitionIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
Cardinality0...1
Typeboolean
SummaryTrue
Requirements

This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.

Comments

Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: Sometimes implied by being first
  • rim: CD.codingRationale
  • orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
Encounter.type.text
DefinitionA human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.
Cardinality0...1
Typestring
SummaryTrue
Requirements

The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.

Comments

Very often the text is the same as a displayName of one of the codings.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.9. But note many systems use C*E.2 for this
  • rim: ./originalText[mediaType/code="text/plain"]/data
  • orim: fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText
Encounter.serviceType
DefinitionBased on PIK code service type
Cardinality1...1
TypeCodeableConcept
Binding

Based on PIK code service type

ValueSetServiceTypeMyCore (required)
SummaryTrue
Comments

Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
  • workflow: Event.code
  • v2: PV1-10
Encounter.priority
DefinitionIndicates the urgency of the encounter.
Cardinality0...1
TypeCodeableConcept
Binding

Indicates the urgency of the encounter.

ValueSetPriorityMyCore (example)
Comments

Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
  • w5: FiveWs.grade
  • v2: PV2-25
  • rim: .priorityCode
Encounter.subject
DefinitionThe patient or group present at the encounter.
Cardinality1...1
TypeReference(Patient | Group)
SummaryTrue
Aliaspatient
Comments

While the encounter is always about the patient, the patient might not actually be known in all contexts of use, and there may be a group of patients that could be anonymous (such as in a group therapy for Alcoholics Anonymous - where the recording of the encounter could be used for billing on the number of people/staff and not important to the context of the specific patients) or alternately in veterinary care a herd of sheep receiving treatment (where the animals are not individually tracked).

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • workflow: Event.subject
  • w5: FiveWs.subject[x]
  • v2: PID-3
  • rim: .participation[typeCode=SBJ]/role[classCode=PAT]
  • w5: FiveWs.subject
Encounter.episodeOfCare
DefinitionWhere a specific encounter should be classified as a part of a specific episode(s) of care this field should be used. This association can facilitate grouping of related encounters together for a specific purpose, such as government reporting, issue tracking, association via a common problem. The association is recorded on the encounter as these are typically created after the episode of care and grouped on entry rather than editing the episode of care to append another encounter to it (the episode of care could span years).
Cardinality0...*
TypeReference(EpisodeOfCare)
SummaryTrue
Comments

References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • workflow: Event.context
  • w5: FiveWs.context
  • v2: PV1-54, PV1-53
Encounter.basedOn
DefinitionThe request this encounter satisfies (e.g. incoming referral or procedure request).
Cardinality0...*
TypeReference(ServiceRequest)
AliasincomingReferral
Comments

References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • workflow: Event.basedOn
  • rim: .reason.ClinicalDocument
Encounter.participant
DefinitionThe list of people responsible for providing the service.
Cardinality0...*
TypeBackboneElement
SummaryTrue
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • workflow: Event.performer
  • v2: ROL
  • rim: .participation[typeCode=PFM]
Encounter.participant.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.participant.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.participant.modifierExtension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
Cardinality0...*
TypeExtension
ModifierTrue
SummaryTrue
Aliasextensions, user content, modifiers
Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.participant.type
DefinitionRole of participant in encounter.
Cardinality0...*
TypeCodeableConcept
Binding

Role of participant in encounter.

ParticipantType (extensible)
SummaryTrue
Comments

The participant type indicates how an individual participates in an encounter. It includes non-practitioner participants, and for practitioners this is to describe the action type in the context of this encounter (e.g. Admitting Dr, Attending Dr, Translator, Consulting Dr). This is different to the practitioner roles which are functional roles, derived from terms of employment, education, licensing, etc.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
  • workflow: Event.performer.function
  • v2: ROL-3 (or maybe PRT-4)
  • rim: .functionCode
Encounter.participant.period
DefinitionThe period of time that the specified participant participated in the encounter. These can overlap or be sub-sets of the overall encounter's period.
Cardinality0...1
TypePeriod
Comments

A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times").

Period is not used for a duration (a measure of elapsed time). See Duration.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • per-1: If present, start SHALL have a lower value than end
    start.hasValue().not() or end.hasValue().not() or (start <= end)
Mappings
  • rim: n/a
  • v2: DR
  • rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
  • v2: ROL-5, ROL-6 (or maybe PRT-5)
  • rim: .time
Encounter.participant.individual
DefinitionPersons involved in the encounter other than the patient.
Cardinality0...1
TypeReference(Practitioner | PractitionerRole | RelatedPerson)
SummaryTrue
Comments

References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • workflow: Event.performer.actor
  • w5: FiveWs.who
  • v2: ROL-4
  • rim: .role
Encounter.appointment
DefinitionThe appointment that scheduled this encounter.
Cardinality0...*
TypeReference(Appointment)
SummaryTrue
Comments

References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • workflow: Event.basedOn
  • v2: SCH-1 / SCH-2
  • rim: .outboundRelationship[typeCode=FLFS].target[classCode=ENC, moodCode=APT]
Encounter.period
DefinitionThe start and end time of the encounter.
Cardinality1...1
TypePeriod
Comments

If not (yet) known, the end of the Period may be omitted.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • per-1: If present, start SHALL have a lower value than end
    start.hasValue().not() or end.hasValue().not() or (start <= end)
Mappings
  • rim: n/a
  • v2: DR
  • rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
  • workflow: Event.occurrence[x]
  • w5: FiveWs.done[x]
  • v2: PV1-44, PV1-45
  • rim: .effectiveTime (low & high)
Encounter.period.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.period.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.period.start
DefinitionThe start of the period. The boundary is inclusive.
Cardinality1...1
TypedateTime
SummaryTrue
Comments

If the low element is missing, the meaning is that the low boundary is not known.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: DR.1
  • rim: ./low
Encounter.period.end
DefinitionThe end of the period. If the end of the period is missing, it means no end was known or planned at the time the instance was created. The start may be in the past, and the end date in the future, which means that period is expected/planned to end at that time.
Cardinality0...1
TypedateTime
SummaryTrue
Comments

The high value includes any matching date/time. i.e. 2012-02-03T10:00:00 is in a period that has an end value of 2012-02-03.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: DR.2
  • rim: ./high
Encounter.length
DefinitionQuantity of time the encounter lasted. This excludes the time during leaves of absence.
Cardinality0...1
TypeDuration
Comments

May differ from the time the Encounter.period lasted because of leave of absence.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • qty-3: If a code for the unit is present, the system SHALL also be present
    code.empty() or system.exists()
  • drt-1: There SHALL be a code if there is a value and it SHALL be an expression of time. If system is present, it SHALL be UCUM.
    code.exists() implies ((system = %ucum) and value.exists())
Mappings
  • rim: n/a
  • v2: SN (see also Range) or CQ
  • rim: PQ, IVL<PQ>, MO, CO, depending on the values
  • rim: PQ, IVL<PQ> depending on the values
  • workflow: Event.occurrence[x]
  • v2: (PV1-45 less PV1-44) iff ( (PV1-44 not empty) and (PV1-45 not empty) ); units in minutes
  • rim: .lengthOfStayQuantity
Encounter.reasonCode
DefinitionReason the encounter takes place, expressed as a code. For admissions, this can be used for a coded admission diagnosis.
Cardinality0...*
TypeCodeableConcept
Binding

Reason why the encounter takes place.

EncounterReasonCodes (preferred)
SummaryTrue
AliasIndication, Admission diagnosis
Comments

For systems that need to know which was the primary diagnosis, these will be marked with the standard extension primaryDiagnosis (which is a sequence value rather than a flag, 1 = primary diagnosis).

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
  • workflow: Event.reasonCode
  • w5: FiveWs.why[x]
  • v2: EVN-4 / PV2-3 (note: PV2-3 is nominally constrained to inpatient admissions; HL7 v2 makes no vocabulary suggestions for PV2-3; would not expect PV2 segment or PV2-3 to be in use in all implementations )
  • rim: .reasonCode
Encounter.reasonReference
DefinitionReason the encounter takes place, expressed as a code. For admissions, this can be used for a coded admission diagnosis.
Cardinality0...*
TypeReference(Condition | Procedure | Observation | ImmunizationRecommendation)
SummaryTrue
AliasIndication, Admission diagnosis
Comments

For systems that need to know which was the primary diagnosis, these will be marked with the standard extension primaryDiagnosis (which is a sequence value rather than a flag, 1 = primary diagnosis).

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • workflow: Event.reasonCode
  • w5: FiveWs.why[x]
  • v2: EVN-4 / PV2-3 (note: PV2-3 is nominally constrained to inpatient admissions; HL7 v2 makes no vocabulary suggestions for PV2-3; would not expect PV2 segment or PV2-3 to be in use in all implementations )
  • rim: .reasonCode
Encounter.diagnosis
DefinitionThe list of diagnosis relevant to this encounter.
Cardinality0...*
TypeBackboneElement
SummaryTrue
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • rim: .outboundRelationship[typeCode=RSON]
Encounter.diagnosis.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.diagnosis.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.diagnosis.modifierExtension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
Cardinality0...*
TypeExtension
ModifierTrue
SummaryTrue
Aliasextensions, user content, modifiers
Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.diagnosis.condition
DefinitionReason the encounter takes place, as specified using information from another resource. For admissions, this is the admission diagnosis. The indication will typically be a Condition (with other resources referenced in the evidence.detail), or a Procedure.
Cardinality1...1
TypeReference(Condition | Procedure)
SummaryTrue
AliasAdmission diagnosis, discharge diagnosis, indication
Comments

For systems that need to know which was the primary diagnosis, these will be marked with the standard extension primaryDiagnosis (which is a sequence value rather than a flag, 1 = primary diagnosis).

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • workflow: Event.reasonReference
  • w5: FiveWs.why[x]
  • v2: Resources that would commonly referenced at Encounter.indication would be Condition and/or Procedure. These most closely align with DG1/PRB and PR1 respectively.
  • rim: .outboundRelationship[typeCode=RSON].target
Encounter.diagnosis.use
DefinitionRole that this diagnosis has within the encounter (e.g. admission, billing, discharge …).
Cardinality1...1
TypeCodeableConcept
Binding

The type of diagnosis this condition represents.

ValueSetDiagnosisRoleMyCore (extensible)
Comments

Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
Encounter.diagnosis.rank
DefinitionRanking of the diagnosis (for each role type).
Cardinality0...1
TypepositiveInt
Comments

32 bit number; for values larger than this, use decimal

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • rim: .outboundRelationship[typeCode=RSON].priority
Encounter.account
DefinitionThe set of accounts that may be used for billing for this Encounter.
Cardinality0...*
TypeReference(Account)
Comments

The billing system may choose to allocate billable items associated with the Encounter to different referenced Accounts based on internal business rules.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • rim: .pertains.A_Account
Encounter.hospitalization
DefinitionDetails about the admission to a healthcare service.
Cardinality0...1
TypeBackboneElement
Comments

An Encounter may cover more than just the inpatient stay. Contexts such as outpatients, community clinics, and aged care facilities are also included.

The duration recorded in the period of this encounter covers the entire scope of this hospitalization record.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • rim: .outboundRelationship[typeCode=COMP].target[classCode=ENC, moodCode=EVN]
Encounter.hospitalization.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.hospitalization.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.hospitalization.modifierExtension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
Cardinality0...*
TypeExtension
ModifierTrue
SummaryTrue
Aliasextensions, user content, modifiers
Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.hospitalization.preAdmissionIdentifier
DefinitionPre-admission identifier.
Cardinality0...1
TypeIdentifier
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CX / EI (occasionally, more often EI maps to a resource id or a URL)
  • rim: II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
  • servd: Identifier
  • v2: PV1-5
  • rim: .id
Encounter.hospitalization.origin
DefinitionThe location/organization from which the patient came before admission.
Cardinality0...1
TypeReference(Location | Organization)
Comments

References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • rim: .participation[typeCode=ORG].role
Encounter.hospitalization.admitSource
DefinitionFrom where patient was admitted (physician referral, transfer).
Cardinality0...1
TypeCodeableConcept
Binding

From where the patient was admitted.

AdmitSource (preferred)
Comments

Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
  • v2: PV1-14
  • rim: .admissionReferralSourceCode
Encounter.hospitalization.admitSource.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.hospitalization.admitSource.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.hospitalization.admitSource.coding
DefinitionA reference to a code defined by a terminology system.
Cardinality0...*
TypeCoding
SummaryTrue
Requirements

Allows for alternative encodings within a code system, and translations to other code systems.

Comments

Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.

SlicingUnordered, Open, by system(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
  • rim: CV
  • orim: fhir:Coding rdfs:subClassOf dt:CDCoding
  • v2: C*E.1-8, C*E.10-22
  • rim: union(., ./translation)
  • orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
Encounter.hospitalization.admitSource.coding:internal
DefinitionA reference to a code defined by a terminology system.
Cardinality0...*
TypeCoding
BindingValueSetInternalReferralSourceTypeMyCore (preferred)
SummaryTrue
Requirements

Allows for alternative encodings within a code system, and translations to other code systems.

Comments

Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
  • rim: CV
  • orim: fhir:Coding rdfs:subClassOf dt:CDCoding
  • v2: C*E.1-8, C*E.10-22
  • rim: union(., ./translation)
  • orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
Encounter.hospitalization.admitSource.coding:internal.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.hospitalization.admitSource.coding:internal.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.hospitalization.admitSource.coding:internal.system
DefinitionThe identification of the code system that defines the meaning of the symbol in the code.
Cardinality1...1
Typeuri
SummaryTrue
Requirements

Need to be unambiguous about the source of the definition of the symbol.

Comments

The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Fixed Value

http://fhir.hie.moh.gov.my/CodeSystem/internal-referral-source-type-my-core

Mappings
  • rim: n/a
  • v2: C*E.3
  • rim: ./codeSystem
  • orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
Encounter.hospitalization.admitSource.coding:internal.version
DefinitionThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Cardinality0...1
Typestring
SummaryTrue
Comments

Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.7
  • rim: ./codeSystemVersion
  • orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
Encounter.hospitalization.admitSource.coding:internal.code
DefinitionA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
Cardinality0...1
Typecode
SummaryTrue
Requirements

Need to refer to a particular code in the system.

Comments

Note that FHIR strings SHALL NOT exceed 1MB in size

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.1
  • rim: ./code
  • orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
Encounter.hospitalization.admitSource.coding:internal.display
DefinitionA representation of the meaning of the code in the system, following the rules of the system.
Cardinality0...1
Typestring
SummaryTrue
Requirements

Need to be able to carry a human-readable meaning of the code for readers that do not know the system.

Comments

Note that FHIR strings SHALL NOT exceed 1MB in size

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.2 - but note this is not well followed
  • rim: CV.displayName
  • orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
Encounter.hospitalization.admitSource.coding:internal.userSelected
DefinitionIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
Cardinality0...1
Typeboolean
SummaryTrue
Requirements

This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.

Comments

Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: Sometimes implied by being first
  • rim: CD.codingRationale
  • orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
Encounter.hospitalization.admitSource.coding:external
DefinitionA reference to a code defined by a terminology system.
Cardinality0...*
TypeCoding
BindingValueSetExternalReferralSourceTypeMyCore (preferred)
SummaryTrue
Requirements

Allows for alternative encodings within a code system, and translations to other code systems.

Comments

Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
  • rim: CV
  • orim: fhir:Coding rdfs:subClassOf dt:CDCoding
  • v2: C*E.1-8, C*E.10-22
  • rim: union(., ./translation)
  • orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
Encounter.hospitalization.admitSource.coding:external.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.hospitalization.admitSource.coding:external.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.hospitalization.admitSource.coding:external.system
DefinitionThe identification of the code system that defines the meaning of the symbol in the code.
Cardinality1...1
Typeuri
SummaryTrue
Requirements

Need to be unambiguous about the source of the definition of the symbol.

Comments

The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Fixed Value

http://fhir.hie.moh.gov.my/CodeSystem/external-referral-source-type-my-core

Mappings
  • rim: n/a
  • v2: C*E.3
  • rim: ./codeSystem
  • orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
Encounter.hospitalization.admitSource.coding:external.version
DefinitionThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Cardinality0...1
Typestring
SummaryTrue
Comments

Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.7
  • rim: ./codeSystemVersion
  • orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
Encounter.hospitalization.admitSource.coding:external.code
DefinitionA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
Cardinality0...1
Typecode
SummaryTrue
Requirements

Need to refer to a particular code in the system.

Comments

Note that FHIR strings SHALL NOT exceed 1MB in size

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.1
  • rim: ./code
  • orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
Encounter.hospitalization.admitSource.coding:external.display
DefinitionA representation of the meaning of the code in the system, following the rules of the system.
Cardinality0...1
Typestring
SummaryTrue
Requirements

Need to be able to carry a human-readable meaning of the code for readers that do not know the system.

Comments

Note that FHIR strings SHALL NOT exceed 1MB in size

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.2 - but note this is not well followed
  • rim: CV.displayName
  • orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
Encounter.hospitalization.admitSource.coding:external.userSelected
DefinitionIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
Cardinality0...1
Typeboolean
SummaryTrue
Requirements

This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.

Comments

Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: Sometimes implied by being first
  • rim: CD.codingRationale
  • orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
Encounter.hospitalization.admitSource.text
DefinitionA human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.
Cardinality0...1
Typestring
SummaryTrue
Requirements

The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.

Comments

Very often the text is the same as a displayName of one of the codings.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: C*E.9. But note many systems use C*E.2 for this
  • rim: ./originalText[mediaType/code="text/plain"]/data
  • orim: fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText
Encounter.hospitalization.reAdmission
DefinitionWhether this hospitalization is a readmission and why if known.
Cardinality0...1
TypeCodeableConcept
Binding

The reason for re-admission of this hospitalization encounter.

v2.0092 (example)
Comments

Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
  • v2: PV1-13
Encounter.hospitalization.dietPreference
DefinitionDiet preferences reported by the patient.
Cardinality0...*
TypeCodeableConcept
Binding

Medical, cultural or ethical food preferences to help with catering requirements.

Diet (example)
Requirements

Used to track patient's diet restrictions and/or preference. For a complete description of the nutrition needs of a patient during their stay, one should use the nutritionOrder resource which links to Encounter.

Comments

For example, a patient may request both a dairy-free and nut-free diet preference (not mutually exclusive).

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
  • v2: PV1-38
  • rim: .outboundRelationship[typeCode=COMP].target[classCode=SBADM, moodCode=EVN, code="diet"]
Encounter.hospitalization.specialCourtesy
DefinitionSpecial courtesies (VIP, board member).
Cardinality0...*
TypeCodeableConcept
Binding

Special courtesies.

SpecialCourtesy (preferred)
Comments

Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
  • v2: PV1-16
  • rim: .specialCourtesiesCode
Encounter.hospitalization.specialArrangement
DefinitionAny special requests that have been made for this hospitalization encounter, such as the provision of specific equipment or other things.
Cardinality0...*
TypeCodeableConcept
Binding

Special arrangements.

SpecialArrangements (preferred)
Comments

Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
  • v2: PV1-15 / OBR-30 / OBR-43
  • rim: .specialArrangementCode
Encounter.hospitalization.destination
DefinitionLocation/organization to which the patient is discharged.
Cardinality0...1
TypeReference(Location | Organization)
Comments

References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • v2: PV1-37
  • rim: .participation[typeCode=DST]
Encounter.hospitalization.dischargeDisposition
DefinitionCategory or kind of location after discharge.
Cardinality0...1
TypeCodeableConcept
Binding

Discharge Disposition.

DischargeDisposition (example)
Comments

Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
  • v2: PV1-36
  • rim: .dischargeDispositionCode
Encounter.location
DefinitionList of locations where the patient has been during this encounter.
Cardinality0...*
TypeBackboneElement
Comments

Virtual encounters can be recorded in the Encounter by specifying a location reference to a location of type "kind" such as "client's home" and an encounter.class = "virtual".

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • rim: .participation[typeCode=LOC]
Encounter.location.id
DefinitionUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
Cardinality0...1
Typestring
Mappings
  • rim: n/a
Encounter.location.extension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Cardinality0...*
TypeExtension
Aliasextensions, user content
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

SlicingUnordered, Open, by url(Value)
Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.location.modifierExtension
DefinitionMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
Cardinality0...*
TypeExtension
ModifierTrue
SummaryTrue
Aliasextensions, user content, modifiers
Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
Encounter.location.location
DefinitionThe location where the encounter takes place.
Cardinality1...1
TypeReference(Location)
Comments

References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • workflow: Event.location
  • w5: FiveWs.where[x]
  • v2: PV1-3 / PV1-6 / PV1-11 / PV1-42 / PV1-43
  • rim: .role
Encounter.location.status
DefinitionThe status of the participants' presence at the specified location during the period specified. If the participant is no longer at the location, then the period will have an end date/time.
Cardinality0...1
Typecode
Binding

The status of the location.

EncounterLocationStatus (required)
Comments

When the patient is no longer active at a location, then the period end date is entered, and the status may be changed to completed.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • rim: .role.statusCode
Encounter.location.physicalType
DefinitionThis will be used to specify the required levels (bed/ward/room/etc.) desired to be recorded to simplify either messaging or query.
Cardinality0...1
TypeCodeableConcept
Binding

Physical form of the location.

LocationType (example)
Comments

This information is de-normalized from the Location resource to support the easier understanding of the encounter resource and processing in messaging or query.

There may be many levels in the hierachy, and this may only pic specific levels that are required for a specific usage scenario.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: n/a
  • v2: CE/CNE/CWE
  • rim: CD
  • orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
Encounter.location.period
DefinitionTime period during which the patient was present at the location.
Cardinality0...1
TypePeriod
Comments

A Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times").

Period is not used for a duration (a measure of elapsed time). See Duration.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • per-1: If present, start SHALL have a lower value than end
    start.hasValue().not() or end.hasValue().not() or (start <= end)
Mappings
  • rim: n/a
  • v2: DR
  • rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
  • rim: .time
Encounter.serviceProvider
DefinitionThe organization that is primarily responsible for this Encounter's services. This MAY be the same as the organization on the Patient record, however it could be different, such as if the actor performing the services was from an external organization (which may be billed seperately) for an external consultation. Refer to the example bundle showing an abbreviated set of Encounters for a colonoscopy.
Cardinality1...1
TypeReference(Organization)
Comments

References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • workflow: Event.performer.actor
  • v2: PL.6 & PL.1
  • rim: .particiaption[typeCode=PFM].role
Encounter.partOf
DefinitionAnother Encounter of which this encounter is a part of (administratively or in time).
Cardinality0...1
TypeReference(Encounter)
Comments

This is also used for associating a child's encounter back to the mother's encounter.

Refer to the Notes section in the Patient resource for further details.

Invariants
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ref-1: SHALL have a contained resource if a local reference is provided
    reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
Mappings
  • rim: n/a
  • rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
  • workflow: Event.partOf
  • rim: .inboundRelationship[typeCode=COMP].source[classCode=COMP, moodCode=EVN]

  1. Example Encounter
  2. Example Encounter Mandatory Element Only
  3. Example Encounter With Diagnosis
  4. Example Encounter for pekaB40

<StructureDefinition xmlns="http://hl7.org/fhir">
    <id value="Encounter-my-core" />
    <meta>
        <versionId value="7" />
        <lastUpdated value="2024-03-18T00:22:36.4362536+00:00" />
        <source value="#OKBKw8n15m3hGlff" />
    </meta>
    <url value="http://fhir.hie.moh.gov.my/StructureDefinition/Encounter-my-core" />
    <version value="1.0.0" />
    <name value="EncounterMyCore" />
    <title value="Encounter (MY Core)" />
    <status value="active" />
    <date value="2024-04-16T01:09:35.2239695+00:00" />
    <description value="An interaction during which services are provided to the patient." />
    <fhirVersion value="4.0.1" />
    <kind value="resource" />
    <abstract value="false" />
    <type value="Encounter" />
    <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Encounter" />
    <derivation value="constraint" />
    <differential>
        <element id="Encounter.extension:audit">
            <path value="Encounter.extension" />
            <sliceName value="audit" />
            <short value="Extension of the individual who recorded and updated the date" />
            <definition value="Extension of the individual who recorded and updated the date" />
            <comment value="Record audit on individual who recorded and updated the data" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.hie.moh.gov.my/StructureDefinition/audit-my-core" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="Encounter.extension:outcome">
            <path value="Encounter.extension" />
            <sliceName value="outcome" />
            <short value="Extension about the outcome of an encounter" />
            <definition value="Extension about the outcome of an encounter" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.hie.moh.gov.my/StructureDefinition/encounter-outcome-my-core" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="Encounter.extension:visitType">
            <path value="Encounter.extension" />
            <sliceName value="visitType" />
            <label value="visit type" />
            <short value="Extension to determine the visit type" />
            <definition value="Extension to determine the visit type" />
            <comment value="visit type" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.hie.moh.gov.my/StructureDefinition/visit-type-my-core" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="Encounter.extension:internalReferral">
            <path value="Encounter.extension" />
            <sliceName value="internalReferral" />
            <short value="Extension whether this Encounter is from an internal or external referral" />
            <definition value="Extension whether this Encounter is from an internal or external referral" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.hie.moh.gov.my/StructureDefinition/internal-refferal-my-core" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="Encounter.extension:Rating">
            <path value="Encounter.extension" />
            <sliceName value="Rating" />
            <short value="Extension about the rating of an encounter" />
            <definition value="Extension about the rating of an encounter" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.hie.moh.gov.my/StructureDefinition/encounter-rating-my-core" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="Encounter.extension:ncdVcDx">
            <path value="Encounter.extension" />
            <sliceName value="ncdVcDx" />
            <short value="Extension to define the outcome diagnosis of a Virtual Consultation (To fulfil their analytics requirement)" />
            <definition value="Extension to define the outcome diagnosis of a Virtual Consultation (To fulfil their analytics requirement)" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.hie.moh.gov.my/StructureDefinition/ncd-vc-dx-my-core" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="Encounter.extension:policeCase">
            <path value="Encounter.extension" />
            <sliceName value="policeCase" />
            <short value="Extension whether this Encounter is directly created as part of a police case investigation" />
            <definition value="Extension whether this Encounter is directly created as part of a police case investigation" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.hie.moh.gov.my/StructureDefinition/police-case-my-core" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="Encounter.extension:vrStatus">
            <path value="Encounter.extension" />
            <sliceName value="vrStatus" />
            <short value="Extension about the current status of the virtual consultation session" />
            <definition value="Extension about the current status of the virtual consultation session" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.hie.moh.gov.my/StructureDefinition/vr-status-my-core" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="Encounter.identifier">
            <path value="Encounter.identifier" />
            <slicing>
                <discriminator>
                    <type value="value" />
                    <path value="system" />
                </discriminator>
                <rules value="open" />
            </slicing>
        </element>
        <element id="Encounter.identifier:encounterNo">
            <path value="Encounter.identifier" />
            <sliceName value="encounterNo" />
        </element>
        <element id="Encounter.identifier:encounterNo.system">
            <path value="Encounter.identifier.system" />
            <fixedUri value="http://fhir.hie.moh.gov.my/sid/encounter-id" />
        </element>
        <element id="Encounter.identifier:vcToken">
            <path value="Encounter.identifier" />
            <sliceName value="vcToken" />
            <max value="1" />
        </element>
        <element id="Encounter.identifier:vcToken.system">
            <path value="Encounter.identifier.system" />
            <fixedUri value="http://fhir.hie.moh.gov.my/sid/vc-token" />
        </element>
        <element id="Encounter.status">
            <path value="Encounter.status" />
            <short value="arrived | in-progress | finished | unknown" />
            <definition value="arrived | in-progress | finished | unknown" />
            <binding>
                <strength value="required" />
                <valueSet value="http://fhir.hie.moh.gov.my/ValueSet/encounter-status-my-core" />
            </binding>
        </element>
        <element id="Encounter.class">
            <path value="Encounter.class" />
            <binding>
                <strength value="required" />
                <valueSet value="http://fhir.hie.moh.gov.my/ValueSet/encounter-class-my-core" />
            </binding>
        </element>
        <element id="Encounter.classHistory.class">
            <path value="Encounter.classHistory.class" />
            <binding>
                <strength value="extensible" />
                <valueSet value="http://fhir.hie.moh.gov.my/ValueSet/encounter-class-my-core" />
            </binding>
        </element>
        <element id="Encounter.type">
            <path value="Encounter.type" />
            <short value="Primary specialty managing the encounter" />
            <definition value="Primary specialty managing the encounter" />
            <comment value="Primary specialty managing the encounter" />
            <min value="1" />
            <binding>
                <strength value="example" />
                <description value="Primary specialty managing the encounter" />
                <valueSet value="http://fhir.hie.moh.gov.my/ValueSet/specialty-my-core" />
            </binding>
        </element>
        <element id="Encounter.type.coding">
            <path value="Encounter.type.coding" />
            <slicing>
                <discriminator>
                    <type value="value" />
                    <path value="system" />
                </discriminator>
                <rules value="open" />
            </slicing>
        </element>
        <element id="Encounter.type.coding:specialty">
            <path value="Encounter.type.coding" />
            <sliceName value="specialty" />
            <binding>
                <strength value="example" />
                <valueSet value="http://fhir.hie.moh.gov.my/ValueSet/specialty-my-core" />
            </binding>
        </element>
        <element id="Encounter.type.coding:specialty.system">
            <path value="Encounter.type.coding.system" />
            <fixedUri value="http://fhir.hie.moh.gov.my/CodeSystem/specialty-my-core" />
        </element>
        <element id="Encounter.type.coding:category">
            <path value="Encounter.type.coding" />
            <sliceName value="category" />
            <binding>
                <strength value="example" />
                <valueSet value="http://fhir.hie.moh.gov.my/ValueSet/encounter-category-my-core" />
            </binding>
        </element>
        <element id="Encounter.type.coding:category.system">
            <path value="Encounter.type.coding.system" />
            <fixedUri value="http://fhir.hie.moh.gov.my/CodeSystem/encounter-category-my-core" />
        </element>
        <element id="Encounter.type.coding:serviceCategory">
            <path value="Encounter.type.coding" />
            <sliceName value="serviceCategory" />
            <binding>
                <strength value="example" />
                <valueSet value="http://fhir.hie.moh.gov.my/ValueSet/servicerequest-category-my-core" />
            </binding>
        </element>
        <element id="Encounter.type.coding:serviceCategory.system">
            <path value="Encounter.type.coding.system" />
            <fixedUri value="http://fhir.hie.moh.gov.my/ValueSet/servicerequest-category-my-core" />
        </element>
        <element id="Encounter.serviceType">
            <path value="Encounter.serviceType" />
            <short value="Based on PIK code service type" />
            <definition value="Based on PIK code service type" />
            <min value="1" />
            <binding>
                <strength value="required" />
                <description value="Based on PIK code service type" />
                <valueSet value="http://fhir.hie.moh.gov.my/ValueSet/service-type-my-core" />
            </binding>
        </element>
        <element id="Encounter.priority">
            <path value="Encounter.priority" />
            <binding>
                <strength value="example" />
                <valueSet value="http://fhir.hie.moh.gov.my/ValueSet/encounter-priority-my-core" />
            </binding>
        </element>
        <element id="Encounter.subject">
            <path value="Encounter.subject" />
            <min value="1" />
        </element>
        <element id="Encounter.period">
            <path value="Encounter.period" />
            <min value="1" />
        </element>
        <element id="Encounter.period.start">
            <path value="Encounter.period.start" />
            <min value="1" />
        </element>
        <element id="Encounter.diagnosis.use">
            <path value="Encounter.diagnosis.use" />
            <min value="1" />
            <binding>
                <strength value="extensible" />
                <valueSet value="http://fhir.hie.moh.gov.my/ValueSet/diagnosis-role-my-core" />
            </binding>
        </element>
        <element id="Encounter.hospitalization.admitSource.coding">
            <path value="Encounter.hospitalization.admitSource.coding" />
            <slicing>
                <discriminator>
                    <type value="value" />
                    <path value="system" />
                </discriminator>
                <rules value="open" />
            </slicing>
        </element>
        <element id="Encounter.hospitalization.admitSource.coding:internal">
            <path value="Encounter.hospitalization.admitSource.coding" />
            <sliceName value="internal" />
            <binding>
                <strength value="preferred" />
                <valueSet value="http://fhir.hie.moh.gov.my/ValueSet/internal-referral-source-type-my-core" />
            </binding>
        </element>
        <element id="Encounter.hospitalization.admitSource.coding:internal.system">
            <path value="Encounter.hospitalization.admitSource.coding.system" />
            <min value="1" />
            <fixedUri value="http://fhir.hie.moh.gov.my/CodeSystem/internal-referral-source-type-my-core" />
        </element>
        <element id="Encounter.hospitalization.admitSource.coding:external">
            <path value="Encounter.hospitalization.admitSource.coding" />
            <sliceName value="external" />
            <binding>
                <strength value="preferred" />
                <valueSet value="http://fhir.hie.moh.gov.my/ValueSet/external-referral-source-type-my-core" />
            </binding>
        </element>
        <element id="Encounter.hospitalization.admitSource.coding:external.system">
            <path value="Encounter.hospitalization.admitSource.coding.system" />
            <min value="1" />
            <fixedUri value="http://fhir.hie.moh.gov.my/CodeSystem/external-referral-source-type-my-core" />
        </element>
        <element id="Encounter.serviceProvider">
            <path value="Encounter.serviceProvider" />
            <min value="1" />
        </element>
    </differential>
</StructureDefinition>

{
    "resourceType": "StructureDefinition",
    "id": "Encounter-my-core",
    "meta": {
        "versionId": "7",
        "lastUpdated": "2024-03-18T00:22:36.4362536+00:00",
        "source": "#OKBKw8n15m3hGlff"
    },
    "url": "http://fhir.hie.moh.gov.my/StructureDefinition/Encounter-my-core",
    "version": "1.0.0",
    "name": "EncounterMyCore",
    "title": "Encounter (MY Core)",
    "status": "active",
    "date": "2024-04-16T01:09:35.2239695+00:00",
    "description": "An interaction during which services are provided to the patient.",
    "fhirVersion": "4.0.1",
    "kind": "resource",
    "abstract": false,
    "type": "Encounter",
    "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Encounter",
    "derivation": "constraint",
    "differential": {
        "element":  [
            {
                "id": "Encounter.extension:audit",
                "path": "Encounter.extension",
                "sliceName": "audit",
                "short": "Extension of the individual who recorded and updated the date",
                "definition": "Extension of the individual who recorded and updated the date",
                "comment": "Record audit on individual who recorded and updated the data",
                "max": "1",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.hie.moh.gov.my/StructureDefinition/audit-my-core"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "Encounter.extension:outcome",
                "path": "Encounter.extension",
                "sliceName": "outcome",
                "short": "Extension about the outcome of an encounter",
                "definition": "Extension about the outcome of an encounter",
                "max": "1",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.hie.moh.gov.my/StructureDefinition/encounter-outcome-my-core"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "Encounter.extension:visitType",
                "path": "Encounter.extension",
                "sliceName": "visitType",
                "label": "visit type",
                "short": "Extension to determine the visit type",
                "definition": "Extension to determine the visit type",
                "comment": "visit type",
                "max": "1",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.hie.moh.gov.my/StructureDefinition/visit-type-my-core"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "Encounter.extension:internalReferral",
                "path": "Encounter.extension",
                "sliceName": "internalReferral",
                "short": "Extension whether this Encounter is from an internal or external referral",
                "definition": "Extension whether this Encounter is from an internal or external referral",
                "max": "1",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.hie.moh.gov.my/StructureDefinition/internal-refferal-my-core"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "Encounter.extension:Rating",
                "path": "Encounter.extension",
                "sliceName": "Rating",
                "short": "Extension about the rating of an encounter",
                "definition": "Extension about the rating of an encounter",
                "max": "1",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.hie.moh.gov.my/StructureDefinition/encounter-rating-my-core"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "Encounter.extension:ncdVcDx",
                "path": "Encounter.extension",
                "sliceName": "ncdVcDx",
                "short": "Extension to define the outcome diagnosis of a Virtual Consultation (To fulfil their analytics requirement)",
                "definition": "Extension to define the outcome diagnosis of a Virtual Consultation (To fulfil their analytics requirement)",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.hie.moh.gov.my/StructureDefinition/ncd-vc-dx-my-core"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "Encounter.extension:policeCase",
                "path": "Encounter.extension",
                "sliceName": "policeCase",
                "short": "Extension whether this Encounter is directly created as part of a police case investigation",
                "definition": "Extension whether this Encounter is directly created as part of a police case investigation",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.hie.moh.gov.my/StructureDefinition/police-case-my-core"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "Encounter.extension:vrStatus",
                "path": "Encounter.extension",
                "sliceName": "vrStatus",
                "short": "Extension about the current status of the virtual consultation session",
                "definition": "Extension about the current status of the virtual consultation session",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.hie.moh.gov.my/StructureDefinition/vr-status-my-core"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "Encounter.identifier",
                "path": "Encounter.identifier",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "value",
                            "path": "system"
                        }
                    ],
                    "rules": "open"
                }
            },
            {
                "id": "Encounter.identifier:encounterNo",
                "path": "Encounter.identifier",
                "sliceName": "encounterNo"
            },
            {
                "id": "Encounter.identifier:encounterNo.system",
                "path": "Encounter.identifier.system",
                "fixedUri": "http://fhir.hie.moh.gov.my/sid/encounter-id"
            },
            {
                "id": "Encounter.identifier:vcToken",
                "path": "Encounter.identifier",
                "sliceName": "vcToken",
                "max": "1"
            },
            {
                "id": "Encounter.identifier:vcToken.system",
                "path": "Encounter.identifier.system",
                "fixedUri": "http://fhir.hie.moh.gov.my/sid/vc-token"
            },
            {
                "id": "Encounter.status",
                "path": "Encounter.status",
                "short": "arrived | in-progress | finished | unknown",
                "definition": "arrived | in-progress | finished | unknown",
                "binding": {
                    "strength": "required",
                    "valueSet": "http://fhir.hie.moh.gov.my/ValueSet/encounter-status-my-core"
                }
            },
            {
                "id": "Encounter.class",
                "path": "Encounter.class",
                "binding": {
                    "strength": "required",
                    "valueSet": "http://fhir.hie.moh.gov.my/ValueSet/encounter-class-my-core"
                }
            },
            {
                "id": "Encounter.classHistory.class",
                "path": "Encounter.classHistory.class",
                "binding": {
                    "strength": "extensible",
                    "valueSet": "http://fhir.hie.moh.gov.my/ValueSet/encounter-class-my-core"
                }
            },
            {
                "id": "Encounter.type",
                "path": "Encounter.type",
                "short": "Primary specialty managing the encounter",
                "definition": "Primary specialty managing the encounter",
                "comment": "Primary specialty managing the encounter",
                "min": 1,
                "binding": {
                    "strength": "example",
                    "description": "Primary specialty managing the encounter",
                    "valueSet": "http://fhir.hie.moh.gov.my/ValueSet/specialty-my-core"
                }
            },
            {
                "id": "Encounter.type.coding",
                "path": "Encounter.type.coding",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "value",
                            "path": "system"
                        }
                    ],
                    "rules": "open"
                }
            },
            {
                "id": "Encounter.type.coding:specialty",
                "path": "Encounter.type.coding",
                "sliceName": "specialty",
                "binding": {
                    "strength": "example",
                    "valueSet": "http://fhir.hie.moh.gov.my/ValueSet/specialty-my-core"
                }
            },
            {
                "id": "Encounter.type.coding:specialty.system",
                "path": "Encounter.type.coding.system",
                "fixedUri": "http://fhir.hie.moh.gov.my/CodeSystem/specialty-my-core"
            },
            {
                "id": "Encounter.type.coding:category",
                "path": "Encounter.type.coding",
                "sliceName": "category",
                "binding": {
                    "strength": "example",
                    "valueSet": "http://fhir.hie.moh.gov.my/ValueSet/encounter-category-my-core"
                }
            },
            {
                "id": "Encounter.type.coding:category.system",
                "path": "Encounter.type.coding.system",
                "fixedUri": "http://fhir.hie.moh.gov.my/CodeSystem/encounter-category-my-core"
            },
            {
                "id": "Encounter.type.coding:serviceCategory",
                "path": "Encounter.type.coding",
                "sliceName": "serviceCategory",
                "binding": {
                    "strength": "example",
                    "valueSet": "http://fhir.hie.moh.gov.my/ValueSet/servicerequest-category-my-core"
                }
            },
            {
                "id": "Encounter.type.coding:serviceCategory.system",
                "path": "Encounter.type.coding.system",
                "fixedUri": "http://fhir.hie.moh.gov.my/ValueSet/servicerequest-category-my-core"
            },
            {
                "id": "Encounter.serviceType",
                "path": "Encounter.serviceType",
                "short": "Based on PIK code service type",
                "definition": "Based on PIK code service type",
                "min": 1,
                "binding": {
                    "strength": "required",
                    "description": "Based on PIK code service type",
                    "valueSet": "http://fhir.hie.moh.gov.my/ValueSet/service-type-my-core"
                }
            },
            {
                "id": "Encounter.priority",
                "path": "Encounter.priority",
                "binding": {
                    "strength": "example",
                    "valueSet": "http://fhir.hie.moh.gov.my/ValueSet/encounter-priority-my-core"
                }
            },
            {
                "id": "Encounter.subject",
                "path": "Encounter.subject",
                "min": 1
            },
            {
                "id": "Encounter.period",
                "path": "Encounter.period",
                "min": 1
            },
            {
                "id": "Encounter.period.start",
                "path": "Encounter.period.start",
                "min": 1
            },
            {
                "id": "Encounter.diagnosis.use",
                "path": "Encounter.diagnosis.use",
                "min": 1,
                "binding": {
                    "strength": "extensible",
                    "valueSet": "http://fhir.hie.moh.gov.my/ValueSet/diagnosis-role-my-core"
                }
            },
            {
                "id": "Encounter.hospitalization.admitSource.coding",
                "path": "Encounter.hospitalization.admitSource.coding",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "value",
                            "path": "system"
                        }
                    ],
                    "rules": "open"
                }
            },
            {
                "id": "Encounter.hospitalization.admitSource.coding:internal",
                "path": "Encounter.hospitalization.admitSource.coding",
                "sliceName": "internal",
                "binding": {
                    "strength": "preferred",
                    "valueSet": "http://fhir.hie.moh.gov.my/ValueSet/internal-referral-source-type-my-core"
                }
            },
            {
                "id": "Encounter.hospitalization.admitSource.coding:internal.system",
                "path": "Encounter.hospitalization.admitSource.coding.system",
                "min": 1,
                "fixedUri": "http://fhir.hie.moh.gov.my/CodeSystem/internal-referral-source-type-my-core"
            },
            {
                "id": "Encounter.hospitalization.admitSource.coding:external",
                "path": "Encounter.hospitalization.admitSource.coding",
                "sliceName": "external",
                "binding": {
                    "strength": "preferred",
                    "valueSet": "http://fhir.hie.moh.gov.my/ValueSet/external-referral-source-type-my-core"
                }
            },
            {
                "id": "Encounter.hospitalization.admitSource.coding:external.system",
                "path": "Encounter.hospitalization.admitSource.coding.system",
                "min": 1,
                "fixedUri": "http://fhir.hie.moh.gov.my/CodeSystem/external-referral-source-type-my-core"
            },
            {
                "id": "Encounter.serviceProvider",
                "path": "Encounter.serviceProvider",
                "min": 1
            }
        ]
    }
}

Snapshot

idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
auditI0..1Extension(Complex)
outcomeI0..1Extension(Complex)
visitTypeI0..1Extension(CodeableConcept)
internalReferralI0..1Extension(boolean)
RatingI0..1Extension(Complex)
ncdVcDxI0..*Extension(Complex)
policeCaseI0..*Extension(boolean)
vrStatusI0..*Extension(CodeableConcept)
modifierExtension?! I0..*Extension
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uriFixed Value
valueΣ0..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uriFixed Value
valueΣ0..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
statusΣ ?!1..1codeBinding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
status1..1codeBinding
periodI1..1Period
classΣ1..1CodingBinding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
class1..1CodingBinding
periodI1..1Period
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
serviceTypeΣ1..1CodeableConceptBinding
priority0..1CodeableConcept
subjectΣ I1..1Reference(Patient | Group)
episodeOfCareΣ I0..*Reference(EpisodeOfCare)
basedOnI0..*Reference(ServiceRequest)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
typeΣ0..*CodeableConceptBinding
periodI0..1Period
individualΣ I0..1Reference(Practitioner | PractitionerRole | RelatedPerson)
appointmentΣ I0..*Reference(Appointment)
id0..1string
extensionI0..*Extension
startΣ I1..1dateTime
endΣ I0..1dateTime
lengthI0..1Duration
reasonCodeΣ0..*CodeableConceptBinding
reasonReferenceΣ I0..*Reference(Condition | Procedure | Observation | ImmunizationRecommendation)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
conditionΣ I1..1Reference(Condition | Procedure)
use1..1CodeableConceptBinding
rank0..1positiveInt
accountI0..*Reference(Account)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
preAdmissionIdentifier0..1Identifier
originI0..1Reference(Location | Organization)
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionI0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
reAdmission0..1CodeableConcept
dietPreference0..*CodeableConcept
specialCourtesy0..*CodeableConceptBinding
specialArrangement0..*CodeableConceptBinding
destinationI0..1Reference(Location | Organization)
dischargeDisposition0..1CodeableConcept
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
locationI1..1Reference(Location)
status0..1codeBinding
physicalType0..1CodeableConcept
periodI0..1Period
serviceProviderI1..1Reference(Organization)
partOfI0..1Reference(Encounter)

Diff

idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
auditI0..1Extension(Complex)
outcomeI0..1Extension(Complex)
visitTypeI0..1Extension(CodeableConcept)
internalReferralI0..1Extension(boolean)
RatingI0..1Extension(Complex)
ncdVcDxI0..*Extension(Complex)
policeCaseI0..*Extension(boolean)
vrStatusI0..*Extension(CodeableConcept)
modifierExtension?! I0..*Extension
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uriFixed Value
valueΣ0..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uriFixed Value
valueΣ0..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
statusΣ ?!1..1codeBinding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
status1..1codeBinding
periodI1..1Period
classΣ1..1CodingBinding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
class1..1CodingBinding
periodI1..1Period
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
serviceTypeΣ1..1CodeableConceptBinding
priority0..1CodeableConcept
subjectΣ I1..1Reference(Patient | Group)
episodeOfCareΣ I0..*Reference(EpisodeOfCare)
basedOnI0..*Reference(ServiceRequest)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
typeΣ0..*CodeableConceptBinding
periodI0..1Period
individualΣ I0..1Reference(Practitioner | PractitionerRole | RelatedPerson)
appointmentΣ I0..*Reference(Appointment)
id0..1string
extensionI0..*Extension
startΣ I1..1dateTime
endΣ I0..1dateTime
lengthI0..1Duration
reasonCodeΣ0..*CodeableConceptBinding
reasonReferenceΣ I0..*Reference(Condition | Procedure | Observation | ImmunizationRecommendation)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
conditionΣ I1..1Reference(Condition | Procedure)
use1..1CodeableConceptBinding
rank0..1positiveInt
accountI0..*Reference(Account)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
preAdmissionIdentifier0..1Identifier
originI0..1Reference(Location | Organization)
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionI0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
reAdmission0..1CodeableConcept
dietPreference0..*CodeableConcept
specialCourtesy0..*CodeableConceptBinding
specialArrangement0..*CodeableConceptBinding
destinationI0..1Reference(Location | Organization)
dischargeDisposition0..1CodeableConcept
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
locationI1..1Reference(Location)
status0..1codeBinding
physicalType0..1CodeableConcept
periodI0..1Period
serviceProviderI1..1Reference(Organization)
partOfI0..1Reference(Encounter)

Hybrid

idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
auditI0..1Extension(Complex)
outcomeI0..1Extension(Complex)
visitTypeI0..1Extension(CodeableConcept)
internalReferralI0..1Extension(boolean)
RatingI0..1Extension(Complex)
ncdVcDxI0..*Extension(Complex)
policeCaseI0..*Extension(boolean)
vrStatusI0..*Extension(CodeableConcept)
modifierExtension?! I0..*Extension
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uriFixed Value
valueΣ0..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uriFixed Value
valueΣ0..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
statusΣ ?!1..1codeBinding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
status1..1codeBinding
periodI1..1Period
classΣ1..1CodingBinding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
class1..1CodingBinding
periodI1..1Period
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionI0..*Extension
systemΣ0..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
serviceTypeΣ1..1CodeableConceptBinding
priority0..1CodeableConcept
subjectΣ I1..1Reference(Patient | Group)
episodeOfCareΣ I0..*Reference(EpisodeOfCare)
basedOnI0..*Reference(ServiceRequest)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
typeΣ0..*CodeableConceptBinding
periodI0..1Period
individualΣ I0..1Reference(Practitioner | PractitionerRole | RelatedPerson)
appointmentΣ I0..*Reference(Appointment)
id0..1string
extensionI0..*Extension
startΣ I1..1dateTime
endΣ I0..1dateTime
lengthI0..1Duration
reasonCodeΣ0..*CodeableConceptBinding
reasonReferenceΣ I0..*Reference(Condition | Procedure | Observation | ImmunizationRecommendation)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
conditionΣ I1..1Reference(Condition | Procedure)
use1..1CodeableConceptBinding
rank0..1positiveInt
accountI0..*Reference(Account)
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
preAdmissionIdentifier0..1Identifier
originI0..1Reference(Location | Organization)
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionI0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ0..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
reAdmission0..1CodeableConcept
dietPreference0..*CodeableConcept
specialCourtesy0..*CodeableConceptBinding
specialArrangement0..*CodeableConceptBinding
destinationI0..1Reference(Location | Organization)
dischargeDisposition0..1CodeableConcept
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
locationI1..1Reference(Location)
status0..1codeBinding
physicalType0..1CodeableConcept
periodI0..1Period
serviceProviderI1..1Reference(Organization)
partOfI0..1Reference(Encounter)

This profile is derived from the base FHIR Encounter resource.

Requirements

This structure defines these element as mandatory requirement:

  1. A latest status status
  2. An identifier identifier where the system is "http://fhir.hie.moh.gov.my/sid/encounter-id"
  3. A latest classification class
  4. A type type
  5. A serviceType serviceType
  6. A patient referenced subject
  7. A starting data & time period.start
  8. A managing facility referenced serviceProvider
  9. If a participant is mentioned participant.individual, need to include the role participant.type

Slice

This structure defines the following slice:

  1. identifier element, sliced based on value:system,
  1. type.coding element, sliced based on value:system,

Extension

This structure includes the following extension:

  1. ExtensionAudit (MY Core)
  2. ExtensionEncounterOutcome (MY Core)
  3. ExtensionVisitType (MY Core)