<?xml version="1.0" encoding="UTF-8"?>
<resourceDefinitions xmlns="http://www.hl7.org/fhir" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.hl7.org/fhir definitions.xsd">
  <author>HL7</author>
  <resourceDefinition>
    <name>Patient</name>
    <elementDefinitions>
      <elementDefinition>
        <name>Patient</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <mustUnderstand>false</mustUnderstand>
        <definition>A patient is a person or animal that is receiving care</definition>
        <requirements>Tracking patient is the center of the healthcare process</requirements>
        <rim>Patient</rim>
      </elementDefinition>
      <elementDefinition>
        <name>Patient.id</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>id</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>Master Resource Id, always first in all resources</definition>
        <requirements></requirements>
        <rim></rim>
        <todo>.id(scope=OBJ)</todo>
      </elementDefinition>
      <elementDefinition>
        <name>Patient.link</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>unbounded</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>Resource(Patient)</type>
        </types>
        <mustUnderstand>true</mustUnderstand>
        <definition>A linked patient record is a record that concerns the same patient. Records are linked after it is realised that at least one was created in error.</definition>
        <requirements>Due to the clerical errors associated with the difficulties of identifying humans consistently, duplicate patient records are frequently created in error</requirements>
        <comments>More then two patient records may be linked. Note that there is a special transaction for linking patient records in the RESTful context, as record linking consistency must be maintained</comments>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Patient.active</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>boolean</type>
        </types>
        <mustUnderstand>true</mustUnderstand>
        <definition>Whether the patient record is in use, or has been removed from active use</definition>
        <requirements>Need to be able to mark a patient record as not to be used because it was created in error</requirements>
        <comments>If a record is inactive, and linked to an active record, then future patient/person/record updates should occur on the other patient</comments>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Patient.person</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Conditional</conformance>
        <condition>Either an animal or a person must be provided, but not both</condition>
        <types>
          <type>Resource(Person)</type>
        </types>
        <mustUnderstand>true</mustUnderstand>
        <definition>The person that this patient record is about</definition>
        <requirements>Need to link this patient record to a known and identifiable person (or animal)</requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Patient.animal</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Conditional</conformance>
        <condition>Either an animal or a person must be provided, but not both</condition>
        <types>
          <type>Resource(Animal)</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>The animal that this patient record is about</definition>
        <requirements>Need to link this patient record to a known and identifiable animal (or person)</requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Patient.provider</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>Resource(Organization)</type>
        </types>
        <mustUnderstand>true</mustUnderstand>
        <definition>The provider for whom this is a patient record</definition>
        <requirements>Need to know who recognises this patient record</requirements>
        <rim></rim>
        <todo>But is thie same as institution above?</todo>
      </elementDefinition>
      <elementDefinition>
        <name>Patient.identifier</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>unbounded</maxOccurs>
        </cardinality>
        <conformance></conformance>
        <condition></condition>
        <types>
          <type>HumanId</type>
        </types>
        <mustUnderstand>true</mustUnderstand>
        <definition>An identifier that applies to this person as a patient</definition>
        <requirements>Patients are almos always assigned specific numerical identifiers</requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Patient.diet</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>CodeableConcept</type>
        </types>
        <conceptDomain>PatientDiet</conceptDomain>
        <mustUnderstand>false</mustUnderstand>
        <definition>Dietary restrictions for the patient</definition>
        <requirements>Track patients reported dietary restrictions to help with catering requirements</requirements>
        <comments>not for specifying medical diets, but for casual dietary restrictions such as vegetarian, diary-free, nut-free, etc</comments>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Patient.confidentiality</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>CodeableConcept</type>
        </types>
        <conceptDomain>PatientConfidentiality</conceptDomain>
        <mustUnderstand>false</mustUnderstand>
        <definition>Confidentiality of the patient records</definition>
        <requirements>Need to be able to track which patient records are particularly sensitive</requirements>
        <comments>Confidentiality tracking also occurs at more detailed points in the medical record</comments>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Patient.recordLocation</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <types>
          <type>CodeableConcept</type>
        </types>
        <conceptDomain>PaperRecordLocation</conceptDomain>
        <mustUnderstand>false</mustUnderstand>
        <definition>The location of the paper record for the patient, if there is one</definition>
        <requirements>Track old paper records where these are still in use</requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Patient.extensions</name>
        <cardinality>
          <minOccurs>0</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Optional</conformance>
        <condition></condition>
        <mustUnderstand>false</mustUnderstand>
        <definition>See Extensions</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
      <elementDefinition>
        <name>Patient.text</name>
        <cardinality>
          <minOccurs>1</minOccurs>
          <maxOccurs>1</maxOccurs>
        </cardinality>
        <conformance>Mandatory</conformance>
        <condition></condition>
        <types>
          <type>Narrative</type>
        </types>
        <mustUnderstand>false</mustUnderstand>
        <definition>Text summary of person, for human interpretation</definition>
        <requirements></requirements>
        <rim></rim>
      </elementDefinition>
    </elementDefinitions>
  </resourceDefinition>
</resourceDefinitions>

