Finnish Base Profiles
1.0.0 - trial-use Finland flag

This page is part of the Finnish Base Profiles (v1.0.0: STU 1) 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: FI Base Reason for Care (encounter-diagnosis and reason for visit)

Official URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-reason-for-care Version: 1.0.0
Active as of 2023-11-10 Computable Name: FiBaseReasonForCare

This is the Finnish base profile for the encounter-diagnosis and (nurse asserted) reason for visit Conditions.

This Finnish base profile for the Reason for Care Condition resource is still very early in development, and implementer feedback is appreciated in many aspects. There are many TODO parts intentionally left in this draft version. See also the foreseen further development needs below.

Scope and Usage

This profile describes Diagnosis based conditions and Finnish kayntisyy. These are Condition resources that are asserted by a healthcare professional and directly related to encounters. This profile does not describe how to communicate problem-list-item level conditions.

THL has a data model for Finnish diagnosis (including käyntisyy) in code server: THL/Tietosisältö - Diagnoosit (“THL specification”).

For high level documentation, see Tiedonhallintapalvelun periaatteet ja toiminnallinen määrittely 2021, versio 1.2.

This profile SHOULD NOT be used to describe reason given by patient for requesting/acquiring healthcare service. Finnish tulosyy.

Separating between Diagnosis based conditions and Finnish käyntisyy

Reason for care may be a diagnosis asserted by a clinician / medical doctor or some other reason for visit that is asserted by an nurse or some other healthcare professional.

A reason for care condition needs to be categorized to make the distinction between clinician asserted diagnosis and other käyntisyy conditions. When reason for care is a clinician asserted diagnosis it MUST contain another category code encounter-diagnosis. When condition is not asserted by a clincian it MUST NOT contain encounter-diagnosis category code.

Categories match to THL specification in following way:

  • when additionally encounter-diagnosis is present –> This is a diagnosis and is not a käyntisyy
    • In THL specification, codeId 23: Käyntisyy has value False
  • when encounter-diagnosis is not present –> This is a käyntisyy
    • In THL specification, codeId 23: Käyntisyy has value True
Diagnosis Code Systems

When using Finnish ICD-10 it’s usage has special rules. These are described below. For reference and detailed specifications, see Potilastiedon arkiston Kertomus ja lomakkeet version 5.11 or later.

Diagnosis code (reason)

code SHALL only contain the reason code.

When using Finnish ICD-10, the code MUST NOT contain special characters (+,&,# after the code indicate reason). Pre-built pairs (like E85.9+I68.0) SHALL be broken down to constituent parts and the code part indicating reason (in case of E85.9+I68.0, Koodi1 field) used here.

In THL specification, this data is codeId 1: Diagnoosi.

In THL specification, there is another codeId 6: “ICD-10 -vastaavuuskoodi ICPC-koodille”. This MAY be in code (it’s the same code, but coded in another code system, so repetition of code is ok). Other codes, like symptom and accident type SHOULD NOT be repetitions of code.

More than one code may be used in code (in code’s repetitions of coding). code itself cannot be repeated. Currently ICD-10, ICPC2 are supported by THL, in near future ICD-11, SNOMED and ORPHA will become supported too. Additional codes may be expressed by repeating coding. Other codes like a symptom SHOULD NOT be communicated via code, repetitions should represent the same concept (see CodeableConcept datatype specification).

Here’s a valid example of repeating code.coding (code is not repeating, but coding has repetitions expressing the same information in two code systems):

  "code" : {
    "coding" : [
      {
        "system" : "urn:oid:1.2.246.537.6.1",
        "version" : "1999",
        "code" : "H36.03",
        "display" : "Proliferatiivinen diabeettinen retinopatia"
      },
      {
        "system" : "urn:oid:1.2.246.537.6.31",
        "version" : "2007",
        "code" : "F83",
        "display" : "Retinopatia, verkkokalvon rappeuma"
      }
    ],
    "text" : "..."
  }
Symptom code

In THL specification, this data is codeId 26: Diagnoosin tai käyntisyyn oirekoodi.

Symptom code SHOULD be communicated via evidence.

When using the Finnish ICD-10 version, the code MUST NOT contain special characters (+ after the code and * before code indicating the symptom). Pre-built pairs (like E85.9+I68.0) SHALL be broken down to constituent parts and the code part indicating symptom (in case of E85.9+I68.0, Koodi2 field).

For example:

"evidence" : [
    {
      "code" : [
        {
          "coding" : [
            {
              "system" : "urn:oid:1.2.246.537.6.1",
              "version" : "1999",
              "code" : "E11.3",
              "display" : "Aikuistyypin diabetes diabeteksen silmäkomplikaatiot"
            }
          ]
        }
      ]
    }
  ]
Name of diagnosis

In THL specification, this data is codeId 21: Diagnoosin tai käyntisyyn nimi.

A practitioner may make some adjustments to the name of the diagnosis. code.coding.display SHALL still be the original name from the codesystem and code.text MAY contain an adjusted name for the diagnosis.

Primary diagnosis (käyntisyy)

In THL specification, this data is codeId 2: Diagnoosin tai käyntisyyn ensisijaisuus.

Extension primaryCondition is used to express whether this diagnosis is the primary condition for why the encounter takes place.

The extension SHALL have a code from “AR/YDIN - Diagnoosin /toimenpiteen ensisijaisuus” (oid 1.2.246.537.5.40005).

Permanence (pysyvyys)

In THL specification, this data is codeId 8: Diagnoosin pysyvyys.

Extension permanence is used to express whether the condition is permanent or not.

The extension SHALL have a code from “AR/YDIN - Pysyvyys” (oid 1.2.246.537.5.40003).

This information has some relation to clinicalStatus, but “AR/YDIN - Pysyvyys” cannot be mapped to clinicalStatus codes (doing so would redefine clinicalStatus).

Onset

In THL specification, this data is codeId 12: Diagnoosin tai käyntisyyn toteamispäivä.

Standard onset SHOULD be used.

Abatement

In THL specification, this data is codeId 16: Diagnoosin päättymispäivä.

Standard abatement MAY be used.

Asserter

Standard asserter MAY be used.

When asserter references a Practitioner, it can provide information for codeId 11: Toteajan nimi in THL specification. When asserter references a PractitionerRole, it can provide information for both codeId 11: Toteajan nimi and codeId 19: Toteajan palveluyksikkö.

Type of physical exercise during which injury occurred

In THL specification, this data is codeId 24: Tapaturman liikuntalaji.

Extension physicalExcercise is used.

Endocrinological disorder

In THL specification, this data is codeId 27: Endokrinologisen häiriön koodi.

Extension endocrinologicalDisorder is used.

Medication that caused this condition

In THL specification, this data is codeId 28: Aiheuttajan ATC-koodi.

Extension conditionCausedByMedication is used.

External cause for diagnosis

In THL specification, this data is codeId 3: Diagnoosin ulkoinen syy.

Extension conditionExternalCause is used.

Categorization of the type of accident

In THL specification, this data is codeId 4: Diagnoosin tapaturmatyyppi.

Extension conditionCategorizationOfAccident is used.

Cause of an adverse effect

In THL specification, this data is codeId 5: Haittavaikutuksen aiheuttaja.

Extension causeOfAdverseEffect is used.

Further development needs

Finnish diagnosis has some data that is not yet modeled in this profile. There is more modeling and mapping work to be done. Following list contains most relevant parts that need work:

  • Use of `problem-list-item` for long term diagnosis (Pitkäaikaisdiagnoosi or Pysyvä diagnoosi)? The conceptual mapping is not staightforward.
  • THL Tietosisältö 10 Tiedon lähde. Should this be an extension?
  • THL Tietosisältö 15 Diagnoosin päättymisen toteajan nimi.
  • THL Tietosisältö 17 Diagnoosin päättymisen syy.
  • THL Tietosisältö 18 Diagnoosin päättymisen syyn tarkenne.
  • THL Tietosisältö 20 Diagnoosin päättymisen toteajan palveluyksikkö.
  • THL Tietosisältö 22 Episodin nimi.
  • THL Tietosisältö 7 Diagnoosin tai käyntisyyn varmuusaste. This could perhaps be mapped to verificationStatus codes.
  • THL Tietosisältö 9 Diagnoosin tai käyntisyyn episoditunnus.

Feedback on all of the above is most welcome for further development of this profile. </div> #### Links * [*Suomalainen tautien kirjaamisen ohjekirja*](https://thl.fi/documents/10531/124365/Opas%202012%2017.pdf), the national guide for the use of ICD-10.

Usage:

Formal Views of Profile Content

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

This structure is derived from FiBaseCondition

NameFlagsCard.TypeDescription & Constraintsdoco
.. Condition 0..*FiBaseConditionDetailed information about conditions, problems or diagnoses
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... primaryCondition 0..1CodingPrimary condition for encounter
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-primary
... permanence 0..1CodingPermanence of condition
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-permanence
... endocrinologicalDisorder 0..1CodingEndocrinological disorder
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-endocrinological-disorder
... conditionCausedByMedication 0..1CodingMedication that caused this condition
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-caused-by-medication
... conditionExternalCause 0..1CodingExternal cause for diagnosis
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-external-cause
... conditionCategorizationOfAccident 0..1CodingCategorization of the type of accident
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-categorization-of-accident
... causeOfAdverseEffect 0..1CodingCause of an adverse effect
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-cause-of-adverse-effect

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Condition C0..*FiBaseConditionDetailed information about conditions, problems or diagnoses
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... primaryCondition 0..1CodingPrimary condition for encounter
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-primary
... physicalExcercise 0..1CodingType of physical exercise during which injury occurred.
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-physical-excercise
... endocrinologicalDisorder 0..1CodingEndocrinological disorder
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-endocrinological-disorder
... conditionCausedByMedication 0..1CodingMedication that caused this condition
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-caused-by-medication
... conditionExternalCause 0..1CodingExternal cause for diagnosis
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-external-cause
... conditionCategorizationOfAccident 0..1CodingCategorization of the type of accident
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-categorization-of-accident
... causeOfAdverseEffect 0..1CodingCause of an adverse effect
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-cause-of-adverse-effect
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... clinicalStatus ?!SΣC0..1CodeableConceptactive | recurrence | relapse | inactive | remission | resolved
Binding: ConditionClinicalStatusCodes (required): The clinical status of the condition or diagnosis.

... verificationStatus ?!SΣC0..1CodeableConceptunconfirmed | provisional | differential | confirmed | refuted | entered-in-error
Binding: ConditionVerificationStatus (required): The verification status to support or decline the clinical status of the condition or diagnosis.

... category S0..*CodeableConceptproblem-list-item | encounter-diagnosis
Binding: ConditionCategoryCodes (extensible): A category assigned to the condition.


... code SΣ1..1CodeableConceptIdentification of the condition, problem or diagnosis
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the condition or diagnosis.

... subject SΣ1..1Reference(FI Base Patient)Who has the condition?

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Condition.clinicalStatusrequiredConditionClinicalStatusCodes
Condition.verificationStatusrequiredConditionVerificationStatus
Condition.categoryextensibleConditionCategoryCodes
Condition.codeexampleCondition/Problem/DiagnosisCodes

Constraints

IdGradePath(s)DetailsRequirements
con-3best practiceConditionCondition.clinicalStatus SHALL be present if verificationStatus is not entered-in-error and category is problem-list-item
: clinicalStatus.exists() or verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-ver-status' and code = 'entered-in-error').exists() or category.select($this='problem-list-item').empty()
con-4errorConditionIf condition is abated, then clinicalStatus must be either inactive, resolved, or remission
: abatement.empty() or clinicalStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-clinical' and (code='resolved' or code='remission' or code='inactive')).exists()
con-5errorConditionCondition.clinicalStatus SHALL NOT be present if verification Status is entered-in-error
: verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-ver-status' and code='entered-in-error').empty() or clinicalStatus.empty()
dom-2errorConditionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorConditionIf 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-4errorConditionIf 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-5errorConditionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceConditionA 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
.. Condition C0..*FiBaseConditionDetailed information about conditions, problems or diagnoses
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... primaryCondition 0..1CodingPrimary condition for encounter
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-primary
... permanence 0..1CodingPermanence of condition
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-permanence
... physicalExcercise 0..1CodingType of physical exercise during which injury occurred.
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-physical-excercise
... endocrinologicalDisorder 0..1CodingEndocrinological disorder
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-endocrinological-disorder
... conditionCausedByMedication 0..1CodingMedication that caused this condition
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-caused-by-medication
... conditionExternalCause 0..1CodingExternal cause for diagnosis
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-external-cause
... conditionCategorizationOfAccident 0..1CodingCategorization of the type of accident
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-categorization-of-accident
... causeOfAdverseEffect 0..1CodingCause of an adverse effect
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-cause-of-adverse-effect
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal Ids for this condition
... clinicalStatus ?!SΣC0..1CodeableConceptactive | recurrence | relapse | inactive | remission | resolved
Binding: ConditionClinicalStatusCodes (required): The clinical status of the condition or diagnosis.

... verificationStatus ?!SΣC0..1CodeableConceptunconfirmed | provisional | differential | confirmed | refuted | entered-in-error
Binding: ConditionVerificationStatus (required): The verification status to support or decline the clinical status of the condition or diagnosis.

... category S0..*CodeableConceptproblem-list-item | encounter-diagnosis
Binding: ConditionCategoryCodes (extensible): A category assigned to the condition.


... severity 0..1CodeableConceptSubjective severity of condition
Binding: Condition/DiagnosisSeverity (preferred): A subjective assessment of the severity of the condition as evaluated by the clinician.

... code SΣ1..1CodeableConceptIdentification of the condition, problem or diagnosis
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the condition or diagnosis.

... bodySite Σ0..*CodeableConceptAnatomical location, if relevant
Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.


... subject SΣ1..1Reference(FI Base Patient)Who has the condition?
... encounter Σ0..1Reference(Encounter)Encounter created as part of
... onset[x] Σ0..1Estimated or actual date, date-time, or age
.... onsetDateTimedateTime
.... onsetAgeAge
.... onsetPeriodPeriod
.... onsetRangeRange
.... onsetStringstring
... abatement[x] C0..1When in resolution/remission
.... abatementDateTimedateTime
.... abatementAgeAge
.... abatementPeriodPeriod
.... abatementRangeRange
.... abatementStringstring
... recordedDate Σ0..1dateTimeDate record was first recorded
... recorder Σ0..1Reference(Practitioner | PractitionerRole | Patient | RelatedPerson)Who recorded the condition
... asserter Σ0..1Reference(Practitioner | PractitionerRole | Patient | RelatedPerson)Person who asserts this condition
... stage C0..*BackboneElementStage/grade, usually assessed formally
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... summary C0..1CodeableConceptSimple summary (disease specific)
Binding: ConditionStage (example): Codes describing condition stages (e.g. Cancer stages).

.... assessment C0..*Reference(ClinicalImpression | DiagnosticReport | Observation)Formal record of assessment
.... type 0..1CodeableConceptKind of staging
Binding: ConditionStageType (example): Codes describing the kind of condition staging (e.g. clinical or pathological).

... evidence C0..*BackboneElementSupporting evidence
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code ΣC0..*CodeableConceptManifestation/symptom
Binding: ManifestationAndSymptomCodes (example): Codes that describe the manifestation or symptoms of a condition.


.... detail ΣC0..*Reference(Resource)Supporting information found elsewhere
... note 0..*AnnotationAdditional information about the Condition

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Condition.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Condition.clinicalStatusrequiredConditionClinicalStatusCodes
Condition.verificationStatusrequiredConditionVerificationStatus
Condition.categoryextensibleConditionCategoryCodes
Condition.severitypreferredCondition/DiagnosisSeverity
Condition.codeexampleCondition/Problem/DiagnosisCodes
Condition.bodySiteexampleSNOMEDCTBodyStructures
Condition.stage.summaryexampleConditionStage
Condition.stage.typeexampleConditionStageType
Condition.evidence.codeexampleManifestationAndSymptomCodes

Constraints

IdGradePath(s)DetailsRequirements
con-1errorCondition.stageStage SHALL have summary or assessment
: summary.exists() or assessment.exists()
con-2errorCondition.evidenceevidence SHALL have code or details
: code.exists() or detail.exists()
con-3best practiceConditionCondition.clinicalStatus SHALL be present if verificationStatus is not entered-in-error and category is problem-list-item
: clinicalStatus.exists() or verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-ver-status' and code = 'entered-in-error').exists() or category.select($this='problem-list-item').empty()
con-4errorConditionIf condition is abated, then clinicalStatus must be either inactive, resolved, or remission
: abatement.empty() or clinicalStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-clinical' and (code='resolved' or code='remission' or code='inactive')).exists()
con-5errorConditionCondition.clinicalStatus SHALL NOT be present if verification Status is entered-in-error
: verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-ver-status' and code='entered-in-error').empty() or clinicalStatus.empty()
dom-2errorConditionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorConditionIf 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-4errorConditionIf 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-5errorConditionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceConditionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Differential View

This structure is derived from FiBaseCondition

NameFlagsCard.TypeDescription & Constraintsdoco
.. Condition 0..*FiBaseConditionDetailed information about conditions, problems or diagnoses
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... primaryCondition 0..1CodingPrimary condition for encounter
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-primary
... permanence 0..1CodingPermanence of condition
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-permanence
... endocrinologicalDisorder 0..1CodingEndocrinological disorder
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-endocrinological-disorder
... conditionCausedByMedication 0..1CodingMedication that caused this condition
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-caused-by-medication
... conditionExternalCause 0..1CodingExternal cause for diagnosis
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-external-cause
... conditionCategorizationOfAccident 0..1CodingCategorization of the type of accident
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-categorization-of-accident
... causeOfAdverseEffect 0..1CodingCause of an adverse effect
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-cause-of-adverse-effect

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Condition C0..*FiBaseConditionDetailed information about conditions, problems or diagnoses
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... primaryCondition 0..1CodingPrimary condition for encounter
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-primary
... physicalExcercise 0..1CodingType of physical exercise during which injury occurred.
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-physical-excercise
... endocrinologicalDisorder 0..1CodingEndocrinological disorder
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-endocrinological-disorder
... conditionCausedByMedication 0..1CodingMedication that caused this condition
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-caused-by-medication
... conditionExternalCause 0..1CodingExternal cause for diagnosis
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-external-cause
... conditionCategorizationOfAccident 0..1CodingCategorization of the type of accident
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-categorization-of-accident
... causeOfAdverseEffect 0..1CodingCause of an adverse effect
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-cause-of-adverse-effect
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... clinicalStatus ?!SΣC0..1CodeableConceptactive | recurrence | relapse | inactive | remission | resolved
Binding: ConditionClinicalStatusCodes (required): The clinical status of the condition or diagnosis.

... verificationStatus ?!SΣC0..1CodeableConceptunconfirmed | provisional | differential | confirmed | refuted | entered-in-error
Binding: ConditionVerificationStatus (required): The verification status to support or decline the clinical status of the condition or diagnosis.

... category S0..*CodeableConceptproblem-list-item | encounter-diagnosis
Binding: ConditionCategoryCodes (extensible): A category assigned to the condition.


... code SΣ1..1CodeableConceptIdentification of the condition, problem or diagnosis
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the condition or diagnosis.

... subject SΣ1..1Reference(FI Base Patient)Who has the condition?

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Condition.clinicalStatusrequiredConditionClinicalStatusCodes
Condition.verificationStatusrequiredConditionVerificationStatus
Condition.categoryextensibleConditionCategoryCodes
Condition.codeexampleCondition/Problem/DiagnosisCodes

Constraints

IdGradePath(s)DetailsRequirements
con-3best practiceConditionCondition.clinicalStatus SHALL be present if verificationStatus is not entered-in-error and category is problem-list-item
: clinicalStatus.exists() or verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-ver-status' and code = 'entered-in-error').exists() or category.select($this='problem-list-item').empty()
con-4errorConditionIf condition is abated, then clinicalStatus must be either inactive, resolved, or remission
: abatement.empty() or clinicalStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-clinical' and (code='resolved' or code='remission' or code='inactive')).exists()
con-5errorConditionCondition.clinicalStatus SHALL NOT be present if verification Status is entered-in-error
: verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-ver-status' and code='entered-in-error').empty() or clinicalStatus.empty()
dom-2errorConditionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorConditionIf 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-4errorConditionIf 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-5errorConditionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceConditionA 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
.. Condition C0..*FiBaseConditionDetailed information about conditions, problems or diagnoses
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... primaryCondition 0..1CodingPrimary condition for encounter
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-primary
... permanence 0..1CodingPermanence of condition
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-permanence
... physicalExcercise 0..1CodingType of physical exercise during which injury occurred.
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-physical-excercise
... endocrinologicalDisorder 0..1CodingEndocrinological disorder
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-endocrinological-disorder
... conditionCausedByMedication 0..1CodingMedication that caused this condition
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-caused-by-medication
... conditionExternalCause 0..1CodingExternal cause for diagnosis
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-external-cause
... conditionCategorizationOfAccident 0..1CodingCategorization of the type of accident
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-categorization-of-accident
... causeOfAdverseEffect 0..1CodingCause of an adverse effect
URL: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/condition-cause-of-adverse-effect
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierExternal Ids for this condition
... clinicalStatus ?!SΣC0..1CodeableConceptactive | recurrence | relapse | inactive | remission | resolved
Binding: ConditionClinicalStatusCodes (required): The clinical status of the condition or diagnosis.

... verificationStatus ?!SΣC0..1CodeableConceptunconfirmed | provisional | differential | confirmed | refuted | entered-in-error
Binding: ConditionVerificationStatus (required): The verification status to support or decline the clinical status of the condition or diagnosis.

... category S0..*CodeableConceptproblem-list-item | encounter-diagnosis
Binding: ConditionCategoryCodes (extensible): A category assigned to the condition.


... severity 0..1CodeableConceptSubjective severity of condition
Binding: Condition/DiagnosisSeverity (preferred): A subjective assessment of the severity of the condition as evaluated by the clinician.

... code SΣ1..1CodeableConceptIdentification of the condition, problem or diagnosis
Binding: Condition/Problem/DiagnosisCodes (example): Identification of the condition or diagnosis.

... bodySite Σ0..*CodeableConceptAnatomical location, if relevant
Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.


... subject SΣ1..1Reference(FI Base Patient)Who has the condition?
... encounter Σ0..1Reference(Encounter)Encounter created as part of
... onset[x] Σ0..1Estimated or actual date, date-time, or age
.... onsetDateTimedateTime
.... onsetAgeAge
.... onsetPeriodPeriod
.... onsetRangeRange
.... onsetStringstring
... abatement[x] C0..1When in resolution/remission
.... abatementDateTimedateTime
.... abatementAgeAge
.... abatementPeriodPeriod
.... abatementRangeRange
.... abatementStringstring
... recordedDate Σ0..1dateTimeDate record was first recorded
... recorder Σ0..1Reference(Practitioner | PractitionerRole | Patient | RelatedPerson)Who recorded the condition
... asserter Σ0..1Reference(Practitioner | PractitionerRole | Patient | RelatedPerson)Person who asserts this condition
... stage C0..*BackboneElementStage/grade, usually assessed formally
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... summary C0..1CodeableConceptSimple summary (disease specific)
Binding: ConditionStage (example): Codes describing condition stages (e.g. Cancer stages).

.... assessment C0..*Reference(ClinicalImpression | DiagnosticReport | Observation)Formal record of assessment
.... type 0..1CodeableConceptKind of staging
Binding: ConditionStageType (example): Codes describing the kind of condition staging (e.g. clinical or pathological).

... evidence C0..*BackboneElementSupporting evidence
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code ΣC0..*CodeableConceptManifestation/symptom
Binding: ManifestationAndSymptomCodes (example): Codes that describe the manifestation or symptoms of a condition.


.... detail ΣC0..*Reference(Resource)Supporting information found elsewhere
... note 0..*AnnotationAdditional information about the Condition

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
Condition.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
Condition.clinicalStatusrequiredConditionClinicalStatusCodes
Condition.verificationStatusrequiredConditionVerificationStatus
Condition.categoryextensibleConditionCategoryCodes
Condition.severitypreferredCondition/DiagnosisSeverity
Condition.codeexampleCondition/Problem/DiagnosisCodes
Condition.bodySiteexampleSNOMEDCTBodyStructures
Condition.stage.summaryexampleConditionStage
Condition.stage.typeexampleConditionStageType
Condition.evidence.codeexampleManifestationAndSymptomCodes

Constraints

IdGradePath(s)DetailsRequirements
con-1errorCondition.stageStage SHALL have summary or assessment
: summary.exists() or assessment.exists()
con-2errorCondition.evidenceevidence SHALL have code or details
: code.exists() or detail.exists()
con-3best practiceConditionCondition.clinicalStatus SHALL be present if verificationStatus is not entered-in-error and category is problem-list-item
: clinicalStatus.exists() or verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-ver-status' and code = 'entered-in-error').exists() or category.select($this='problem-list-item').empty()
con-4errorConditionIf condition is abated, then clinicalStatus must be either inactive, resolved, or remission
: abatement.empty() or clinicalStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-clinical' and (code='resolved' or code='remission' or code='inactive')).exists()
con-5errorConditionCondition.clinicalStatus SHALL NOT be present if verification Status is entered-in-error
: verificationStatus.coding.where(system='http://terminology.hl7.org/CodeSystem/condition-ver-status' and code='entered-in-error').empty() or clinicalStatus.empty()
dom-2errorConditionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorConditionIf 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-4errorConditionIf 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-5errorConditionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceConditionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

 

Other representations of profile: CSV, Excel, Schematron