Smart Forms is based on FHIR R4. The checklist below is a summary of the Questionnaire item types and SDC extensions supported by Smart Forms.
For specific details of each item types/extensions, refer to the docs.
The list can be found here: http://hl7.org/fhir/R4/valueset-item-type.html
- group
- display
- boolean
- decimal
- integer
- date
- dateTime
- time
- string
- text
- url (partial implementation - using string UI component currently)
- choice
- open-choice
- attachment
- reference (partial implementation - using string UI component currently)
- quantity
View the source here: http://hl7.org/fhir/uv/sdc/expressions.html
- variable
- answerExpression
- initialExpression
- candidateExpression
- contextExpression
- calculatedExpression
- enableWhenExpression
- answerOptionToggleExpression
- itemPopulationContext
- targetConstraint
- itemExtractionContext
- constraint
- library
- launchContext
- allocateId
- definitionExtract
- definitionExtractValue
- templateExtractContext
- templateExtractValue
- x-fhir-query
View the source here: http://hl7.org/fhir/uv/sdc/rendering.html
- rendering-style
- rendering-markdown
- rendering-xhtml
- displayCategory
- openLabel
- hidden
- itemMedia
- itemAnswerMedia
- itemControl
- choiceOrientation
- sliderStepValue
- width
- collapsible
- columnCount
Questionnaire itemControl Checklist
View the source here: https://hl7.org/fhir/extensions/CodeSystem-questionnaire-item-control.html
- group
- list
- table
- htable
- gtable
- grid
- header
- footer
- page
- tab-container
- display
- inline
- prompt (deprecated - encouraged to use entryFormat)
- unit (deprecated - encouraged to use questionnaire-unit)
- lower
- upper
- flyover
- help
- legal
- question
- autocomplete
- drop-down
- check-box
- lookup
- radio-button
- slider
- spinner
- text-box
- supportLink
- choiceColumn
- optionPrefix
- valueset-label
- entryFormat
- shortText
- required
- repeats
- readOnly
- sdc-rendering-criticalExtension
- disabledDisplay
- preferredTerminologyServer
View the source here: http://hl7.org/fhir/uv/sdc/behavior.html
- maxLength
- minLength
- regex (deprecated - encouraged to use targetConstraint)
- minValue
- maxValue
- minQuantity
- maxQuantity
- maxDecimalPlaces
- mimeType
- maxSize
- answerOption
- answerValueSet
- answerValueSet with Expression
- answerExpression
- answerOptionToggleExpression
- required
- repeats
- readOnly
- minOccurs
- maxOccurs
- optionExclusive
- unitOption
- unitValueSet
- unitOpen
- unitSupplementalSystem
- referenceResource
- referenceProfile
- candidateExpression
- lookupQuestionnaire
- cqf-library
- launchContext
- variable
- initialExpression
- calculatedExpression
- cqf-expression
- entryMode
- initial
- enableWhen
- enableBehavior
- enableWhenExpression
- usageMode
- targetConstraint
- endpoint
- signatureRequired
- itemWeight
- text
- sdc-questionnaire-keyboard
View the page here: http://hl7.org/fhir/uv/sdc/populate.html
Population operations
- $populate
- $populate-html
- $populate-link
Smart Forms only supports full population, and SMART App Launch is a requirement. Only patient, practitioner and encounter launch contexts are supported.
Population mechanisms
- Observation-based
- Expression-based
- StructureMap-based
While StructuredMap-based population mechanism is not supported, sdc-questionnaire-sourceQueries is supported, using an expression-based approach.
View the page here: http://hl7.org/fhir/uv/sdc/extraction.html
- Observation-based
- Definition-based
- Template-based
- StructureMap-based
View the page here: http://hl7.org/fhir/uv/sdc/modular.html#modular-questionnaires
Our Forms Server https://smartforms.csiro.au/api/fhir supports the $assemble operation. The implementation is based on http://hl7.org/fhir/uv/sdc/modular.html#modular-questionnaires.
View the page here: http://hl7.org/fhir/uv/sdc/adaptive.html
This is not something on our radar at the moment :(
Smart Forms includes several custom extensions that provide additional functionality beyond the standard SDC extensions.
See example usages here: https://smartforms.csiro.au/docs/sdc/customextensions.
Should be used with a tab-container. Display item is rendered as a contextual piece of visual information i.e icon/emoji on the tab and the currently displayed tab section's header.
Questionnaire Item Text Hidden
Allows hiding the text label of questionnaire items from the UI. Useful for internal fields that don't need user-facing labels.
Allows hiding the "Add Item" button for repeating groups and group tables. Useful for static tables where users shouldn't be allowed to add new rows.
Adds a field button to allow individual fields to be manually repopulated with fresh data from the FHIR server. Provides granular control over data synchronization without affecting the entire form.
Allows setting a custom aria-label at item.text for questionnaire items using a FHIRPath expression. Improves accessibility by providing screen readers with more context-specific labels.