<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="logicalmodel-Procedurescreeningquestionnaire-R4" />
  <url value="http://linkehr.com/fhir/logicalmodel-procedurescreeningquestionnaire-R4" />
  <identifier>
    <system value="openEHR-CKM" />
    <value value="openEHR-EHR-OBSERVATION.procedure_screening.v1" />
  </identifier>
  <version value="0" />
  <name value="Procedurescreeningquestionnaire" />
  <title value="Procedure screening questionnaire" />
  <status value="draft" />
  <date value="2024-06-18" />
  <publisher value="openEHR" />
  <contact>
    <telecom>
      <system value="url" />
      <value value="http://www.veratech.es" />
    </telecom>
  </contact>
  <description value="Series of questions and associated answers used to screen for procedures that has been carried out in the past." />
  <purpose value="To create a framework for recording answers to pre-defined screening questions about clinical management related to surgical/operative procedures that have been carried out in the past." />
  <fhirVersion value="4.0.0" />
  <mapping>
    <identity value="openEHR" />
    <uri value="http://openehr.org" />
    <name value="openEHR Mapping" />
  </mapping>
  <mapping>
    <identity value="openEHR-natural" />
    <uri value="http://openehr.org" />
    <name value="openEHR natural path" />
  </mapping>
  <kind value="logical" />
  <abstract value="false" />
  <type value="StructureDefinition" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Element" />
  <snapshot>
    <element id="Procedure_screening_questionnaire">
      <path value="Procedure_screening_questionnaire" />
      <short value="Procedure screening questionnaire" />
      <definition value="Series of questions and associated answers used to screen for procedures that has been carried out in the past." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire" />
        <min value="1" />
        <max value="1" />
      </base>
      <type>
        <code value="BackboneElement" />
      </type>
      <mustSupport value="true" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.protocol">
      <path value="Procedure_screening_questionnaire.protocol" />
      <short value="Item tree" />
      <definition value="@ internal @" />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.protocol" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="BackboneElement" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.protocol.Extension">
      <path value="Procedure_screening_questionnaire.protocol.Extension" />
      <short value="Extension" />
      <definition value="Additional information required to extend the model with local content or to align with other reference models or formalisms." />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Procedure_screening_questionnaire.protocol.Extension" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="BackboneElement" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History">
      <path value="Procedure_screening_questionnaire.History" />
      <short value="History" />
      <definition value="@ internal @" />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="BackboneElement" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event">
      <path value="Procedure_screening_questionnaire.History.Any_event" />
      <short value="Any event" />
      <definition value="Default, unspecified point in time or interval event which may be explicitly defined in a template or at run-time." />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="BackboneElement" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data">
      <path value="Procedure_screening_questionnaire.History.Any_event.data" />
      <short value="Tree" />
      <definition value="@ internal @" />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="BackboneElement" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Screening_purpose">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Screening_purpose" />
      <short value="Screening purpose" />
      <definition value="The context or reason for screening." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Screening_purpose" />
        <min value="0" />
        <max value="1" />
      </base>
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Screening_purpose.value">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Screening_purpose.value" />
      <short value="Screening purpose" />
      <definition value="The context or reason for screening." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Screening_purpose.value" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Any_previous_procedures_">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Any_previous_procedures_" />
      <short value="Any previous procedures?" />
      <definition value="Is there a history of any past procedures relevant for the screening purpose?" />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Any_previous_procedures_" />
        <min value="0" />
        <max value="*" />
      </base>
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Any_previous_procedures_.value_DV_CODED_TEXT">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Any_previous_procedures_.value_DV_CODED_TEXT" />
      <short value="Any previous procedures?" />
      <definition value="Is there a history of any past procedures relevant for the screening purpose?" />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Any_previous_procedures_.value_DV_CODED_TEXT" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Any_previous_procedures_.value_DV_TEXT">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Any_previous_procedures_.value_DV_TEXT" />
      <short value="Any previous procedures?" />
      <definition value="Is there a history of any past procedures relevant for the screening purpose?" />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Any_previous_procedures_.value_DV_TEXT" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Any_previous_procedures_.value_DV_BOOLEAN">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Any_previous_procedures_.value_DV_BOOLEAN" />
      <short value="Any previous procedures?" />
      <definition value="Is there a history of any past procedures relevant for the screening purpose?" />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Any_previous_procedures_.value_DV_BOOLEAN" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="boolean" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Description">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Description" />
      <short value="Description" />
      <definition value="Narrative description about the history of any past procedures relevant for the screening purpose." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Description" />
        <min value="0" />
        <max value="1" />
      </base>
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Description.value">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Description.value" />
      <short value="Description" />
      <definition value="Narrative description about the history of any past procedures relevant for the screening purpose." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Description.value" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure" />
      <short value="Specific procedure" />
      <definition value="Details about a specific procedure or grouping of procedures relevant for the screening purpose." />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="BackboneElement" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Procedure_name">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Procedure_name" />
      <short value="Procedure name" />
      <definition value="Name of a procedure or grouping of procedures." />
      <min value="1" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Procedure_name" />
        <min value="1" />
        <max value="1" />
      </base>
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Procedure_name.value">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Procedure_name.value" />
      <short value="Procedure name" />
      <definition value="Name of a procedure or grouping of procedures." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Procedure_name.value" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Past_procedure_">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Past_procedure_" />
      <short value="Past procedure?" />
      <definition value="Is there a history of the identified procedure?" />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Past_procedure_" />
        <min value="0" />
        <max value="1" />
      </base>
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Past_procedure_.value_DV_CODED_TEXT">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Past_procedure_.value_DV_CODED_TEXT" />
      <short value="Past procedure?" />
      <definition value="Is there a history of the identified procedure?" />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Past_procedure_.value_DV_CODED_TEXT" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Past_procedure_.value_DV_TEXT">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Past_procedure_.value_DV_TEXT" />
      <short value="Past procedure?" />
      <definition value="Is there a history of the identified procedure?" />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Past_procedure_.value_DV_TEXT" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Past_procedure_.value_DV_BOOLEAN">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Past_procedure_.value_DV_BOOLEAN" />
      <short value="Past procedure?" />
      <definition value="Is there a history of the identified procedure?" />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Past_procedure_.value_DV_BOOLEAN" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="boolean" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing" />
      <short value="Timing" />
      <definition value="Timing of the procedure." />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing" />
        <min value="0" />
        <max value="*" />
      </base>
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_DATE_TIME">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_DATE_TIME" />
      <short value="Timing" />
      <definition value="Timing of the procedure." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_DATE_TIME" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="dateTime" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_TEXT">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_TEXT" />
      <short value="Timing" />
      <definition value="Timing of the procedure." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_TEXT" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_DURATION">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_DURATION" />
      <short value="Timing" />
      <definition value="Timing of the procedure." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_DURATION" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="Duration" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_INTERVAL_DV_DURATION_">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_INTERVAL_DV_DURATION_" />
      <short value="Timing" />
      <definition value="Timing of the procedure." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_INTERVAL_DV_DURATION_" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="BackboneElement" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_INTERVAL_DV_DATE_TIME_">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_INTERVAL_DV_DATE_TIME_" />
      <short value="Timing" />
      <definition value="Timing of the procedure." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Timing.value_DV_INTERVAL_DV_DATE_TIME_" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="BackboneElement" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Additional_details">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Additional_details" />
      <short value="Additional details" />
      <definition value="Structured details or questions about the specific procedure." />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Additional_details" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="BackboneElement" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Comment">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Comment" />
      <short value="Comment" />
      <definition value="Additional narrative about the specific procedure question, not captured in other fields." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Comment" />
        <min value="0" />
        <max value="1" />
      </base>
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Comment.value">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Comment.value" />
      <short value="Comment" />
      <definition value="Additional narrative about the specific procedure question, not captured in other fields." />
      <min value="0" />
      <max value="1" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Specific_procedure.Comment.value" />
        <min value="0" />
        <max value="1" />
      </base>
      <type>
        <code value="CodeableConcept" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
    <element id="Procedure_screening_questionnaire.History.Any_event.data.Additional_details">
      <path value="Procedure_screening_questionnaire.History.Any_event.data.Additional_details" />
      <short value="Additional details" />
      <definition value="Structured details or questions about screening for procedures." />
      <min value="0" />
      <max value="*" />
      <base>
        <path value="Procedure_screening_questionnaire.History.Any_event.data.Additional_details" />
        <min value="0" />
        <max value="*" />
      </base>
      <type>
        <code value="BackboneElement" />
      </type>
      <mustSupport value="false" />
      <isModifier value="false" />
      <isSummary value="true" />
    </element>
  </snapshot>
</StructureDefinition>