RetrieveQuestionnaire

Purpose

RetrieveQuestionnaire is a service for converting a well defined DECOR transaction into a FHIR® R4 [Questionnaire]. Using the parameter format=html you may even send this to LHC-Forms for rendering.

Error creating thumbnail: Unable to save thumbnail to destination

Find more about services parameters, see URIs

Mapping

Questionnaire Description
.id Readable OID of the transaction
. text Status = 'generated', Narrative = 'Questionnaire for (transaction name)'
.url (originating endpoint for FHIR)/Questionnaire/Q_(transaction shortName)
.name Transaction shortName
.title Transaction name
.status 'draft'. TODO Consider adopting transaction statusCode?
.subjectType 'Patient'. TODO Is there any anything that we could deduct this from?
.date current date
.publisher The first copyright/@by in the project
.contact TODO based on copyright addrLine
.item
  • concept of type group
    • .linkId - Readable OID of the concept
    • .definition - concept description, if any
    • .text - concept name
    • .code - terminology associations on the concept, if any
    • .type - 'group'
    • .required - 'true' if minimum transaction cardinality != 0
    • .repeats - 'true' if maximum transaction cardinality != 0 and != 1
  • concept of type item
    • Everything as with group except .type
    • .type -
      • DECOR type 'boolean', 'date', 'decimal', 'quantity', 'text', 'time' same in FHIR
      • DECOR type 'count' = FHIR type 'integer'
      • DECOR type 'datetime' = FHIR type 'dateTime'
      • DECOR type 'duration' = FHIR type 'quantity'
      • DECOR type 'currency' = FHIR type 'quantity'
      • DECOR type 'identifier' = FHIR type 'string'
      • DECOR type 'ordinal' = FHIR type 'choice'
      • DECOR type 'blob' = FHIR type 'attachment'
      • DECOR type 'code' = FHIR type 'string' when no value set is defined, type 'open-choice when a NullFlavor OTH (other) is defined or an intensional ValueSet is specified, or binding strength is other than required, type 'choice' otherwise
      • otherwise 'string'
    • .extension url="http://hl7.org/fhir/StructureDefinition/minValue" - assumes the lowest value domain property @minInclude as integer or decimal, depending on the value
    • .extension url="http://hl7.org/fhir/StructureDefinition/maxValue" - assumes the highest value domain property @maxInclude as integer or decimal, depending on the value
    • .extension url="http://hl7.org/fhir/StructureDefinition/minLength" - assumes the lowest value domain property @minLength as integer
    • .extension url="http://hl7.org/fhir/StructureDefinition/maxDecimalPlaces" - assumes the highest value domain property @fractionDigits as integer or decimal, depending on the value. Note: DECOR supports 'exactly', 'min' and 'max' number of decimal places. In converting to FHIR these are all considered. This is not completely semantically accurate, but close enough.
    • .extension url="http://hl7.org/fhir/StructureDefinition/questionnaire-unit" - Is written as many times as there are value domain property @unit attributes. Each unit is matched against the UCUM essence list. If it is a valid UCUM code, then valueCoding.system, .code and .display are added to the extension. Otherwise just the .display
    • .maxLength - assumes the highest value domain property @maxLength as integer or decimal
    • .fixed - 'true' is value domain property @fixed is specified. TODO the fixed value itself is not yet added as .answerOption
    • .answerValueSet - contains the canonical of an intentional value set, if any. TODO DECOR supports multiple value set bindings. Questionnaire does not. Could create a contained ad hoc value set which includes the DECOR value sets
    • .answerOption - contains the codes from an extensional value set. If value domain property @default matches a code, this is marked .initiaSelected = true
    • .initial - contains the default answer from value domain property @default