DSTU2

This page is part of the FHIR Specification (v1.0.2: DSTU 2). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions

StructureDefinition: SDC-Response - XML

SDC-Response

<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="sdc-response"/>
  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">to do</div>
  </text>
  <url value="http://hl7.org/fhir/StructureDefinition/sdc-response"/>
  <name value="Structured Data Capture Data Capture"/>
  <status value="draft"/>
  <publisher value="Health Level Seven International (Orders and Observations - Structured Data Capture)"/>
  <contact>
    <telecom>
      <system value="other"/>
      <value value="d, hap"/>
    </telecom>
  </contact>
  <date value="2014-04-21"/>
  <description value="Defines how the questionnaire response resource is used to reflect form data within the
   ONC's Structured Data Capture standard."/>
  <fhirVersion value="1.0.2"/>
  <kind value="resource"/>
  <constrainedType value="QuestionnaireResponse"/>
  <abstract value="false"/>
  <base value="http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse"/>
  <snapshot>
    <element>
      <path value="QuestionnaireResponse"/>
      <name value="SDC-Response"/>
      <short value="A structured set of questions and their answers"/>
      <definition value="Sets expectations for supported capabilities for questionnaire responses for SDC-conformant
       systems."/>
      <alias value="Form"/>
      <alias value="Form Data"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="QuestionnaireResponse"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="Observation[moodCode=EVN]"/>
      </mapping>
      <mapping>
        <identity value="w5"/>
        <map value="infrastructure.information"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.id"/>
      <short value="Logical id of this artifact"/>
      <definition value="The logical id of the resource, as used in the URL for the resource. Once assigned, this
       value never changes."/>
      <comments value="The only time that a resource does not have an id is when it is being submitted to the
       server using a create operation. Bundles always have an id, though it is usually a generated
       UUID."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.id"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="id"/>
      </type>
      <isSummary value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.meta"/>
      <short value="Metadata about the resource"/>
      <definition value="The metadata about the resource. This is content that is maintained by the infrastructure.
       Changes to the content may not always be associated with version changes to the resource."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.meta"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Meta"/>
      </type>
      <isSummary value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.implicitRules"/>
      <short value="A set of rules under which this content was created"/>
      <definition value="A reference to a set of rules that were followed when the resource was constructed, and
       which must be understood when processing the content."/>
      <comments value="Asserting this rule set restricts the content to be only understood by a limited set of
       trading partners. This inherently limits the usefulness of the data in the long term.
       However, the existing health eco-system is highly fractured, and not yet ready to define,
       collect, and exchange data in a generally computable sense. Wherever possible, implementers
       and/or specification writers should avoid using this element as much as possible."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.implicitRules"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="uri"/>
      </type>
      <isModifier value="true"/>
      <isSummary value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.language"/>
      <short value="Language of the resource content"/>
      <definition value="The base language in which the resource is written."/>
      <comments value="Language is provided to support indexing and accessibility (typically, services such as
       text to speech use the language tag). The html language tag in the narrative applies 
       to the narrative. The language tag on the resource may be used to specify the language
       of other presentations generated from the data in the resource  Not all the content has
       to be in the base language. The Resource.language should not be assumed to apply to the
       narrative automatically. If a language is specified, it should it also be specified on
       the div element in the html (see rules in HTML5 for information about the relationship
       between xml:lang and the html lang attribute)."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.language"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="code"/>
      </type>
      <binding>
        <strength value="required"/>
        <description value="A human language."/>
        <valueSetUri value="http://tools.ietf.org/html/bcp47"/>
      </binding>
    </element>
    <element>
      <path value="QuestionnaireResponse.text"/>
      <short value="Text summary of the resource, for human interpretation"/>
      <definition value="A human-readable narrative that contains a summary of the resource, and may be used to
       represent the content of the resource to a human. The narrative need not encode all the
       structured data, but is required to contain sufficient detail to make it &quot;clinically
       safe&quot; for a human to just read the narrative. Resource definitions may define what
       content should be represented in the narrative to ensure clinical safety."/>
      <comments value="Contained resources do not have narrative. Resources that are not contained SHOULD have
       a narrative."/>
      <alias value="narrative"/>
      <alias value="html"/>
      <alias value="xhtml"/>
      <alias value="display"/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.text"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Narrative"/>
      </type>
      <condition value="dom-1"/>
      <mapping>
        <identity value="rim"/>
        <map value="Act.text?"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.contained"/>
      <short value="Contained, inline Resources"/>
      <definition value="These resources do not have an independent existence apart from the resource that contains
       them - they cannot be identified independently, and nor can they have their own independent
       transaction scope."/>
      <comments value="This should never be done when the content can be identified properly, as once identification
       is lost, it is extremely difficult (and context dependent) to restore it again."/>
      <alias value="inline resources"/>
      <alias value="anonymous resources"/>
      <alias value="contained resources"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse.contained"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Resource"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.extension"/>
      <short value="Additional Content defined by implementations"/>
      <definition value="May be used to represent additional information that is not part of the basic definition
       of the resource. In order to make the use of extensions safe and manageable, there is
       a strict set of governance  applied to the definition and use of extensions. Though any
       implementer is allowed to define an extension, there is a set of requirements that SHALL
       be met as part of the definition of the extension."/>
      <comments value="There can be no stigma associated with the use of extensions by any application, project,
       or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
        The use of extensions is what allows the FHIR specification to retain a core level of
       simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse.extension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.modifierExtension"/>
      <short value="Extensions that cannot be ignored"/>
      <definition value="May be used to represent additional information that is not part of the basic definition
       of the resource, and that modifies the understanding of the element that contains it.
       Usually modifier elements provide negation or qualification. In order to make the use
       of extensions safe and manageable, there is a strict set of governance applied to the
       definition and use of extensions. Though any implementer is allowed to define an extension,
       there is a set of requirements that SHALL be met as part of the definition of the extension.
       Applications processing a resource are required to check for modifier extensions."/>
      <comments value="There can be no stigma associated with the use of extensions by any application, project,
       or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
        The use of extensions is what allows the FHIR specification to retain a core level of
       simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse.modifierExtension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <isModifier value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.identifier"/>
      <short value="Unique id for this set of answers"/>
      <definition value="A business identifier assigned to a particular completed (or partially completed) questionnaire."/>
      <requirements value="Used for tracking, registration and other business purposes."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.identifier"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Identifier"/>
      </type>
      <mustSupport value="true"/>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".id"/>
      </mapping>
      <mapping>
        <identity value="w5"/>
        <map value="id"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.questionnaire"/>
      <short value="Form being answered"/>
      <definition value="Indicates the Questionnaire resource that defines the form for which answers are being
       provided."/>
      <requirements value="Needed to allow editing of the questionnaire in a manner that enforces the constraints
       of the original form."/>
      <alias value="Form"/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.questionnaire"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/sdc-questionnaire"/>
      </type>
      <mustSupport value="true"/>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="./outboundRelationship[typeCode=INST]/target[classCode=OBS, moodCode=DEFN]"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.status"/>
      <short value="in-progress | completed | amended"/>
      <definition value="The lifecycle status of the questionnaire response as a whole."/>
      <requirements value="The information on Questionnaire resources  may possibly be gathered during multiple sessions
       and altered after considered being finished. Questionnaire resources with just questions
       may serve as template forms, with the applicable publication statuses."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.status"/>
        <min value="1"/>
        <max value="1"/>
      </base>
      <type>
        <code value="code"/>
      </type>
      <mustSupport value="true"/>
      <isModifier value="true"/>
      <isSummary value="true"/>
      <binding>
        <strength value="required"/>
        <description value="Lifecycle status of the questionnaire response."/>
        <valueSetReference>
          <reference value="http://hl7.org/fhir/ValueSet/questionnaire-answers-status"/>
        </valueSetReference>
      </binding>
      <mapping>
        <identity value="rim"/>
        <map value=".statusCode (also whether there's a revisionControlAct - and possibly mood to distinguish
         &quot;in-progress&quot; from &quot;published)"/>
      </mapping>
      <mapping>
        <identity value="w5"/>
        <map value="status"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.subject"/>
      <short value="The subject of the questions"/>
      <definition value="The subject of the questionnaire response.  This could be a patient, organization, practitioner,
       device, etc.  This is who/what the answers apply to, but is not necessarily the source
       of information."/>
      <requirements value="The subject context must be known."/>
      <alias value="Patient"/>
      <alias value="Focus"/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.subject"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Patient"/>
      </type>
      <mustSupport value="true"/>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".participation[typeCode=SBJ].role"/>
      </mapping>
      <mapping>
        <identity value="w5"/>
        <map value="who.focus"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.author"/>
      <short value="Person who received and recorded the answers"/>
      <definition value="Person who received the answers to the questions in the QuestionnaireResponse and recorded
       them in the system."/>
      <comments value="Mapping a subject's answers to multiple choice options and determining what to put in
       the textual answer is a matter of interpretation.  Authoring by device would indicate
       that some portion of the questionnaire had been auto-populated."/>
      <requirements value="Need to know who interpreted the subject's answers to the questions in the questionnaire,
       and selected the appropriate options for answers."/>
      <alias value="Laboratory"/>
      <alias value="Service"/>
      <alias value="Practitioner"/>
      <alias value="Department"/>
      <alias value="Company"/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.author"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Practitioner"/>
      </type>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Patient"/>
      </type>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/RelatedPerson"/>
      </type>
      <mustSupport value="true"/>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".participation[typeCode=AUT].role"/>
      </mapping>
      <mapping>
        <identity value="w5"/>
        <map value="who.author"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.authored"/>
      <short value="Date this version was authored"/>
      <definition value="Identifies when this version of the answer set was created.  Changes whenever the answers
       are updated."/>
      <comments value="May be different from the update time of the resource itself, because that is the status
       of the collection and authoring.  This element is optional to allow for systems that may
       not know the value, however it SHOULD be populated if possible."/>
      <requirements value="Clinicians need to be able to check the date that the information in the questionnaire
       was collected, to derive the context of the answers."/>
      <alias value="Date Created"/>
      <alias value="Date published"/>
      <alias value="Date Issued"/>
      <alias value="Date updated"/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.authored"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="dateTime"/>
      </type>
      <mustSupport value="true"/>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".participation[typeCode=AUT].time"/>
      </mapping>
      <mapping>
        <identity value="w5"/>
        <map value="when.recorded"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.source"/>
      <short value="The person who answered the questions"/>
      <definition value="The person who answered the questions about the subject."/>
      <comments value="If not specified, no inference can be made about who provided the data."/>
      <requirements value="When answering questions about a subject that is minor, incapable of answering or an animal,
       another human source is used to answer the questions."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.source"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Patient"/>
      </type>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Practitioner"/>
      </type>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/RelatedPerson"/>
      </type>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".participation[typeCode=INF].role"/>
      </mapping>
      <mapping>
        <identity value="w5"/>
        <map value="who.source"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.encounter"/>
      <short value="Primary encounter during which the answers were collected"/>
      <definition value="Encounter during which this set of questionnaire response were collected. When there were
       multiple encounters, this is the one considered most relevant to the context of the answers."/>
      <requirements value="Some institutions track questionnaires under a specific encounter."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.encounter"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Encounter"/>
      </type>
      <isSummary value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".inboundRelationship[typeCode=COMP].source[classCode=ENC, moodCode=EVN]"/>
      </mapping>
      <mapping>
        <identity value="w5"/>
        <map value="context"/>
      </mapping>
    </element>
    <element>
      <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name">
        <valueString value="Group"/>
      </extension>
      <path value="QuestionnaireResponse.group"/>
      <name value="group"/>
      <short value="Grouped questions"/>
      <definition value="A group of questions to a possibly similarly grouped set of questions in the questionnaire
       response."/>
      <comments value="The Questionnaire itself has one &quot;root&quot; group with the actual contents of the
       Questionnaire."/>
      <requirements value="Need to be able to logically group answers to grouped questions."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.group"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="BackboneElement"/>
      </type>
      <constraint>
        <key value="qrs-1"/>
        <severity value="error"/>
        <human value="Groups may either contain questions or groups but not both"/>
        <xpath value="not(exists(f:group) and exists(f:question))"/>
      </constraint>
      <mustSupport value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".outboundRelationship[typeCode=COMP].target[classCode=OBS, moodCode=EVN]"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.id"/>
      <representation value="xmlAttr"/>
      <short value="xml:id (or equivalent in JSON)"/>
      <definition value="unique id for the element within a resource (for internal references)."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.group.id"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="id"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.extension"/>
      <short value="Additional Content defined by implementations"/>
      <definition value="May be used to represent additional information that is not part of the basic definition
       of the element. In order to make the use of extensions safe and manageable, there is a
       strict set of governance  applied to the definition and use of extensions. Though any
       implementer is allowed to define an extension, there is a set of requirements that SHALL
       be met as part of the definition of the extension."/>
      <comments value="There can be no stigma associated with the use of extensions by any application, project,
       or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
        The use of extensions is what allows the FHIR specification to retain a core level of
       simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse.group.extension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.modifierExtension"/>
      <short value="Extensions that cannot be ignored"/>
      <definition value="May be used to represent additional information that is not part of the basic definition
       of the element, and that modifies the understanding of the element that contains it. Usually
       modifier elements provide negation or qualification. In order to make the use of extensions
       safe and manageable, there is a strict set of governance applied to the definition and
       use of extensions. Though any implementer is allowed to define an extension, there is
       a set of requirements that SHALL be met as part of the definition of the extension. Applications
       processing a resource are required to check for modifier extensions."/>
      <comments value="There can be no stigma associated with the use of extensions by any application, project,
       or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
        The use of extensions is what allows the FHIR specification to retain a core level of
       simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <alias value="modifiers"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse.group.modifierExtension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <isModifier value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.linkId"/>
      <short value="Corresponding group within Questionnaire"/>
      <definition value="Identifies the group from the Questionnaire that corresponds to this group in the QuestionnaireRespo
      nse resource."/>
      <requirements value="Groups can repeat in the answers, so a direct 1..1 correspondence may not exist - requiring
       correspondence by identifier."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.group.linkId"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="string"/>
      </type>
      <mustSupport value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".outboundRelationship[typeCode=DEFN].target[classCode=OBS, moodCode=DEFN]"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.title"/>
      <short value="Name for this group"/>
      <definition value="Text that is displayed above the contents of the group."/>
      <comments value="On the root group, this is the title of the questionnaire."/>
      <requirements value="When including text for the questionnaire with the answers, sections may have a section
       header."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.group.title"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="string"/>
      </type>
      <mustSupport value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".title"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.text"/>
      <short value="Additional text for the group"/>
      <definition value="Additional text for the group, used for display purposes."/>
      <requirements value="When including text for the questionnaire, each section may contain additional explanations
       are background text."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.group.text"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="string"/>
      </type>
      <mustSupport value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".text"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.subject"/>
      <short value="The subject this group's answers are about"/>
      <definition value="More specific subject this section's answers are about, details the subject given in QuestionnaireRe
      sponse."/>
      <requirements value="Sometimes a group of answers is about a specific participant, artifact or piece of information
       in the patient's care or record, e.g. a specific Problem, RelatedPerson, Allergy etc."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.group.subject"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Resource"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value=".participation[typeCode=SBJ].role or .outboundRelationship[typeCode=SUBJ].target"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.group"/>
      <short value="Nested questionnaire response group"/>
      <definition value="A sub-group within a group. The ordering of groups within this group is relevant."/>
      <requirements value="Reports can consist of complex nested groups."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse.group.group"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <nameReference value="group"/>
      <condition value="qrs-1"/>
      <mustSupport value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".outboundRelationship[typeCode=COMP].target[classCode=OBS, moodCode=EVN]"/>
      </mapping>
    </element>
    <element>
      <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name">
        <valueString value="Question"/>
      </extension>
      <path value="QuestionnaireResponse.group.question"/>
      <short value="Questions in this group"/>
      <definition value="Set of questions within this group. The order of questions within the group is relevant."/>
      <requirements value="Must register answers to questions."/>
      <alias value="Responses"/>
      <alias value="Contents"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse.group.question"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="BackboneElement"/>
      </type>
      <condition value="qrs-1"/>
      <mustSupport value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".outboundRelationship[typeCode=COMP].target[classCode=OBS, moodCode=EVN or DEF]"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.id"/>
      <representation value="xmlAttr"/>
      <short value="xml:id (or equivalent in JSON)"/>
      <definition value="unique id for the element within a resource (for internal references)."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.group.question.id"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="id"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.extension"/>
      <short value="Additional Content defined by implementations"/>
      <definition value="May be used to represent additional information that is not part of the basic definition
       of the element. In order to make the use of extensions safe and manageable, there is a
       strict set of governance  applied to the definition and use of extensions. Though any
       implementer is allowed to define an extension, there is a set of requirements that SHALL
       be met as part of the definition of the extension."/>
      <comments value="There can be no stigma associated with the use of extensions by any application, project,
       or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
        The use of extensions is what allows the FHIR specification to retain a core level of
       simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse.group.question.extension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.modifierExtension"/>
      <short value="Extensions that cannot be ignored"/>
      <definition value="May be used to represent additional information that is not part of the basic definition
       of the element, and that modifies the understanding of the element that contains it. Usually
       modifier elements provide negation or qualification. In order to make the use of extensions
       safe and manageable, there is a strict set of governance applied to the definition and
       use of extensions. Though any implementer is allowed to define an extension, there is
       a set of requirements that SHALL be met as part of the definition of the extension. Applications
       processing a resource are required to check for modifier extensions."/>
      <comments value="There can be no stigma associated with the use of extensions by any application, project,
       or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
        The use of extensions is what allows the FHIR specification to retain a core level of
       simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <alias value="modifiers"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse.group.question.modifierExtension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <isModifier value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.linkId"/>
      <short value="Corresponding question within Questionnaire"/>
      <definition value="Identifies the question from the Questionnaire that corresponds to this question in the
       QuestionnaireResponse resource."/>
      <requirements value="Groups can repeat in the answers, so a direct 1..1 correspondence may not exist - requiring
       correspondence by id."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.group.question.linkId"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="string"/>
      </type>
      <mustSupport value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".outboundRelationship[typeCode=DEFN].target[classCode=OBS, moodCode=DEFN]"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.text"/>
      <short value="Text of the question as it is shown to the user"/>
      <definition value="The actual question as shown to the user to prompt them for an answer."/>
      <requirements value="When including text for the questionnaire, each question may contain its actual question
       display text."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.group.question.text"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="string"/>
      </type>
      <mustSupport value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".code.display"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.answer"/>
      <short value="The response(s) to the question"/>
      <definition value="The respondent's answer(s) to the question."/>
      <comments value="The value is nested because we cannot have a repeating structure that has variable type."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse.group.question.answer"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="BackboneElement"/>
      </type>
      <mustSupport value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value=".value[type=LIST_ANY]"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.answer.id"/>
      <representation value="xmlAttr"/>
      <short value="xml:id (or equivalent in JSON)"/>
      <definition value="unique id for the element within a resource (for internal references)."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.group.question.answer.id"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="id"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.answer.extension"/>
      <short value="Additional Content defined by implementations"/>
      <definition value="May be used to represent additional information that is not part of the basic definition
       of the element. In order to make the use of extensions safe and manageable, there is a
       strict set of governance  applied to the definition and use of extensions. Though any
       implementer is allowed to define an extension, there is a set of requirements that SHALL
       be met as part of the definition of the extension."/>
      <comments value="There can be no stigma associated with the use of extensions by any application, project,
       or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
        The use of extensions is what allows the FHIR specification to retain a core level of
       simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse.group.question.answer.extension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.answer.modifierExtension"/>
      <short value="Extensions that cannot be ignored"/>
      <definition value="May be used to represent additional information that is not part of the basic definition
       of the element, and that modifies the understanding of the element that contains it. Usually
       modifier elements provide negation or qualification. In order to make the use of extensions
       safe and manageable, there is a strict set of governance applied to the definition and
       use of extensions. Though any implementer is allowed to define an extension, there is
       a set of requirements that SHALL be met as part of the definition of the extension. Applications
       processing a resource are required to check for modifier extensions."/>
      <comments value="There can be no stigma associated with the use of extensions by any application, project,
       or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
        The use of extensions is what allows the FHIR specification to retain a core level of
       simplicity for everyone."/>
      <alias value="extensions"/>
      <alias value="user content"/>
      <alias value="modifiers"/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse.group.question.answer.modifierExtension"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code value="Extension"/>
      </type>
      <isModifier value="true"/>
      <mapping>
        <identity value="rim"/>
        <map value="N/A"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.answer.value[x]"/>
      <short value="Single-valued answer to the question"/>
      <definition value="The answer (or one of the answers) provided by the respondent to the question."/>
      <comments value="More complex structures (Attachment, Resource and Quantity) will typically be limited
       to electronic forms that can expose an appropriate user interface to capture the components
       and enforce the constraints of a complex data type.  Additional complex types can be introduced
       through extensions."/>
      <requirements value="Ability to retain a single-valued answer to a question."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="QuestionnaireResponse.group.question.answer.value[x]"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code value="boolean"/>
      </type>
      <type>
        <code value="date"/>
      </type>
      <type>
        <code value="dateTime"/>
      </type>
      <type>
        <code value="time"/>
      </type>
      <type>
        <code value="instant"/>
      </type>
      <type>
        <code value="decimal"/>
      </type>
      <type>
        <code value="integer"/>
      </type>
      <type>
        <code value="string"/>
      </type>
      <type>
        <code value="Coding"/>
      </type>
      <type>
        <code value="uri"/>
      </type>
      <type>
        <code value="Quantity"/>
      </type>
      <type>
        <code value="Attachment"/>
      </type>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Resource"/>
      </type>
      <mustSupport value="true"/>
      <binding>
        <strength value="example"/>
        <description value="Code indicating the response provided for a question."/>
      </binding>
      <mapping>
        <identity value="rim"/>
        <map value=".item"/>
      </mapping>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.answer.group"/>
      <short value="Nested questionnaire group"/>
      <definition value="Nested group, containing nested question for this question. The order of groups within
       the question is relevant."/>
      <requirements value="It is useful to have &quot;sub-questions&quot;, questions which normally appear when certain
       answers are given and which collect additional details."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="QuestionnaireResponse.group.question.answer.group"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <nameReference value="group"/>
      <mapping>
        <identity value="rim"/>
        <map value=".outboundRelationship[typeCode=COMP].target[classCode=DOCSECT, moodCode=EVN]"/>
      </mapping>
    </element>
  </snapshot>
  <differential>
    <element>
      <path value="QuestionnaireResponse"/>
      <name value="SDC-Response"/>
      <definition value="Sets expectations for supported capabilities for questionnaire responses for SDC-conformant
       systems."/>
      <alias value="Form Data"/>
      <min value="0"/>
      <max value="*"/>
      <type>
        <code value="QuestionnaireResponse"/>
      </type>
    </element>
    <element>
      <path value="QuestionnaireResponse.identifier"/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code value="Identifier"/>
      </type>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.questionnaire"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/sdc-questionnaire"/>
      </type>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.status"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="code"/>
      </type>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.subject"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Patient"/>
      </type>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.author"/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Practitioner"/>
      </type>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Patient"/>
      </type>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/RelatedPerson"/>
      </type>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.authored"/>
      <definition value="Identifies when this version of the answer set was created.  Changes whenever the answers
       are updated."/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="dateTime"/>
      </type>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.source"/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Patient"/>
      </type>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Practitioner"/>
      </type>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/RelatedPerson"/>
      </type>
    </element>
    <element>
      <path value="QuestionnaireResponse.encounter"/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Encounter"/>
      </type>
    </element>
    <element>
      <path value="QuestionnaireResponse.group"/>
      <name value="group"/>
      <min value="1"/>
      <max value="1"/>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.linkId"/>
      <min value="1"/>
      <max value="1"/>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.title"/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code value="string"/>
      </type>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.text"/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code value="string"/>
      </type>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.subject"/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Resource"/>
      </type>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.group"/>
      <min value="0"/>
      <max value="*"/>
      <nameReference value="group"/>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question"/>
      <min value="0"/>
      <max value="*"/>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.linkId"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="string"/>
      </type>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.text"/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="string"/>
      </type>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.answer"/>
      <min value="0"/>
      <max value="*"/>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.answer.value[x]"/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code value="boolean"/>
      </type>
      <type>
        <code value="date"/>
      </type>
      <type>
        <code value="dateTime"/>
      </type>
      <type>
        <code value="time"/>
      </type>
      <type>
        <code value="instant"/>
      </type>
      <type>
        <code value="decimal"/>
      </type>
      <type>
        <code value="integer"/>
      </type>
      <type>
        <code value="string"/>
      </type>
      <type>
        <code value="Coding"/>
      </type>
      <type>
        <code value="uri"/>
      </type>
      <type>
        <code value="Quantity"/>
      </type>
      <type>
        <code value="Attachment"/>
      </type>
      <type>
        <code value="Reference"/>
        <profile value="http://hl7.org/fhir/StructureDefinition/Resource"/>
      </type>
      <mustSupport value="true"/>
    </element>
    <element>
      <path value="QuestionnaireResponse.group.question.answer.group"/>
      <min value="0"/>
      <max value="*"/>
      <nameReference value="group"/>
    </element>
  </differential>
</StructureDefinition>