Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • A ClinicalImpresssion:

    • .finding for each .component in the observation (e.g. systolic and diastolic blood pressure) or a single finding if the observation does not contain components.

      • Each finding for observation will have one of the following alert levels:

        • http://snomed.info/sct, 442082004, fund ved måling inden for referenceinterval (green)

        • http://snomed.info/sct, 442096005, fund ved måling uden for referenceinterval (red, yellow)

      • If the finding is for a component, then it will contain an observation code identifying the component (e.g. systolic blood pressure)

      A Task related to the ClinicalImpression with priority based on the highest alert level found:

      • asap if any values are found in .

    • .finding for the overall assessment which is either green, yellow or red based on the worst severity from components or a single observation, see green, yellow and red in .https://ehealth.sundhed.dk/fhir/ValueSet-ehealth-clinicalimpression-finding-codes.html .

    • A Task related to the ClinicalImpression with priority based on the highest alert level found:

      • asap if any values are found in “red alert” reference ranges

      • urgent if any values are found in “yellow alert” reference ranges (and no “red alert” found)

      • routine if no red or yellow alerts are found

...

The rule processes absolute reference ranges only, that is, Observation.referenceRange.type where the Coding has:

  • system: urn:oid:1.2.208.184.100.1

  • code: RAL or GAL, for red alarm absolute reference range and yellow alarm absolute reference range, respectively.

...

The rule accepts observation values and reference ranges without units. However if both have a unit specified, they must match.

Assessment of Relative Reference Ranges Library and Rule

This Library is similar to the Absolute Reference Range library (see above) in some aspects: Input and output are identical. The difference is the the type of reference ranges that the rule handles. Absolute and relative reference range libraries can co-exist and can both process the same Observation. They will each handle their corresponding type of reference ranges associated with the Observation.

The rule processes relative reference ranges only, that is, Observation.referenceRange.type where the Coding has:

...

Error handling for different situations which result in the rule setting up instructions for creation of one or two Task:

Situation

Generic Task

Possible Specific Task (Stating what was wrong)

No absolute reference range found

Task (Stating that measurement needs manual assessment):

  • .category with .code = MeasurementForAssessment, .system = http://ehealth.sundhed.dk/cs/

...

code: RELRAL or RELGAL, for red alarm relative reference range and yellow alarm relative reference range, respectively.

A vital difference from the rule in the Absolute Reference Range Library is that Relative Reference Range Library rule must have a reference base to compare against.

A relative reference range can be stated:

  • in same unit as the Observation

  • as a percentage or, in case the Observation is already expressed with unit percentage (as is the case for oxygen saturation, for instance), as a percentage point.

...

Example relative reference range as -5 percentage point with reference base 90% for oxygen saturation measurement

...

  • task-category, .display = Need assessment of measurement

  • .description = Måling til vurdering

  • .restrictionCategory with .code = measurement-monitoring, system = http://ehealth.sundhed.dk/cs/restriction-category, .display = Monitoring of measurement(s)

  • .priority = routine

  • .focus = reference to measurement being processed, for instance Observation, QuestionnaireResponse or Media

No additional task.

Unit mismatch between reference range and observation value

Task (Stating that measurement needs manual assessment as auto processing failed):

  • .category with .code = MeasurementForAssessmentFailureInAutoProcessing, .system = http://ehealth.sundhed.dk/cs/task-category, .display = Measurement Assessment failure during automated processing

  • .description = Vurdering af måling er fejlet under automatisk behandling

  • .restrictionCategory with .code = measurement-monitoring, system = http://

...

A red alarm relative reference range given as -5 percentage point would be given by a SimpleQuantity for the reference range’s low element with:

...

value=-5

...

unit=percentage point

  • ehealth.sundhed.dk/cs/restriction-category, .display = Monitoring of measurement(s)

  • .priority = routine

  • .focus = reference to measurement being processed, for instance Observation, QuestionnaireResponse or Media

Task:

  • .category with .code = RefRangeFixingNeeded, .system = http://ehealth.sundhed.dk/cs/

...

code=percentagepoint

Thus, the rule would treat an Observation with value 85% as a red alarm case for this relative reference range and current choice of reference base with value 90%.

The rule handles situations as follows:

Situation

Handling by setting up instructions causing creation of Task

Neither reference base nor relative reference range(s) found

Task
  • task-category, .display = Missing in force reference base required for automatic processing

  • .description = Automatiseret behandling af måledata fejlede. Grænseværdi krævet af automatiseret behandling skal udbedres

  • .restrictionCategory with .code = measurement-monitoring, system = http://ehealth.sundhed.dk/cs/restriction-category, .display = Monitoring of measurement(s)

  • .priority = routine

  • .focus = reference to ServiceRequest referenced by the measurement being processed

Missing observation value

Task (Stating that measurement needs manual assessment as auto processing failed):

  • .category with .code =

MeasurementForAssessmentNotTriaged
  • MeasurementForAssessmentFailureInAutoProcessing, .system = http://ehealth.sundhed.dk/cs/task-category, .display =

Need assessment of measurement where triage was not performed
  • Measurement Assessment failure during automated processing

  • .description =

Måling til vurdering, hvor triagering ikke er udført af automatiseret

No reference base found

  • Vurdering af måling er fejlet under automatisk behandling

  • .restrictionCategory with .code = measurement-monitoring, system = http://ehealth.sundhed.dk/cs/restriction-category, .display = Monitoring of measurement(s)

  • .priority = routine

  • .focus = reference to measurement being processed, for instance Observation, QuestionnaireResponse or Media

No additional task.

Task:

  • .category with .code =

RefBaseNeeded
  • LibraryUseMismatchFixingNeeded, .system = http://ehealth.sundhed.dk/cs/task-category, .display =

Missing in force reference base required for automatic processing.restrictionCategory with .code
  • Input and rule did not match

  • .description =

Mangler gældende referenceværdi påkrævet for automatisk behandling
  • Automatiseret behandling af måledata fejlede. Aktivitet i plan og tilknyttet regel passer ikke sammen. Det bør overvejes om borger skal have ny plan.

  • .restrictionCategory with .code = measurement-monitoring, system = http://ehealth.sundhed.dk/cs/restriction-category, .display = Monitoring of measurement(s)

  • .priority = routine

  • .focus = reference to ServiceRequest referenced by the measurement being processed

No relative reference range found

Task:

.category with .code = RefRangeNeeded, .system =

Assessment of Relative Reference Ranges Library and Rule

This Library is similar to the Absolute Reference Range library (see above) in some aspects: Input and output are identical. The difference is the the type of reference ranges that the rule handles. Absolute and relative reference range libraries can co-exist and can both process the same Observation. They will each handle their corresponding type of reference ranges associated with the Observation.

The rule processes relative reference ranges only, that is, Observation.referenceRange.type where the Coding has:

  • system: http://ehealth.sundhed.dk/cs/

...

.description = Mangler grænseværdi påkrævet for automatisk behandling

...

.restrictionCategory with .code = measurement-monitoring, system = http://ehealth.sundhed.dk/cs/restriction-category, .display = Monitoring of measurement(s)

...

.priority = routine

...

.focus = reference to ServiceRequest referenced by the measurement being processed

Assessment of TeleCare Nord COPD Questionnaire

This Library contains a rule that performs assessment of a QuestionnaireResponse which answers the Questionnaire TeleCare Nord COPD Questionnaire.

The rule contains two sets of question/answer value pairs:

  • A red trigger set of question/answer pairs

  • A yellow trigger set of question/answer pairs

During processing of the rule, all questions and answers in the QuestionnaireResponse are traversed and checked whether each particular question/answer pair is defined as a red and yellow trigger, respectively. When this is the case, the question/answer pair is added to internal bookkeeping in the form of a triggered red set and triggered yellow set, respectively. Ultimately, the triggered sets determine a priority as follows:

  • In case the triggered red set contains at least one question/answer pair, the priority is set to asap

  • In case the triggered red set is empty and the triggered yellow set contains at least one question/answer pair, the priority is set to urgent

  • Otherwise, the priority is set to routine

The Library has:

  • .type set to automated-processing

  • .parameter

    • .use set to in for input

    • .type set to QuestionnaireResponse

  • .parameter

    • .use set to in for input

    • .type set to Questionnaire

  • .parameter

    • .use set to in for input

    • .type set to ServiceRequest

The Library rule sets up instructions that causes production of:

  • A ClinicalImpresssion:

    .finding as follows:

    If the triggered red set is not empty, a finding.item with a Coding:

    reference-range-type

  • code: RELRAL or RELGAL, for red alarm relative reference range and yellow alarm relative reference range, respectively.

A vital difference from the rule in the Absolute Reference Range Library is that Relative Reference Range Library rule must have a reference base to compare against.

A relative reference range can be stated:

  • in same unit as the Observation

  • as a percentage or, in case the Observation is already expressed with unit percentage (as is the case for oxygen saturation, for instance), as a percentage point.

Info

Example relative reference range as -5 percentage point with reference base 90% for oxygen saturation measurement

The oxygen saturation measurement unit is expressed as percent (system=http://unitsofmeasure.org, code=%), the reference base likewise and in this case with a value of 90.

A red alarm relative reference range given as -5 percentage point would be given by a SimpleQuantity for the reference range’s low element with:

  • value=-5

  • unit=percentage point

  • system=http://ehealth.sundhed.dk/cs/ehealth-unit-code

  • code=percentagepoint

Thus, the rule would treat an Observation with value 85% as a red alarm case for this relative reference range and current choice of reference base with value 90%.

The rule handles different situations which result in the rule setting up instructions for creation of one or two Task:

Situation

Generic Task

Possible Specific Task (Stating what was wrong)

Neither reference base nor relative reference range(s) found

Task:

  • .category with .code = MeasurementForAssessmentNotTriaged, .system = http://ehealth.sundhed.dk/cs/task-category, .display = Need assessment of measurement where triage was not performed during automated processing

  • .description = Måling til vurdering, hvor triagering ikke er udført af automatiseret behandling

  • .restrictionCategory with .code = measurement-monitoring, system = http://ehealth.sundhed.dk/cs/restriction-category, .display = Monitoring of measurement(s)

  • .priority = routine

  • .focus = reference to measurement being processed, for instance Observation, QuestionnaireResponse or Media

No additional task.

No reference base found

Task:

  • .category with .code = RefBaseNeeded, .system = http://ehealth.sundhed.dk/cs/

...

code = red-question-answer

...

display = Rød spørgsmål/svar-kombination fundet i spørgeskemabesvarelse

If the triggered yellow set is not empty, a finding.item with a Coding:

  • task-category, .display = Missing in force reference base required for automatic processing

  • .description = Mangler gældende referenceværdi påkrævet for automatisk behandling

  • .restrictionCategory with .code = measurement-monitoring, system = http://ehealth.sundhed.dk/cs/

...

code = yellow-question-answer

...

display = Gul spørgsmål/svar-kombination fundet i spørgeskemabesvarelse

If both triggered sets are empty, a finding.item with a Coding:

...

  • restriction-category, .display = Monitoring of measurement(s)

  • .priority = routine

  • .focus = reference to ServiceRequest referenced by the measurement being processed

No relative reference range found

Task:

  • .category with .code = RefRangeNeeded, .system = http://ehealth.sundhed.dk/cs/

...

code = green-question-answer

...

display = Grøn spørgsmål/svar-kombination fundet i spørgeskemabesvarelse. Når anført som opsummering for hel spørgeskemabesvarelse er der ikke fundet røde eller gule spørgsmål/svar-kombinationer

...

A Task related to the ClinicalImpression with:

  • priority set to the priority value determined above.

Library Resources for Calculation-type Rules

The Library resources described in this section are either production-ready or slated for production (requiring approval for production use).

Library for Calculating Quality of Height Observation for Use in BMI Calculation

The Library for calculating the quality of a height observation can be used to evaluate a height observation for intended use in a Body Mass Index (BMI) calculation. The older a height observation is, the less likely that it is still applicable and reflecting the current height. When evaluated to be too old (with code Low, see below), a client such as a citizen solution may request a fresh height measurement from the patient and use that in the BMI calculation.

The Library has:

...

.type set to logic-library

...

.parameter[0]

  • .use set to out for output

  • .type set to Coding

...

  • task-category, .display = Missing reference range required for automated processing

  • .description = Mangler grænseværdi påkrævet for automatisk behandling

  • .restrictionCategory with .code = measurement-monitoring, system = http://ehealth.sundhed.dk/cs/restriction-category, .display = Monitoring of measurement(s)

  • .priority = routine

  • .focus = reference to ServiceRequest referenced by the measurement being processed

Library for Assessment of Questionnaire Response

This Library contains a generic rule that performs assessment of a QuestionnaireResponse in relation to any answer significances defined in the corresponding Questionnaire.

During processing of the rule, each answer significance defined in the Questionnaire (see https://ehealth.sundhed.dk/fhir/StructureDefinition-ehealth-questionnaire.html#answer-significance ) on questions and their linked answers in the QuestionnaireResponse are traversed and checked whether the condition(s) of the answer significance is met by the linked answer. When this is the case, a finding basis is added to internal bookkeeping. Ultimately, the list of finding basis determines the created ClinicalImpression finding and the priority of the created task:

  • In case the list of finding basis contains at least one red question/answer pair, the priority is set to asap

  • In case the list of finding basis contains at least one yellow question/answer pair and no red question/answer pair , the priority is set to urgent

  • Otherwise, the priority is set to routine

The Library has:

  • .type set to automated-processing

  • .parameter

    • .use set to in for input

    • .type set to QuestionnaireResponse

  • .parameter

    • .use set to in for input

    • .type set to Observation Questionnaire

  • .parameter[2]

    • .use set to in for input

    • .type set to ServiceRequest

The input Observation must have

It is not necessary to provide the ServiceRequest as input. The Libary$evaluate operation will retrieve it by resolving the basedOn reference in the Observation.

Output will be a code from the http://hl7.org/fhir/v3/ObservationInterpretation CodeSystem:

...

Output Coding

...

Evaluation

...

Library rule sets up instructions that causes production of:

  • A ClinicalImpresssion:

    • .finding as follows:

      • If the triggered red set is not empty, a finding.item with a Coding:

        • system = http://ehealth.sundhed.dk/cs/clinicalimpression-finding-codes

        • code = red

        • display = Red overall assessment

      • If the triggered yellow set is not empty, a finding.item with a Coding:

        • system = http://ehealth.sundhed.dk/cs/clinicalimpression-finding-codes

        • code = yellow

        • display = yellow overall assessment

      • If both triggered sets are empty, a finding.item with a Coding:

        • system = http://

...

        • ehealth.sundhed.

...

        • dk/

...

The referenced ServiceRequest does not contain ehealth-reuseCriteria specifying a max age of the height Observation. This max age, although stated for reuse, is used for the height Observation use in an BMI calculation also.

...

        • cs/clinicalimpression-finding-codes

        • code = green

        • display = Green overall assessment

      • If the Questionnaire does contain answer significance definitions but none have been triggered, a finding.item with a Coding:

        • system = http://

...

        • ehealth.sundhed.

...

        • dk/

...

The height Observation has not exceeded the max age specified in ehealth-reuseCriteria in the referenced ServiceRequest.

...

code=L, system=http://hl7.org/fhir/v3/ObservationInterpretation, display=Low

...

The height Observation has exceeded the max age specified in ehealth-reuseCriteria in the referenced ServiceRequest.

Library for Calculating Body Mass Index

The Library for calculating the Body Mass Index (BMI) is intended for providing a value to be submitted as a BMI Observation as specified in an ActivityDefinition and possibly associated with reference ranges. Given an Observation of height and an Observation of weight as parameters, the evaluate operation returns a Quantity which can be set as the BMI Observation’s Observation.valueQuantity.

The Library has:

  • .type set to logic-library

  • .parameter[0]

    • .use set to out for output

    • .type set to Quantity

  • .parameter[1]

    • .use set to in for input

    • .type set to Observation

  • .parameter[2]

    • .use set to in for input

    • .type set to ServiceRequest

The library expects two observations as input:

It is not necessary to provide the ServiceRequest as input. The Libary$evaluate operation will retrieve it by resolving the basedOn reference in the weight Observation.

Output is a Quantity containing the calculated BMI:

Library for Calculating CAT-score (COPD Assessment Test)

The Library for calculating the CAT-score is intended for providing a value to be submitted as a CAT-score Observation as specified in an ActivityDefinition and possibly associated with reference ranges. Given a QuestionnaireResponse for the COPD Assessment test as input parameter, the evaluate operation returns a Quantity which can be set as the CAT-score Observation’s Observation.valueQuantity.

The Library has:

  • .type set to logic-library

  • .parameter[0]

    • .use set to out for output

    • .type set to Quantity

  • .parameter[1]

    • .use set to in for input

    • .type set to QuestionnaireResponse

  • .parameter[2]

    • .use set to in for input

    • .type set to Questionnaire

The library expects a QuestionnaireRespone as input:

  • The QuestionnaireResponse must reference a Questionnaire containing all 8 questions that are part of the COPD Assessment Test

  • The QuestionnaireResponse must contain valid answers for all 8 questions that are part of the COPD Assessment Test

It is not necessary to provide the Questionnaire as input. The Libary$evaluate operation will retrieve it by resolving the questionnairereference in the QuestionnaireResponse.

Output is a Quantity containing the calculated CAT score:

Library for Calculating MRC-score (Medical Research Council score)

...

        • cs/clinicalimpression-finding-codes

        • code = no-effective-answer-significance

        • display = Ingen triageringsindikator for spørgsmål/svar-kombination har fundet anvendelse

      • If the Questionnaire does not contain answer significance definitions, a finding.item with a Coding:

        • system = http://ehealth.sundhed.dk/cs/clinicalimpression-finding-codes

        • code = no-answer-significance-defined

        • display = Ingen triageringsindikator defineret i spørgeskemaet

    • list of .ehealth-questionnaireresponse-finding-basis for each basis for the overall ClinicalImpression as follows:

      • linkId set to linkId for the Questionnaire item/QuestionnaireResponse item pair which triggered the finding basis

      • value set to value of the answer which triggered the finding basis

      • finding set to green-question-answer, yellow-question-answer or red-question-answer from http://ehealth.sundhed.dk/vs/clinicalimpression-finding-codes based on signifiance on triggered ehealth-questionnaire-answerSignificance

      • ehealth-questionnaire-answerSignificance is the triggered answerSignificance which is gathered from Questionnaire item

  • A Task related to the ClinicalImpression with:

    • priority set to the priority value determined above.

A difference between the finding in finding.item.code and the finding basis in ehealth-questionnaire-finding-basis is that the former is a conclusion or summary while the latter provides the details that led to the conclusion. In ehealth-questionnaire-finding-basis there may be multiple entries for the same question-answer pair and those entries may or may not have the same significance (color). That depends on the how the answer (or lack of answer) fits with answer significance definitions in the Questionnaire.

Assessment of TeleCare Nord COPD Questionnaire

This Library contains a rule that performs assessment of a QuestionnaireResponse which answers the Questionnaire TeleCare Nord COPD Questionnaire.

The rule contains two sets of question/answer value pairs:

  • A red trigger set of question/answer pairs

  • A yellow trigger set of question/answer pairs

During processing of the rule, all questions and answers in the QuestionnaireResponse are traversed and checked whether each particular question/answer pair is defined as a red and yellow trigger, respectively. When this is the case, the question/answer pair is added to internal bookkeeping in the form of a triggered red set and triggered yellow set, respectively. Ultimately, the triggered sets determine a priority as follows:

  • In case the triggered red set contains at least one question/answer pair, the priority is set to asap

  • In case the triggered red set is empty and the triggered yellow set contains at least one question/answer pair, the priority is set to urgent

  • Otherwise, the priority is set to routine

The Library has:

  • .type set to automated-processing

  • .parameter

    • .use set to in for input

    • .type set to QuestionnaireResponse

  • .parameter

    • .use set to in for input

    • .type set to Questionnaire

  • .parameter

    • .use set to in for input

    • .type set to ServiceRequest

The Library rule sets up instructions that causes production of:

  • A ClinicalImpresssion:

    • .finding as follows:

      • If the triggered red set is not empty, a finding.item with a Coding:

        • system = http://ehealth.sundhed.dk/cs/clinicalimpression-finding-codes

        • code = red-question-answer

        • display = Rød spørgsmål/svar-kombination fundet i spørgeskemabesvarelse

      • If the triggered yellow set is not empty, a finding.item with a Coding:

        • system = http://ehealth.sundhed.dk/cs/clinicalimpression-finding-codes

        • code = yellow-question-answer

        • display = Gul spørgsmål/svar-kombination fundet i spørgeskemabesvarelse

      • If both triggered sets are empty, a finding.item with a Coding:

        • system = http://ehealth.sundhed.dk/cs/clinicalimpression-finding-codes

        • code = green-question-answer

        • display = Grøn spørgsmål/svar-kombination fundet i spørgeskemabesvarelse. Når anført som opsummering for hel spørgeskemabesvarelse er der ikke fundet røde eller gule spørgsmål/svar-kombinationer

  • A Task related to the ClinicalImpression with:

    • priority set to the priority value determined above.

Library Resources for Calculation-type Rules

The Library resources described in this section are either production-ready or slated for production (requiring approval for production use).

Library for Calculating Quality of Height Observation for Use in BMI Calculation

The Library for calculating the quality of a height observation can be used to evaluate a height observation for intended use in a Body Mass Index (BMI) calculation. The older a height observation is, the less likely that it is still applicable and reflecting the current height. When evaluated to be too old (with code Low, see below), a client such as a citizen solution may request a fresh height measurement from the patient and use that in the BMI calculation.

The Library has:

  • .type set to logic-library

  • .parameter[0]

    • .use set to out for output

    • .type set to Coding

  • .parameter[1]

    • .use set to in for input

    • .type set to Observation

  • .parameter[2]

    • .use set to in for input

    • .type set to ServiceRequest

The input Observation must have

It is not necessary to provide the ServiceRequest as input. The Libary$evaluate operation will retrieve it by resolving the basedOn reference in the Observation.

Output will be a code from the http://hl7.org/fhir/v3/ObservationInterpretation CodeSystem:

Output Coding

Evaluation

code=IND, system=http://hl7.org/fhir/v3/ObservationInterpretation, display=Indeterminate

The referenced ServiceRequest does not contain ehealth-reuseCriteria specifying a max age of the height Observation. This max age, although stated for reuse, is used for the height Observation use in an BMI calculation also.

code=N, system=http://hl7.org/fhir/v3/ObservationInterpretation, display=Normal

The height Observation has not exceeded the max age specified in ehealth-reuseCriteria in the referenced ServiceRequest.

code=L, system=http://hl7.org/fhir/v3/ObservationInterpretation, display=Low

The height Observation has exceeded the max age specified in ehealth-reuseCriteria in the referenced ServiceRequest.

Library for Calculating Body Mass Index

The Library for calculating the Body Mass Index (BMI) is intended for providing a value to be submitted as a MRC-score BMI Observation as specified in an ActivityDefinition and possibly associated with reference ranges. Given a QuestionnaireResponse for the MRC test as input parameteran Observation of height and an Observation of weight as parameters, the evaluate operation returns a Quantity which can be set as the MRC-score BMI Observation’s Observation.valueQuantity.

...

  • .type set to logic-library

  • .parameter[0]

    • .use set to out for output

    • .type set to Quantity

  • .parameter[1]

    • .use set to in for input

    • .type set to QuestionnaireResponse Observation

  • .parameter[2]

    • .use set to in for input

    • .type set to Questionnaire ServiceRequest

The library expects a QuestionnaireRespone two observations as input:

  • The QuestionnaireResponse first Observation must reference a Questionnaire containing the question that constitutes the MRC TestThe QuestionnaireResponse must contain a valid answer for the question that constitutes the MRC Testbe a weight observation (code=NPU03804, system=urn:oid:1.2.208.176.2.1)

  • The second Observation must be height observation (code=NPU03794, system=urn:oid:1.2.208.176.2.1)

It is not necessary to provide the Questionnaire ServiceRequest as input. The Libary$evaluate operation will retrieve it by resolving the questionnaire basedOn reference in the QuestionnaireResponseweight Observation.

Output is a Quantity containing the calculated MRC-scoreBMI:

Library for Assessment of Questionnaire Response

This Library contains a generic rule that performs assessment of a QuestionnaireResponse in relation to answer significances defined on Questionnaires.

During processing of the rule, all answer significances on questions and their linked answers in the QuestionnaireResponse are traversed and checked whether the condition(s) of the answer significance is met by the linked answer. When this is the case, a finding basis is added to internal bookkeeping. Ultimately, the list of finding basis determines the created ClinicalImpression finding and the priority of the created task:

  • In case the list of finding basis contains at least one red question/answer pair, the priority is set to asap

  • In case the list of finding basis contains at least one yellow question/answer pair and no red question/answer pair , the priority is set to urgent

  • Otherwise, the priority is set to routine

The Library has:

  • .type set to automated-processing

  • .parameterkg/m2

  • .value=the calculated score as decimal value

Library for Calculating CAT-score (COPD Assessment Test)

The Library for calculating the CAT-score is intended for providing a value to be submitted as a CAT-score Observation as specified in an ActivityDefinition and possibly associated with reference ranges. Given a QuestionnaireResponse for the COPD Assessment test as input parameter, the evaluate operation returns a Quantity which can be set as the CAT-score Observation’s Observation.valueQuantity.

The Library has:

  • .type set to logic-library

  • .parameter[0]

    • .use set to out for output

    • .type set to Quantity

  • .parameter[1]

    • .use set to in for input

    • .type set to QuestionnaireResponse

  • .parameter[2]

    A ClinicalImpresssion:

    • .use set to in for input

    • .type set to Questionnaire

  • .parameter

    • .use set to in for input

    • .type set to ServiceRequest

The Library rule sets up instructions that causes production of:

    • .finding as follows:

      If the triggered red set is not empty, a finding.item with a Coding:

      set to in for input

    • .type set to Questionnaire

The library expects a QuestionnaireRespone as input:

  • The QuestionnaireResponse must reference a Questionnaire containing all 8 questions that are part of the COPD Assessment Test

  • The QuestionnaireResponse must contain valid answers for all 8 questions that are part of the COPD Assessment Test

It is not necessary to provide the Questionnaire as input. The Libary$evaluate operation will retrieve it by resolving the questionnairereference in the QuestionnaireResponse.

Output is a Quantity containing the calculated CAT score:

  • .code=Number

  • .system=http://

    ehealth

    unitsofmeasure.

    sundhed.dk/cs/clinicalimpression-finding-codes
  • code = red-question-answer

  • display = Rød spørgsmål/svar-kombination fundet i spørgeskemabesvarelse

  • If the triggered yellow set is not empty, a finding.item with a Coding:

    • system = http://ehealth.sundhed.dk/cs/clinicalimpression-finding-codes

    • code = yellow-question-answer

    • display = Gul spørgsmål/svar-kombination fundet i spørgeskemabesvarelse

  • If both triggered sets are empty, a finding.item with a Coding:

    • system = http://ehealth.sundhed.dk/cs/clinicalimpression-finding-codes

    • code = green-question-answer

    • display = Grøn spørgsmål/svar-kombination fundet i spørgeskemabesvarelse

  • If both triggered sets are empty, a finding.item with a Coding:

    • system = http://ehealth.sundhed.dk/cs/clinicalimpression-finding-codes

    • code = no-effective-answer-significance

    • display = Ingen triageringsindikator for spørgsmål/svar-kombination har fundet anvendelse

  • If both triggered sets are empty, a finding.item with a Coding:

    • system = http://ehealth.sundhed.dk/cs/clinicalimpression-finding-codes

    • code = no-answer-significance-defined

    • display = Ingen triageringsindikator defineret i spørgeskemaet

  • list of .ehealth-questionnaireresponse-finding-basis for each basis for the overall ClinicalImpression as follows:

    • test

  • A Task related to the ClinicalImpression with:

    priority set to the priority value determined above.

    org

  • .unit=Number

  • .value=the calculated CAT-score as decimal value

Library for Calculating MRC-score (Medical Research Council score)

The Library for calculating the MRC-score is intended for providing a value to be submitted as a MRC-score Observation as specified in an ActivityDefinition and possibly associated with reference ranges. Given a QuestionnaireResponse for the MRC test as input parameter, the evaluate operation returns a Quantity which can be set as the MRC-score Observation’s Observation.valueQuantity.

The Library has:

  • .type set to logic-library

  • .parameter[0]

    • .use set to out for output

    • .type set to Quantity

  • .parameter[1]

    • .use set to in for input

    • .type set to QuestionnaireResponse

  • .parameter[2]

    • .use set to in for input

    • .type set to Questionnaire

The library expects a QuestionnaireRespone as input:

  • The QuestionnaireResponse must reference a Questionnaire containing the question that constitutes the MRC Test

  • The QuestionnaireResponse must contain a valid answer for the question that constitutes the MRC Test

It is not necessary to provide the Questionnaire as input. The Libary$evaluate operation will retrieve it by resolving the questionnairereference in the QuestionnaireResponse.

Output is a Quantity containing the calculated MRC-score: