Structured Data Capture, published by HL7 International / FHIR Infrastructure. This guide is not an authorized publication; it is the continuous build for version 4.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/sdc/ and changes regularly. See the Directory of published versions
Official URL: http://hl7.org/fhir/uv/sdc/CapabilityStatement/sdc-form-filler | Version: 4.0.0 | |||
Standards status: Trial-use | Maturity Level: 4 | Computable Name: SDCFormFiller | ||
Other Identifiers: OID:2.16.840.1.113883.4.642.40.17.13.3 |
This profile defines the expected capabilities of the SDC Form Filler' role when conforming to this implementation guide. This role is responsible for retrieving pre-defined forms, requesting pre-population of forms and/or auto-populating forms, guiding the user through verifying populated data and submitting completed or partially-completed forms. Note that Form Fillers may also take on the role of Form Archiver if they have a requirement to retain the completed version of a form (and potentially the source data that was used to complete it). In addition to the features described here, Form Fillers SHOULD also support search_type on all resources that might need to be looked up either for attachments or as References. The expectations for supported resources, profiles, and relevant search parameters will typically come from national 'base' or 'core' IGs.
Raw OpenAPI-Swagger Definition file | Download
xml
, json
Note to Implementers: FHIR Capabilities
Any FHIR capability may be 'allowed' by the system unless explicitly marked as 'SHALL NOT'. A few items are marked as MAY in the Implementation Guide to highlight their potential relevance to the use case.
client
The Questionnaire, ValueSet and CodeSystem resources are retrieved to allow the system to guide the user through the entry process. The QuestionnaireResponse resource is used to record the populated form. Finally, the [[Library]], [[StructureMap]], [[StructureDefinition]], and [[ConceptMap]] resources are available to assist with population. Note: Form Fillers that support the 'populate' operation will need to be capable of consuming and rendering a partially completed QuestionnaireResponse in the same manner as if they had retrieved such a QuestionnaireResponse from a Form Response Manager
Implementations must meet the general security requirements documented in this implementation guide.html.
The summary table lists the resources that are part of this configuration, and for each resource it lists:
_include
_revinclude
search-type
Allows a user to search for existing completed or partially-completed forms. Generally used to find partially-completed forms for update.
read
Allows retrieval of a specific QuestionnaireResponse by id.
create
Allows recording a completed or partially-completed form
update
Allows updating an existing completed or partially-completed form. (Systems may place rules on who can update forms and under what circumstances.)
delete
Allows removal of a completed form from a repository. Note that the removal may be logical rather than physical. Some systems may have rules for who can remove a completed form and under what circumstances.
history-instance
Allows review of prior versions of an answer set - allows reversion to previously recorded versions
The primary focus of a form filler is creating and managing QuestionnaireResponses.
Conformance | Operation | Documentation |
---|---|---|
MAY | $extract | This is only necessary if the form filler doesn't handle all needed extraction capabilities locally and extraction is actually peformed by the form filler rather than a downstream process |
search-type
Allows discovery of existing questionnaires to be completed. Without this, forms need to be explicitly passed in as part of workflow.
read
Allows retrieval of a specific questionnaire by id. Allows systems to maintain a 'favorites' list of forms and retrieve them by id.
history-instance
Allows review of changes made to a questionnaire over time. Of interest to some systems, but probably not most.
vread
Allows retrieval of a historical version of a questionnaire. Most systems will make use of the current version only.
If not supported, then forms will need to be made accessible through workflow
Conformance | Parameter | Type | Documentation |
---|---|---|---|
SHALL | url | uri | |
SHALL | version | token | |
SHALL | status | token | |
SHALL | experimental | token | |
SHOULD | context-type-quantity | composite | |
SHOULD | context-type-value | composite | |
SHOULD | date | date | |
SHOULD | description | string | |
SHOULD | identifier | token | |
SHOULD | publisher | string | |
SHOULD | questionnaire-code | token | |
SHOULD | subject-type | token | |
SHOULD | title | string | |
SHOULD | effective | date | |
MAY | jurisdiction | token | |
MAY | assemble-expectation | token |
Conformance | Operation | Documentation |
---|---|---|
SHOULD | $next-question | This is only necessary if the form filler doesn't handle all needed population capabilities locally |
SHOULD | $populate | This is only necessary if the form filler doesn't handle all needed population capabilities locally |
search-type
Needed to retrieve value set based on canonical reference
read
Useful if a server doesn't return full data in a search
Needed to support simple value sets that might not be known to the terminology server or for local expansion and validation
Conformance | Operation | Documentation |
---|---|---|
SHOULD | $expand | Needed to determine allowed code choices. SHALL be supported unless handled locally |
SHOULD | $validate code | Needed when populating from existing data (to confim the code is part of the value set). SHOULD be supported unless handled locally |
search-type
Needed to retrieve code system based on canonical reference
read
Useful if a server doesn't return full data in a search
SHALL be supported if doing any terminology expansions or validation locally
search-type
Needed to retrieve library based on canonical reference
read
Useful if a server doesn't return full data in a search
Needed for certain types of population and extraction
search-type
Needed to retrieve structure map based on canonical reference
read
Useful if a server doesn't return full data in a search
Needed if performing map-based population or extraction
search-type
Needed to retrieve structure definition based on canonical reference
read
Useful if a server doesn't return full data in a search
Needed if performing map-based population or map or definition-based extraction
search-type
Needed to retrieve concept map based on various criteria
read
Useful if a server doesn't return full data in a search
May be needed for code conversion during population or extraction
Conformance | Parameter | Type | Documentation |
---|---|---|---|
SHALL | experimental | token | |
SHALL | url | uri | |
SHALL | version | token | |
SHALL | status | token | |
SHALL | source-system | uri | |
SHALL | target-system | uri | |
SHOULD | source-uri | reference | |
SHOULD | target-uri | reference |