2.7.0 - STU 3 (2nd ballot)

This page is part of the Structured Data Capture FHIR IG (v2.7.0: STU 3 Ballot 2) based on FHIR R4. The current version which supercedes this version is 3.0.0. For a full list of available versions, see the Directory of published versions

SDC Home Page


Questionnaires and forms permeate healthcare. They are used to capture administrative data, claims data, clinical information, research information, for public health reporting - every type of data that is manipulated by healthcare systems. They provide a user-friendly mechanism for capturing data in a consistent way. In FHIR, forms are represented using the Questionnaire resource and completed forms are represented using the QuestionnaireResponse resource. The base FHIR specification defines these resources but doesn't provide much guidance around how they should be used, nor does it set minimal expectations for interoperation. This implementation guide provides a set of guidance around the use of Questionnaire and QuestionnaireResponse. Specifically, it provides answers to - and conformance expectations around - questions such as:

  • What are the minimum capabilities a system should have to properly support FHIR-based forms?
  • How do I present questions in a table?
  • I want help text to appear in red - how do I do that?
  • What's the mechanism to calculate and display a score for a completed form?
  • I don't want to expose the logic of the questionnaire to other systems, but I still want to support form completion. How do I do that using FHIR?
  • Some of the data in this form already exists in the patient's record. How can I save the time (and prevent the transcription errors) associated with re-entering it into a form?
  • Once a form's complete, I want to import the data into other FHIR resources - is there an easy way to do that?

The implementation guide is structured to allow implementers to pick and choose the capabilities they need and combine them as necessary.


This implementation guide follows the FHIR pattern of being published as a web-based specification. This allows easy navigation between the SDC-specific portion of the implementation guide and the resources, data types, value sets and other specification components leveraged from the FHIR core specification. This approach also allows implementers to easily navigate to the information needed to perform a task.

A Table of Contents page is provided that lists all of the pages defined as part of this implementation guide. (Do be aware that some pages have multiple tabs.) A table of contents is also available for the full FHIR specification if you really want to read absolutely everything. There's also an Artifact index that lists all formal FHIR artifacts defined within this implementation guide. The Support menu provides links to the HL7 standards used by this implementation guide as well as providing a downloads link to retrieve a local copy of this implementation guide and/or particular subsets of it.

Bread-crumb navigation is provided in the gray bar just below the menu at the top of each page, allowing easy navigation back to the main SDC page.

This implementation guide is organized into two sets of sections: SDC Background and the SDC Specification

SDC Background

These sections provide information relevant to all SDC implementers, regardless of which SDC capabilities they're interested in using.

  1. FHIR usage provides information about the FHIR and FHIRPath standards used by this IG and an overview of the resources used and base conformance expectations
  2. Security sets base security expectations for systems claiming conformance with this implementation guide
  3. Workflow describes the expectations for systems managing the creation, discovery and completion of questionnaires. Systems conforming to SDC are expected to conform to one of the CapabilityStatements defined in this section
  4. Using Expressions describes the use of FHIRPath and CQL within Questionnaires and defines additional contexts and rules for using these technologies in FHIR Questionnaires. (These are technologies used to support several of the SDC capabilities.)

SDC Specification

These sections define the different use-cases supported by SDC, specify the profile(s) needed to meet the use-cases.

  1. Finding a Questionnaire describes expectations for systems serving as form repositories as well as clients who will need to search for forms.
  2. Advanced Rendering describes how to use various questions and the base capabilities of Questionnaire to render different types of form elements
  3. Form Behavior describes how to design 'active' forms that adjust what information is displayed and/or that perform calculations based on user input
  4. Adaptive Forms describes an architecture to support completing forms where the questionnaire is not pre-defined and instead is dynamically developed based on the user's answers
  5. Questionnaire Population describes how to design questionnaires to support pre-population of answers and how to use services that support pre-populating forms
  6. Data Extraction describes how to design questionnaires to support converting completed forms into a FHIR resource or Bundle of FHIR resources for subsequent analysis

Boundaries and Relationships

In addition to defining its own extensions, this implementation guide leverages extensions defined in the core specification. The definitions of these extensions can be found in the following sections. (Note - not all extensions from these sections are relevant. Relevant extensions are noted in each SDC profile, along with an indication of whether the extensions must be supported or not.)

  • questionnaire-extensions defines several less common properties for questionnaire, group and question, several of which are mandated for this profile.
  • element-extensions defines extensions describing constraints on the values for data elements (e.g. field length, min and max values, etc.) There are used here to constrain the allowed values for questions.
  • general-extensions provides an extension for strings allowing the conveying of translations, which may be relevant in some environments
  • rendering-extensions defines properties to give fine-grained control over how questions, labels and other strings are rendered, such as providing HTML or markdown equivalents.
  • codesystem-extensions defines


The original version of this implementation guide was prepared as a U.S. Realm Specification on behalf of the Structured Data Capture project - an effort under the U.S. Office of the National Coordinator (ONC)'s Standards and Infrastructure (S & I) Framework.

The new version of this guide was developed by the FHIR Infrastructure work group in collaboration with the Lister Hill National Center for Biomedical Communications of the U.S. National Library of Medicine (NLM).

As part of the revision of the implementation guide, the very limited portions of the implementation guide that were U.S. specific have been relaxed, making the guide applicable to all countries. Representatives from several non-U.S. jurisdictions were part of the project calls where the revisions to the implementation guide were determined. Project details, minutes and call information can be found on the project Confluence page. Additional participants are welcome to join as we further refine the implementation guide and work to increase adoption through connectathons, open source projects and other mechanisms.

Intellectual Property Considerations

While this implementation guide and the underlying FHIR are licensed as public domain, this guide includes examples making use of terminologies such as LOINC, SNOMED CT and others which have more restrictive licensing requirements. Implementers should make themselves familiar with licensing and any other constraints of terminologies, questionnaires, and other components used as part of their implementation process. In some cases, licensing requirements may limit the systems that data captured using certain questionnaires may be shared with.