<StructureDefinition xmlns="http://hl7.org/fhir">
  <meta>
    <lastUpdated value="2017-08-25T15:09:59.051+01:00" />
  </meta>
  <url value="StructureDefinition/MyModel" />
  <name value="PatientLogicalModel" />
  <status value="draft" />
  <experimental value="true" />
  <date value="2017-08-22T15:13:17.6050429+01:00" />
  <description value="Abstraction of CareConnect-Patient-1 profile.&#xD;&#xA;&#xD;&#xA;'Abstract' version of logical model - focused on data content, rather than technical/fhir implementation elements." />
  <fhirVersion value="3.0.1" />
  <kind value="logical" />
  <abstract value="false" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Element" />
  <derivation value="specialization" />
  <snapshot>
    <element id="PatientLogicalModel">
      <path value="PatientLogicalModel" />
      <short value="A logical model of CareConnect-Patient-1" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Element" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientIdentifiers">
      <path value="PatientLogicalModel.patientIdentifiers" />
      <short value="Identifiers for this patient " />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="BackboneElement" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientIdentifiers.nhsNumber">
      <path value="PatientLogicalModel.patientIdentifiers.nhsNumber" />
      <short value="The patient's NHS number" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="BackboneElement" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientIdentifiers.nhsNumber.nhsNumberVerificationStatus">
      <path value="PatientLogicalModel.patientIdentifiers.nhsNumber.nhsNumberVerificationStatus" />
      <short value="NHS number verification status" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientIdentifiers.nhsNumber.system">
      <path value="PatientLogicalModel.patientIdentifiers.nhsNumber.system" />
      <short value="The namespace for the identifier " />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="uri" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientIdentifiers.nhsNumber.value">
      <path value="PatientLogicalModel.patientIdentifiers.nhsNumber.value" />
      <short value="Ten numeric digit NHS number " />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientIdentifiers.localIdentifier">
      <path value="PatientLogicalModel.patientIdentifiers.localIdentifier" />
      <short value="The patient's other identifiers" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="BackboneElement" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientIdentifiers.localIdentifier.use">
      <path value="PatientLogicalModel.patientIdentifiers.localIdentifier.use" />
      <short value="Identifies the purpose for this identifier, if known" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Coding" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientIdentifiers.localIdentifier.type">
      <path value="PatientLogicalModel.patientIdentifiers.localIdentifier.type" />
      <short value="Description of identifier " />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientIdentifiers.localIdentifier.system">
      <path value="PatientLogicalModel.patientIdentifiers.localIdentifier.system" />
      <short value="The namespace for the identifier " />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="uri" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientIdentifiers.localIdentifier.value">
      <path value="PatientLogicalModel.patientIdentifiers.localIdentifier.value" />
      <short value="The value that is unique " />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientIdentifiers.localIdentifier.period">
      <path value="PatientLogicalModel.patientIdentifiers.localIdentifier.period" />
      <short value="Time period when id is/was valid for use " />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Period" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientIdentifiers.localIdentifier.assigner">
      <path value="PatientLogicalModel.patientIdentifiers.localIdentifier.assigner" />
      <short value="Organization that issued id (may be just text)" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Organization" />
      </type>
    </element>
    <element id="PatientLogicalModel.names">
      <path value="PatientLogicalModel.names" />
      <short value="Names associated with the patient" />
      <min value="1" />
      <max value="*" />
      <type>
        <code value="BackboneElement" />
      </type>
    </element>
    <element id="PatientLogicalModel.names.usualName">
      <path value="PatientLogicalModel.names.usualName" />
      <short value="The patient's current usual name" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="HumanName" />
      </type>
    </element>
    <element id="PatientLogicalModel.names.otherName">
      <path value="PatientLogicalModel.names.otherName" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="HumanName" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails">
      <path value="PatientLogicalModel.patientDetails" />
      <short value="Contact, and other, details for the patient" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="BackboneElement" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.telecom">
      <path value="PatientLogicalModel.patientDetails.telecom" />
      <short value="A contact detail for the individual " />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="ContactPoint" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.gender">
      <path value="PatientLogicalModel.patientDetails.gender" />
      <short value="The gender of a person used for administrative purposes." />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Coding" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.birthdate">
      <path value="PatientLogicalModel.patientDetails.birthdate" />
      <short value="The date (and time) of birth for the patient" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="dateTime" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.deceased">
      <path value="PatientLogicalModel.patientDetails.deceased" />
      <short value="Indicates if the individual is deceased or not" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="boolean" />
      </type>
      <type>
        <code value="dateTime" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.address">
      <path value="PatientLogicalModel.patientDetails.address" />
      <short value="Addresses for the individual" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Address" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.maritalStatus">
      <path value="PatientLogicalModel.patientDetails.maritalStatus" />
      <short value="Marital (civil) status of a patient " />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.multipleBirth">
      <path value="PatientLogicalModel.patientDetails.multipleBirth" />
      <short value="Whether patient is part of a multiple birth" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="boolean" />
      </type>
      <type>
        <code value="integer" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.contact">
      <path value="PatientLogicalModel.patientDetails.contact" />
      <short value="A contact party (e.g. guardian, partner, friend) for the patient " />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="BackboneElement" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.contact.relationship">
      <path value="PatientLogicalModel.patientDetails.contact.relationship" />
      <short value="The kind of relationship " />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="CodeableConcept" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.contact.name">
      <path value="PatientLogicalModel.patientDetails.contact.name" />
      <short value="Name associated with the contact person" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="HumanName" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.contact.telecom">
      <path value="PatientLogicalModel.patientDetails.contact.telecom" />
      <short value="A contact detail for the person " />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="ContactPoint" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.contact.address">
      <path value="PatientLogicalModel.patientDetails.contact.address" />
      <short value="Address for the contact person" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Address" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.contact.gender">
      <path value="PatientLogicalModel.patientDetails.contact.gender" />
      <short value="The gender of the person" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Coding" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientDetails.contact.organization">
      <path value="PatientLogicalModel.patientDetails.contact.organization" />
      <short value="Organization that is associated with the contact " />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Organization" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes">
      <path value="PatientLogicalModel.patientCodes" />
      <short value="Codes and flags about the patient" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="BackboneElement" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.registrationDetails">
      <path value="PatientLogicalModel.patientCodes.registrationDetails" />
      <short value="Additional registration information for the Patient resource" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="BackboneElement" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.registrationDetails.registrationPeriod">
      <path value="PatientLogicalModel.patientCodes.registrationDetails.registrationPeriod" />
      <short value="The period of time during which the Patient registration applies" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Period" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.registrationDetails.registrationType">
      <path value="PatientLogicalModel.patientCodes.registrationDetails.registrationType" />
      <short value="The type of patient registration at the healthcare organisation" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.registrationDetails.registrationStatus">
      <path value="PatientLogicalModel.patientCodes.registrationDetails.registrationStatus" />
      <short value="The registration status for this patient at the healthcare organisation" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.ethnicCategory">
      <path value="PatientLogicalModel.patientCodes.ethnicCategory" />
      <short value="Ethnic category " />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.religiousAffiliation">
      <path value="PatientLogicalModel.patientCodes.religiousAffiliation" />
      <short value="Religious affiliation " />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.cadavericDonor">
      <path value="PatientLogicalModel.patientCodes.cadavericDonor" />
      <short value="Flag indicating whether the patient authorized the donation of body parts after death " />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.residentialStatus">
      <path value="PatientLogicalModel.patientCodes.residentialStatus" />
      <short value="The residential status of the patient " />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Coding" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.treatmentCategory">
      <path value="PatientLogicalModel.patientCodes.treatmentCategory" />
      <short value="The treatment category for this patient " />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Coding" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.nhsCommunication">
      <path value="PatientLogicalModel.patientCodes.nhsCommunication" />
      <short value="NHS communication preferences" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="BackboneElement" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.nhsCommunication.language">
      <path value="PatientLogicalModel.patientCodes.nhsCommunication.language" />
      <short value="Language which may be used for communication" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.nhsCommunication.preferred">
      <path value="PatientLogicalModel.patientCodes.nhsCommunication.preferred" />
      <short value="Language preference indicator" />
      <definition value="i.e. is this the preferred language" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.nhsCommunication.modeOfCommunication">
      <path value="PatientLogicalModel.patientCodes.nhsCommunication.modeOfCommunication" />
      <short value="Mode of communication for the selected language" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="CodeableConcept" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.nhsCommunication.communicationProficiency">
      <path value="PatientLogicalModel.patientCodes.nhsCommunication.communicationProficiency" />
      <short value="The level of proficiency in communicating a language" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.nhsCommunication.interpreterRequired">
      <path value="PatientLogicalModel.patientCodes.nhsCommunication.interpreterRequired" />
      <short value="Interpreter preference indicator" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="PatientLogicalModel.patientCodes.active">
      <path value="PatientLogicalModel.patientCodes.active" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="boolean" />
      </type>
    </element>
    <element id="PatientLogicalModel.careProvider">
      <path value="PatientLogicalModel.careProvider" />
      <short value="Patient's nominated practitioner " />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Organization" />
        <aggregation value="referenced" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Practitioner" />
        <aggregation value="referenced" />
      </type>
    </element>
    <element id="PatientLogicalModel.managingOrganization">
      <path value="PatientLogicalModel.managingOrganization" />
      <short value="Organization that is the custodian of the patient record" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Organization" />
      </type>
    </element>
    <element id="PatientLogicalModel.link">
      <path value="PatientLogicalModel.link" />
      <short value="Link to another patient resource that concerns the same actual person" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="BackboneElement" />
      </type>
    </element>
    <element id="PatientLogicalModel.link.other">
      <path value="PatientLogicalModel.link.other" />
      <short value="The other patient resource that the link refers to " />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Patient" />
      </type>
    </element>
    <element id="PatientLogicalModel.link.type">
      <path value="PatientLogicalModel.link.type" />
      <short value="The type of link between this patient resource and another patient resource" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="code" />
      </type>
    </element>
  </snapshot>
</StructureDefinition>