1.0.0 - Release

This page is part of the KLChildren (v1.0.0: Release) based on FHIR R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

Resource Profile: KLGatewayChildrenEncounter

Official URL: http://fhir.kl.dk/children/StructureDefinition/klgateway-children-encounter Version: 1.0.0
Active as of 2023-09-30 Computable Name: KLGatewayChildrenEncounter

Encounter for health prevention and need-based visits from childrens nurses

Scope and usage

klgateway-children-encounter is used whenever a child with or without family members meet the health nurse (sundhedsplejerske) in a Danish municipality context. The CommonCareSocialEncounters are e.g.

  • Home visits in citizens homes by health nurses
  • Open consultations
  • Specialized service for specific groups

The Encounter.type.coding attribute is used to classify the type of activities that occur at the encounter. The encounters have been classified according to the guidance document from the Health Authorities (Sundhedsstyrelsen).

  • Forebyggelseskontakt af småbørnssundhedsplejen
    • Graviditetsbesøg
    • Barselsbesøg
    • Etableringsbesøg
    • Andet besøg i barnets første levemåned
    • Besøg ved det ca. 2 måneder gamle barn
    • Besøg ved det 4-6 måneder gamle barn
    • Besøg ved det 8-11 måneder gamle barn
  • Behovsbesøg af småbørnssundhedsplejen
  • Anden kontakt med småbørnssundhedsplejen ifm den almindelige forebyggende småbørnsindsats
    • Kontakt med sundhedsplejen i åben konsultation
    • Kontakt med sundhedsplejen ifm. gruppeaktivitet”
  • Forebyggelseskontakt i skolesundhedsplejen
    • Indskolingsundersøgelse
    • første klasses undersøgelse
    • Undersøgelse i mellemtrin, med måling
    • Udskolingsundersøgelse
  • Behovsbaseret kontakt med skolesundhedsplejersken”
  • Anden kontakt med skolesundhedsplejersken ifm den almindelige forebyggende skolebørnsindsats”

Sometimes, it might be difficult to apply the correct type to an encounter. The following guiding principles exists:

  • The encounter in which most of the activities of a certain visit or examination (as described in the guidance document) is carried out, is classified as that type of visit or examination. This holds true even if the guidance document describes this enconter or examination for a child of a certain age, and the child examined is in fact younger or older. (fx hvis man besøger et 12 måneder gammelt barn, og udfører de ting sundhedsstyrelsen vejledning beskriver for ‘besøg ved det 8-11 måneder gamle barn’, så klassificeres det som ‘besøg ved det 8-11 måneder gamle barn’.)
  • If certain mandatory activites are not carried out, and another encounter is planned and completed to account for this, classify this secondary encounter as ‘Forebyggelsekontakt i småbørnssundhedsplejen’/’Forebyggelseskontakt i skolesundhedsplejen’.
  • If local encounter types exists, report them as the most specific type which is still true. Be especially aware if the reason for the encounter is prevention, or a specific need in the family. E.g. a municipality may have a specific encountertype to help mothers that have problems with breastfeeding. These should be reported as ‘Behovsbesøg af småbørnssundhedsplejen’. If the municipality has regular extra visits with all children in the 3rd month, they should be reported af ‘Forebyggelseskontakt af småbørnssundhedsplejen’.

In the context of the children database, only encounters actually carried out should be documented. Consequently, for most intends and purposes the encounter.status should be ‘finished’. However, if errors have been repported use the ‘entered-in-error’ status as described by the FHIR-documentation.

Encounter.class is mandatory in FHIR. In Danish municipalities the values are used as follows.

  • Visits in citizens homes have the code ‘HH’ home health, the code is also used for services that are not strictly health related e.g. help with cleaning. This code is also used, even if the activities stretch outside the citizens residence e.g. a physiotherapist that want to see a citizen walk outside, or a social worker helping with shpping activities.
  • Sessions where the citizens visit municipality facilities e.g. for training or health prevention have the code “AMB” ambulatory.
  • For telehealth/telecare encounters, where the patient is contacted by telephone, by teleconference or e-mail, the code is ‘VR’ virtual.

The time of the encounter is documented in Encounter.period.start, and is mandatory. The endtime is not mandatory.

Encounter.subject relates to the subject that the encounter is about. In the context of the childrens database, only the childrens encounters are documented. This should be respected even though many visits are directed at the family as a whole.

Conversions between Danish information model and FHIR-profile

Nedenstående tabel oversætter mellem de attributter der er defineret i den fælleskommunale informationsmodel (FKI), definerer kort den enkelte attribut på dansk og specificere hvilke af FHIR-profilens atributter der skal bruges til specifikation af indholdet

FKI-attribut Definition FHIR
borgerkontakttype Klasse der udtrykker typen af aktivitet der gennemføres ved kontakten Encounter.type.coding
borgerkontaktstatus Klasse der indikerer om kontakten er igangværende, eller om dokumentationen repræsentere en fremtidig intention eller er historisk Encounter.status
borgerkontaktklasse Klasse, der udtrykker en generel kategori for kontakten, som rækker ud over den kommunale kontekst. Encounter.class
borgerkontaktstart Kontaktens start, eller planlagte start Encounter.period.start
borgerkontaktslut Kontaktens sluttidspunkt, eller planlagte sluttidspunkt Encounter.period.end
borgerkontaktsubjekt Den borger kontakten vedrører Encounter.subject

Usage:

Formal Views of Profile Content

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

This structure is derived from Encounter

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter Encounter
... identifier 0..0
... status 1..1code[DK] kontaktstatus
... statusHistory 0..0
.... version 0..0
.... display 0..0
.... userSelected 0..0
... classHistory 0..0
... type 0..*CodeableConceptSpecific type of encounter
Binding: EncounterTypes (required)
.... coding 1..*Coding[DK] kontakttype
..... version 0..0
..... userSelected 0..0
.... text 0..0
... serviceType 0..0
... priority 0..0
... subject 1..1Reference(KLGatewayChildrenCitizen) {b}[DK] kontaktsubjekt
... episodeOfCare 0..0
... basedOn 0..0
... participant 0..0
... appointment 0..0
... period 1..1PeriodThe start and end time of the encounter
.... start 1..1dateTime[DK] kontaktstart
.... end 0..1dateTime[DK] kontaktslut
... length 0..0
... reasonCode 0..0
... reasonReference 0..0
... diagnosis 0..0
... account 0..0
... hospitalization 0..0
... location 0..0
... serviceProvider 0..0
... partOf 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Encounter.typerequiredEncounterTypes
NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter 0..*EncounterAn interaction during which services are provided to the patient
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... status ?!Σ1..1code[DK] kontaktstatus
Binding: EncounterStatus (required): Current state of the encounter.

... type Σ0..*CodeableConceptSpecific type of encounter
Binding: EncounterTypes (required)
.... coding Σ1..*Coding[DK] kontakttype
... subject Σ1..1Reference(KLGatewayChildrenCitizen) {b}[DK] kontaktsubjekt
... period 1..1PeriodThe start and end time of the encounter
.... start ΣC1..1dateTime[DK] kontaktstart
.... end ΣC0..1dateTime[DK] kontaktslut

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Encounter.statusrequiredEncounterStatus
Encounter.statusHistory.statusrequiredEncounterStatus
Encounter.classextensibleActEncounterCode
Encounter.classHistory.classextensibleActEncounterCode
Encounter.typerequiredEncounterTypes

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorEncounterIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorEncounterIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorEncounterIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorEncounterIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceEncounterA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter 0..*EncounterAn interaction during which services are provided to the patient
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... status ?!Σ1..1code[DK] kontaktstatus
Binding: EncounterStatus (required): Current state of the encounter.

... class Σ1..1Coding[DK] kontaktklasse
Binding: ActEncounterCode (extensible): Classification of the encounter.

.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... system Σ0..1uriIdentity of the terminology system
.... code Σ0..1codeSymbol in syntax defined by the system
... type Σ0..*CodeableConceptSpecific type of encounter
Binding: EncounterTypes (required)
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ1..*Coding[DK] kontakttype
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriIdentity of the terminology system
..... code Σ0..1codeSymbol in syntax defined by the system
..... display Σ0..1stringRepresentation defined by the system
... subject Σ1..1Reference(KLGatewayChildrenCitizen) {b}[DK] kontaktsubjekt
... period 1..1PeriodThe start and end time of the encounter
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... start ΣC1..1dateTime[DK] kontaktstart
.... end ΣC0..1dateTime[DK] kontaktslut

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Encounter.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Encounter.statusrequiredEncounterStatus
Encounter.statusHistory.statusrequiredEncounterStatus
Encounter.classextensibleActEncounterCode
Encounter.classHistory.classextensibleActEncounterCode
Encounter.typerequiredEncounterTypes
Encounter.participant.typeextensibleParticipantType
Encounter.diagnosis.usepreferredDiagnosisRole
Encounter.hospitalization.admitSourcepreferredAdmitSource
Encounter.hospitalization.reAdmissionexampleHl7VSReAdmissionIndicator
Encounter.hospitalization.dietPreferenceexampleDiet
Encounter.hospitalization.specialCourtesypreferredSpecialCourtesy
Encounter.hospitalization.specialArrangementpreferredSpecialArrangements
Encounter.hospitalization.dischargeDispositionexampleDischargeDisposition
Encounter.location.statusrequiredEncounterLocationStatus
Encounter.location.physicalTypeexampleLocationType

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorEncounterIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorEncounterIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorEncounterIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorEncounterIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceEncounterA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Encounter

Summary

Mandatory: 3 elements (1 nested mandatory element)
Prohibited: 24 elements

Structures

This structure refers to these other structures:

Differential View

This structure is derived from Encounter

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter Encounter
... identifier 0..0
... status 1..1code[DK] kontaktstatus
... statusHistory 0..0
.... version 0..0
.... display 0..0
.... userSelected 0..0
... classHistory 0..0
... type 0..*CodeableConceptSpecific type of encounter
Binding: EncounterTypes (required)
.... coding 1..*Coding[DK] kontakttype
..... version 0..0
..... userSelected 0..0
.... text 0..0
... serviceType 0..0
... priority 0..0
... subject 1..1Reference(KLGatewayChildrenCitizen) {b}[DK] kontaktsubjekt
... episodeOfCare 0..0
... basedOn 0..0
... participant 0..0
... appointment 0..0
... period 1..1PeriodThe start and end time of the encounter
.... start 1..1dateTime[DK] kontaktstart
.... end 0..1dateTime[DK] kontaktslut
... length 0..0
... reasonCode 0..0
... reasonReference 0..0
... diagnosis 0..0
... account 0..0
... hospitalization 0..0
... location 0..0
... serviceProvider 0..0
... partOf 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Encounter.typerequiredEncounterTypes

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter 0..*EncounterAn interaction during which services are provided to the patient
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... status ?!Σ1..1code[DK] kontaktstatus
Binding: EncounterStatus (required): Current state of the encounter.

... type Σ0..*CodeableConceptSpecific type of encounter
Binding: EncounterTypes (required)
.... coding Σ1..*Coding[DK] kontakttype
... subject Σ1..1Reference(KLGatewayChildrenCitizen) {b}[DK] kontaktsubjekt
... period 1..1PeriodThe start and end time of the encounter
.... start ΣC1..1dateTime[DK] kontaktstart
.... end ΣC0..1dateTime[DK] kontaktslut

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Encounter.statusrequiredEncounterStatus
Encounter.statusHistory.statusrequiredEncounterStatus
Encounter.classextensibleActEncounterCode
Encounter.classHistory.classextensibleActEncounterCode
Encounter.typerequiredEncounterTypes

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorEncounterIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorEncounterIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorEncounterIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorEncounterIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceEncounterA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Encounter 0..*EncounterAn interaction during which services are provided to the patient
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... status ?!Σ1..1code[DK] kontaktstatus
Binding: EncounterStatus (required): Current state of the encounter.

... class Σ1..1Coding[DK] kontaktklasse
Binding: ActEncounterCode (extensible): Classification of the encounter.

.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... system Σ0..1uriIdentity of the terminology system
.... code Σ0..1codeSymbol in syntax defined by the system
... type Σ0..*CodeableConceptSpecific type of encounter
Binding: EncounterTypes (required)
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding Σ1..*Coding[DK] kontakttype
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriIdentity of the terminology system
..... code Σ0..1codeSymbol in syntax defined by the system
..... display Σ0..1stringRepresentation defined by the system
... subject Σ1..1Reference(KLGatewayChildrenCitizen) {b}[DK] kontaktsubjekt
... period 1..1PeriodThe start and end time of the encounter
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... start ΣC1..1dateTime[DK] kontaktstart
.... end ΣC0..1dateTime[DK] kontaktslut

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Encounter.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Encounter.statusrequiredEncounterStatus
Encounter.statusHistory.statusrequiredEncounterStatus
Encounter.classextensibleActEncounterCode
Encounter.classHistory.classextensibleActEncounterCode
Encounter.typerequiredEncounterTypes
Encounter.participant.typeextensibleParticipantType
Encounter.diagnosis.usepreferredDiagnosisRole
Encounter.hospitalization.admitSourcepreferredAdmitSource
Encounter.hospitalization.reAdmissionexampleHl7VSReAdmissionIndicator
Encounter.hospitalization.dietPreferenceexampleDiet
Encounter.hospitalization.specialCourtesypreferredSpecialCourtesy
Encounter.hospitalization.specialArrangementpreferredSpecialArrangements
Encounter.hospitalization.dischargeDispositionexampleDischargeDisposition
Encounter.location.statusrequiredEncounterLocationStatus
Encounter.location.physicalTypeexampleLocationType

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorEncounterIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorEncounterIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorEncounterIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorEncounterIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceEncounterA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Encounter

Summary

Mandatory: 3 elements (1 nested mandatory element)
Prohibited: 24 elements

Structures

This structure refers to these other structures:

 

Other representations of profile: CSV, Excel, Schematron