<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="ServidGetPat-71a8e849-109d-4038-910f-a49c5c13058b" />
  <url value="https://www.esante.lu/fhir-spec/StructureDefinition/ServidGetPat" />
  <version value="0.1.0" />
  <name value="ServidGetPat" />
  <status value="draft" />
  <fhirVersion value="5.0.0" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Patient" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Patient" />
  <derivation value="constraint" />
  <differential>
    <element id="Patient">
      <path value="Patient" />
      <short value="The patient" />
    </element>
    <element id="Patient.id">
      <path value="Patient.id" />
      <max value="0" />
    </element>
    <element id="Patient.meta">
      <path value="Patient.meta" />
      <min value="1" />
    </element>
    <element id="Patient.meta.id">
      <path value="Patient.meta.id" />
      <max value="0" />
    </element>
    <element id="Patient.meta.extension">
      <path value="Patient.meta.extension" />
      <max value="0" />
    </element>
    <element id="Patient.meta.versionId">
      <path value="Patient.meta.versionId" />
      <max value="0" />
    </element>
    <element id="Patient.meta.lastUpdated">
      <path value="Patient.meta.lastUpdated" />
      <max value="0" />
    </element>
    <element id="Patient.meta.source">
      <path value="Patient.meta.source" />
      <max value="0" />
    </element>
    <element id="Patient.meta.profile">
      <path value="Patient.meta.profile" />
      <min value="1" />
      <max value="1" />
      <fixedCanonical value="https://www.esante.lu/fhir-spec/StructureDefinition/ServidGetPat" />
    </element>
    <element id="Patient.meta.security">
      <path value="Patient.meta.security" />
      <short value="Only present if it's a test patient. Indicates that it is a test patient" />
      <max value="1" />
      <patternCoding>
        <system value="http://hl7.org/fhir/v3/ActReason" />
        <code value="HTEST" />
      </patternCoding>
    </element>
    <element id="Patient.meta.security.system">
      <path value="Patient.meta.security.system" />
      <min value="1" />
    </element>
    <element id="Patient.meta.security.version">
      <path value="Patient.meta.security.version" />
      <max value="0" />
    </element>
    <element id="Patient.meta.security.code">
      <path value="Patient.meta.security.code" />
      <min value="1" />
    </element>
    <element id="Patient.meta.security.display">
      <path value="Patient.meta.security.display" />
      <max value="0" />
    </element>
    <element id="Patient.meta.security.userSelected">
      <path value="Patient.meta.security.userSelected" />
      <max value="0" />
    </element>
    <element id="Patient.meta.tag">
      <path value="Patient.meta.tag" />
      <max value="0" />
    </element>
    <element id="Patient.implicitRules">
      <path value="Patient.implicitRules" />
      <max value="0" />
    </element>
    <element id="Patient.language">
      <path value="Patient.language" />
      <max value="0" />
    </element>
    <element id="Patient.text">
      <path value="Patient.text" />
      <max value="0" />
    </element>
    <element id="Patient.contained">
      <path value="Patient.contained" />
      <max value="0" />
    </element>
    <element id="Patient.extension">
      <path value="Patient.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <max value="1" />
    </element>
    <element id="Patient.extension:simpleBirthLocation">
      <path value="Patient.extension" />
      <sliceName value="simpleBirthLocation" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://www.esante.lu/fhir-spec/StructureDefinition/SimpleBirthLocation" />
      </type>
    </element>
    <element id="Patient.identifier">
      <path value="Patient.identifier" />
      <short value="Different identifiers for this patient" />
      <min value="1" />
    </element>
    <element id="Patient.identifier.id">
      <path value="Patient.identifier.id" />
      <max value="0" />
    </element>
    <element id="Patient.identifier.extension">
      <path value="Patient.identifier.extension" />
      <max value="0" />
    </element>
    <element id="Patient.identifier.use">
      <path value="Patient.identifier.use" />
      <short value="Only official or secondary are used" />
      <min value="1" />
      <condition value="identifierUse" />
      <constraint>
        <key value="identifierUse" />
        <severity value="error" />
        <human value="use is only official  or secondary" />
        <expression value="$this = 'official' or $this='secondary'" />
        <source value="https://www.esante.lu/fhir-spec/StructureDefinition/ServidGetPat" />
      </constraint>
    </element>
    <element id="Patient.identifier.type">
      <path value="Patient.identifier.type" />
      <max value="0" />
    </element>
    <element id="Patient.identifier.system">
      <path value="Patient.identifier.system" />
      <min value="1" />
    </element>
    <element id="Patient.identifier.value">
      <path value="Patient.identifier.value" />
      <min value="1" />
    </element>
    <element id="Patient.identifier.period">
      <path value="Patient.identifier.period" />
      <max value="0" />
    </element>
    <element id="Patient.identifier.assigner">
      <path value="Patient.identifier.assigner" />
      <max value="0" />
    </element>
    <element id="Patient.active">
      <path value="Patient.active" />
      <short value="True if it's an usable identity, false otherwise, meaning the identity could be deactivated or duplicated. Careful, a test patient may be active or not." />
      <min value="1" />
    </element>
    <element id="Patient.name">
      <path value="Patient.name" />
      <min value="1" />
      <max value="2" />
    </element>
    <element id="Patient.name.id">
      <path value="Patient.name.id" />
      <max value="0" />
    </element>
    <element id="Patient.name.extension">
      <path value="Patient.name.extension" />
      <max value="0" />
    </element>
    <element id="Patient.name.use">
      <path value="Patient.name.use" />
      <short value="Only official or usual are used" />
      <min value="1" />
      <condition value="nameUseType" />
      <constraint>
        <key value="nameUseType" />
        <severity value="error" />
        <human value="use is only official or usual" />
        <expression value="$this = 'official' or $this='usual'" />
        <source value="https://www.esante.lu/fhir-spec/StructureDefinition/ServidGetPat" />
      </constraint>
    </element>
    <element id="Patient.name.text">
      <path value="Patient.name.text" />
      <max value="0" />
    </element>
    <element id="Patient.name.family">
      <path value="Patient.name.family" />
      <definition value="Family name (often called 'Surname')" />
    </element>
    <element id="Patient.name.prefix">
      <path value="Patient.name.prefix" />
      <max value="0" />
    </element>
    <element id="Patient.name.suffix">
      <path value="Patient.name.suffix" />
      <max value="0" />
    </element>
    <element id="Patient.name.period">
      <path value="Patient.name.period" />
      <max value="0" />
    </element>
    <element id="Patient.telecom">
      <path value="Patient.telecom" />
      <max value="0" />
    </element>
    <element id="Patient.gender">
      <path value="Patient.gender" />
      <short value="Only male, female or unknown are used" />
      <min value="1" />
      <condition value="genderType" />
      <constraint>
        <key value="genderType" />
        <severity value="error" />
        <human value="gender is only male, female or unknown" />
        <expression value="$this = 'male' or $this='female' or $this='unknown'" />
        <source value="https://www.esante.lu/fhir-spec/StructureDefinition/ServidGetPat" />
      </constraint>
    </element>
    <element id="Patient.birthDate">
      <path value="Patient.birthDate" />
      <example>
        <label value="Example" />
        <valueDate value="1929-11-30" />
      </example>
    </element>
    <element id="Patient.deceased[x]">
      <path value="Patient.deceased[x]" />
      <short value="The death indicator or death time if known" />
      <definition value="If the death time is known, the value will be of type deceasedDateTime. If not, the type will be deceasedBoolean" />
      <min value="1" />
    </element>
    <element id="Patient.address">
      <path value="Patient.address" />
      <max value="2" />
    </element>
    <element id="Patient.address.use">
      <path value="Patient.address.use" />
      <short value="Only home or temp are used" />
      <min value="1" />
      <condition value="addressUse" />
      <constraint>
        <key value="addressUse" />
        <severity value="error" />
        <human value="use is only home or temp" />
        <expression value="$this = 'home' or $this='temp'" />
        <source value="https://www.esante.lu/fhir-spec/StructureDefinition/ServidGetPat" />
      </constraint>
    </element>
    <element id="Patient.address.type">
      <path value="Patient.address.type" />
      <max value="0" />
    </element>
    <element id="Patient.address.text">
      <path value="Patient.address.text" />
      <max value="0" />
    </element>
    <element id="Patient.address.district">
      <path value="Patient.address.district" />
      <max value="0" />
    </element>
    <element id="Patient.address.state">
      <path value="Patient.address.state" />
      <max value="0" />
    </element>
    <element id="Patient.address.period">
      <path value="Patient.address.period" />
      <max value="0" />
    </element>
    <element id="Patient.maritalStatus">
      <path value="Patient.maritalStatus" />
      <max value="0" />
    </element>
    <element id="Patient.multipleBirth[x]">
      <path value="Patient.multipleBirth[x]" />
      <max value="0" />
    </element>
    <element id="Patient.photo">
      <path value="Patient.photo" />
      <max value="0" />
    </element>
    <element id="Patient.contact">
      <path value="Patient.contact" />
      <max value="0" />
    </element>
    <element id="Patient.communication">
      <path value="Patient.communication" />
      <max value="0" />
    </element>
    <element id="Patient.generalPractitioner">
      <path value="Patient.generalPractitioner" />
      <max value="0" />
    </element>
    <element id="Patient.managingOrganization">
      <path value="Patient.managingOrganization" />
      <short value="If present, indicates that this identity is confirmed, meaning provided by the RNPP. In this case, it has a field display with constant value RNPP" />
    </element>
    <element id="Patient.managingOrganization.reference">
      <path value="Patient.managingOrganization.reference" />
      <max value="0" />
    </element>
    <element id="Patient.managingOrganization.type">
      <path value="Patient.managingOrganization.type" />
      <max value="0" />
    </element>
    <element id="Patient.managingOrganization.identifier">
      <path value="Patient.managingOrganization.identifier" />
      <max value="0" />
    </element>
    <element id="Patient.managingOrganization.display">
      <path value="Patient.managingOrganization.display" />
      <min value="1" />
      <fixedString value="RNPP" />
    </element>
    <element id="Patient.link">
      <path value="Patient.link" />
      <short value="A link is present only if the patient is not active and is replaced by another one (duplicates)" />
      <max value="1" />
    </element>
    <element id="Patient.link.other.reference">
      <path value="Patient.link.other.reference" />
      <max value="0" />
    </element>
    <element id="Patient.link.other.type">
      <path value="Patient.link.other.type" />
      <max value="0" />
    </element>
    <element id="Patient.link.other.identifier">
      <path value="Patient.link.other.identifier" />
      <max value="0" />
    </element>
    <element id="Patient.link.other.display">
      <path value="Patient.link.other.display" />
      <short value="The MPI identifier of the patient" />
      <min value="1" />
      <example>
        <label value="Example" />
        <valueString value="urn:oid:1.3.182.2.2.2.0|2400123123" />
      </example>
    </element>
    <element id="Patient.link.type">
      <path value="Patient.link.type" />
      <patternCode value="replaced-by" />
    </element>
  </differential>
</StructureDefinition>