<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="profile-documentReference" />
  <url value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-documentReference" />
  <version value="1.0.0" />
  <name value="DocumentReferenceEHR" />
  <status value="active" />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="DocumentReference" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/DocumentReference" />
  <derivation value="constraint" />
  <differential>
    <element id="DocumentReference.identifier">
      <path value="DocumentReference.identifier" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.status">
      <path value="DocumentReference.status" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.docStatus">
      <path value="DocumentReference.docStatus" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.type">
      <path value="DocumentReference.type" />
      <min value="1" />
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <description value="contains all document type codes used to represent clinical documents and/or medical record reports in the EHR" />
        <valueSet value="http://ontariohealth.ca/fhir/ehr/ValueSet/document-reference-type" />
      </binding>
    </element>
    <element id="DocumentReference.category">
      <path value="DocumentReference.category" />
      <min value="1" />
      <mustSupport value="true" />
      <binding>
        <extension url="http://hl7.org/fhir/tools/StructureDefinition/additional-binding">
          <extension url="purpose">
            <valueCode value="candidate" />
          </extension>
          <extension url="valueSet">
            <valueCanonical value="http://ontariohealth.ca/fhir/ehr/ValueSet/document-class" />
          </extension>
          <extension url="documentation">
            <valueMarkdown value="This value set defines the codes representing document class from LOINC as defined in the LOINC Manual, excluding class = RAD. The class codes from LOINC is intended to be used for report categorization based on the type of study performed. Radiology class type is excluded from this value set it will be contributed using DiagnosticReport resource." />
          </extension>
          <extension url="key">
            <valueId value="documentClass" />
          </extension>
        </extension>
        <extension url="http://hl7.org/fhir/tools/StructureDefinition/additional-binding">
          <extension url="purpose">
            <valueCode value="candidate" />
          </extension>
          <extension url="valueSet">
            <valueCanonical value="http://ontariohealth.ca/fhir/ehr/ValueSet/document-subject-matter-domain" />
          </extension>
          <extension url="documentation">
            <valueMarkdown value="The document-subject-matter-domain property in LOINC characterizes the general focus or domain of knowledge represented within the content of the note." />
          </extension>
          <extension url="key">
            <valueId value="documentSMD" />
          </extension>
        </extension>
        <extension url="http://hl7.org/fhir/tools/StructureDefinition/additional-binding">
          <extension url="purpose">
            <valueCode value="candidate" />
          </extension>
          <extension url="valueSet">
            <valueCanonical value="http://ontariohealth.ca/fhir/ehr/ValueSet/document-type-of-service" />
          </extension>
          <extension url="documentation">
            <valueMarkdown value="The document-type-of-service property in LOINC characterizes the healthcare service or activity provided to/for the patient (or other subject of the service) that is described in the document." />
          </extension>
          <extension url="key">
            <valueId value="DocumentTOS" />
          </extension>
        </extension>
        <extension url="http://hl7.org/fhir/tools/StructureDefinition/additional-binding">
          <extension url="purpose">
            <valueCode value="candidate" />
          </extension>
          <extension url="valueSet">
            <valueCanonical value="http://ontariohealth.ca/fhir/ehr/ValueSet/document-kind" />
          </extension>
          <extension url="documentation">
            <valueMarkdown value="The document-kind property in LOINC Characterizes the general structure of the document at a macro level." />
          </extension>
          <extension url="key">
            <valueId value="DocumentKOD" />
          </extension>
        </extension>
        <extension url="http://hl7.org/fhir/tools/StructureDefinition/additional-binding">
          <extension url="purpose">
            <valueCode value="candidate" />
          </extension>
          <extension url="valueSet">
            <valueCanonical value="http://ontariohealth.ca/fhir/ehr/ValueSet/document-role" />
          </extension>
          <extension url="documentation">
            <valueMarkdown value="The document-role property in LOINC characterizes the general function, responsibility, or capabilities of the author in relation to a document." />
          </extension>
          <extension url="key">
            <valueId value="DocumentRole" />
          </extension>
        </extension>
        <extension url="http://hl7.org/fhir/tools/StructureDefinition/additional-binding">
          <extension url="purpose">
            <valueCode value="candidate" />
          </extension>
          <extension url="valueSet">
            <valueCanonical value="http://ontariohealth.ca/fhir/ehr/ValueSet/document-setting" />
          </extension>
          <extension url="documentation">
            <valueMarkdown value="The document-setting property in LOINC is a coarse definition of the Care Setting." />
          </extension>
          <extension url="key">
            <valueId value="DocumentSetting" />
          </extension>
        </extension>
        <extension url="http://hl7.org/fhir/tools/StructureDefinition/additional-binding">
          <extension url="purpose">
            <valueCode value="candidate" />
          </extension>
          <extension url="valueSet">
            <valueCanonical value="http://dicom.nema.org/medical/dicom/current/output/chtml/part16/sect_CID_29.html" />
          </extension>
          <extension url="documentation">
            <valueMarkdown value="Transitive closure of CID 29 AcquisitionModality" />
          </extension>
          <extension url="key">
            <valueId value="dicomModality" />
          </extension>
        </extension>
        <extension url="http://hl7.org/fhir/tools/StructureDefinition/additional-binding">
          <extension url="purpose">
            <valueCode value="candidate" />
          </extension>
          <extension url="valueSet">
            <valueCanonical value="http://ontariohealth.ca/fhir/ehr/ValueSet/procedure-service-type" />
          </extension>
          <extension url="documentation">
            <valueMarkdown value="A code that classifies the service type of an MI procedure. This is used for searching, sorting and display purposes." />
          </extension>
          <extension url="key">
            <valueId value="procedureServiceType" />
          </extension>
        </extension>
        <extension url="http://hl7.org/fhir/tools/StructureDefinition/additional-binding">
          <extension url="purpose">
            <valueCode value="candidate" />
          </extension>
          <extension url="valueSet">
            <valueCanonical value="http://ontariohealth.ca/fhir/ehr/ValueSet/procedure-body-part" />
          </extension>
          <extension url="documentation">
            <valueMarkdown value="A code that classifies a body part of an MI procedure using SNOMED CT codes. This is used for searching, sorting and display purposes." />
          </extension>
          <extension url="key">
            <valueId value="procedureBodyPart" />
          </extension>
        </extension>
        <extension url="http://hl7.org/fhir/tools/StructureDefinition/additional-binding">
          <extension url="purpose">
            <valueCode value="candidate" />
          </extension>
          <extension url="valueSet">
            <valueCanonical value="http://ontariohealth.ca/fhir/ehr/ValueSet/procedure-laterality" />
          </extension>
          <extension url="documentation">
            <valueMarkdown value="A code that classifies a laterality of an MI procedure using SNOMED CT codes. This is used for searching, sorting and display purposes." />
          </extension>
          <extension url="key">
            <valueId value="procedureLaterality" />
          </extension>
        </extension>
        <extension url="http://hl7.org/fhir/tools/StructureDefinition/additional-binding">
          <extension url="purpose">
            <valueCode value="candidate" />
          </extension>
          <extension url="valueSet">
            <valueCanonical value="http://ontariohealth.ca/fhir/ehr/ValueSet/procedure-contrast-used" />
          </extension>
          <extension url="documentation">
            <valueMarkdown value="A code that classifies a use of Contrast for an MI procedure. This is used for searching, sorting and display purposes." />
          </extension>
          <extension url="key">
            <valueId value="procedureContrastUsed" />
          </extension>
        </extension>
        <strength value="example" />
      </binding>
    </element>
    <element id="DocumentReference.subject">
      <path value="DocumentReference.subject" />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-patient" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.subject.reference">
      <path value="DocumentReference.subject.reference" />
      <min value="1" />
    </element>
    <element id="DocumentReference.date">
      <path value="DocumentReference.date" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.author">
      <path value="DocumentReference.author" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-organization" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-practitioner" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-practitionerRole" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.author.reference">
      <path value="DocumentReference.author.reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.authenticator">
      <path value="DocumentReference.authenticator" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-organization" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-practitioner" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-practitionerRole" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.custodian">
      <path value="DocumentReference.custodian" />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-organization" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.custodian.reference">
      <path value="DocumentReference.custodian.reference" />
      <min value="1" />
    </element>
    <element id="DocumentReference.relatesTo">
      <path value="DocumentReference.relatesTo" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.relatesTo.code">
      <path value="DocumentReference.relatesTo.code" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.relatesTo.target">
      <path value="DocumentReference.relatesTo.target" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-documentReference" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.description">
      <path value="DocumentReference.description" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.content">
      <path value="DocumentReference.content" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.content.attachment">
      <path value="DocumentReference.content.attachment" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.content.attachment.contentType">
      <path value="DocumentReference.content.attachment.contentType" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.content.attachment.url">
      <path value="DocumentReference.content.attachment.url" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context">
      <path value="DocumentReference.context" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.encounter">
      <path value="DocumentReference.context.encounter" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-encounter" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.encounter.reference">
      <path value="DocumentReference.context.encounter.reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.event">
      <path value="DocumentReference.context.event" />
      <mustSupport value="true" />
      <binding>
        <strength value="extensible" />
        <valueSet value="http://ontariohealth.ca/fhir/ehr/ValueSet/encounter-class" />
      </binding>
    </element>
    <element id="DocumentReference.context.event.coding">
      <path value="DocumentReference.context.event.coding" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.event.coding.system">
      <path value="DocumentReference.context.event.coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.event.coding.code">
      <path value="DocumentReference.context.event.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.event.coding.display">
      <path value="DocumentReference.context.event.coding.display" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.period">
      <path value="DocumentReference.context.period" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.period.start">
      <path value="DocumentReference.context.period.start" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.period.end">
      <path value="DocumentReference.context.period.end" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.facilityType">
      <path value="DocumentReference.context.facilityType" />
      <mustSupport value="true" />
      <binding>
        <strength value="extensible" />
        <description value="Type of provider organization role" />
        <valueSet value="http://ontariohealth.ca/fhir/ehr/ValueSet/provider-organization-role-type" />
      </binding>
    </element>
    <element id="DocumentReference.context.facilityType.coding">
      <path value="DocumentReference.context.facilityType.coding" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.facilityType.coding.system">
      <path value="DocumentReference.context.facilityType.coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.facilityType.coding.code">
      <path value="DocumentReference.context.facilityType.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.facilityType.coding.display">
      <path value="DocumentReference.context.facilityType.coding.display" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.practiceSetting">
      <path value="DocumentReference.context.practiceSetting" />
      <mustSupport value="true" />
      <binding>
        <strength value="extensible" />
        <description value="Broad categorization of the service that is to be provided." />
        <valueSet value="http://cihi.ca/fhir/ValueSet/aac-hospital-service" />
      </binding>
    </element>
    <element id="DocumentReference.context.practiceSetting.coding">
      <path value="DocumentReference.context.practiceSetting.coding" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.practiceSetting.coding.system">
      <path value="DocumentReference.context.practiceSetting.coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.practiceSetting.coding.code">
      <path value="DocumentReference.context.practiceSetting.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.practiceSetting.coding.display">
      <path value="DocumentReference.context.practiceSetting.coding.display" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.sourcePatientInfo">
      <path value="DocumentReference.context.sourcePatientInfo" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-patient" />
      </type>
    </element>
    <element id="DocumentReference.context.related">
      <path value="DocumentReference.context.related" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-serviceRequest" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-diagnosticReport-imaging" />
        <targetProfile value="http://ontariohealth.ca/fhir/ehr/StructureDefinition/profile-imagingStudy" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="DocumentReference.context.related.reference">
      <path value="DocumentReference.context.related.reference" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>