<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="pl-lab-location-intakePoint" />
  <url value="http://hl7.org.pl/fhir/ig/pl-lab/StructureDefinition/pl-lab-location-intakePoint" />
  <name value="PLLabLocationIntakePoint" />
  <title value="Location: Intake Point (PL)" />
  <status value="draft" />
  <description value="Punkt pobrań" />
  <fhirVersion value="5.0.0" />
  <mapping>
    <identity value="pl-lab-intakePoint-to-catalogServiceModel-mapping" />
    <uri value="http://hl7.org.pl/fhir/model/pl-lab-catalogServiceModel" />
    <name value="Mapowanie Punktu pobrań na model usługi katalogowej" />
  </mapping>
  <kind value="resource" />
  <abstract value="false" />
  <type value="Location" />
  <baseDefinition value="http://hl7.org.pl/fhir/ig/pl-lab/StructureDefinition/pl-base-location" />
  <derivation value="constraint" />
  <differential>
    <element id="Location">
      <path value="Location" />
      <mapping>
        <identity value="pl-lab-intakePoint-to-catalogServiceModel-mapping" />
        <map value="PunktPobran" />
      </mapping>
    </element>
    <element id="Location.identifier">
      <path value="Location.identifier" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
      <mapping>
        <identity value="pl-lab-intakePoint-to-catalogServiceModel-mapping" />
        <map value="PunktPobran.identyfikator" />
      </mapping>
    </element>
    <element id="Location.identifier.use">
      <path value="Location.identifier.use" />
      <max value="0" />
    </element>
    <element id="Location.identifier.type">
      <path value="Location.identifier.type" />
      <max value="0" />
    </element>
    <element id="Location.identifier.system">
      <path value="Location.identifier.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Location.identifier.value">
      <path value="Location.identifier.value" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Location.identifier.period">
      <path value="Location.identifier.period" />
      <max value="0" />
    </element>
    <element id="Location.identifier.assigner">
      <path value="Location.identifier.assigner" />
      <max value="0" />
    </element>
    <element id="Location.status">
      <path value="Location.status" />
      <max value="0" />
    </element>
    <element id="Location.operationalStatus">
      <path value="Location.operationalStatus" />
      <max value="0" />
    </element>
    <element id="Location.name">
      <path value="Location.name" />
      <min value="1" />
      <mustSupport value="true" />
      <mapping>
        <identity value="pl-lab-intakePoint-to-catalogServiceModel-mapping" />
        <map value="PunktPobran.nazwa" />
      </mapping>
    </element>
    <element id="Location.description">
      <path value="Location.description" />
      <max value="0" />
    </element>
    <element id="Location.mode">
      <path value="Location.mode" />
      <min value="1" />
      <patternCode value="instance" />
      <mustSupport value="true" />
    </element>
    <element id="Location.type">
      <path value="Location.type" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <valueSet value="http://hl7.org.pl/fhir/ig/pl-lab/ValueSet/pl-lab-intakePointType-VS" />
      </binding>
      <mapping>
        <identity value="pl-lab-intakePoint-to-catalogServiceModel-mapping" />
        <map value="PunktPobran.rodzajPunktuPobran" />
      </mapping>
    </element>
    <element id="Location.type.coding">
      <path value="Location.type.coding" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Location.type.coding.system">
      <path value="Location.type.coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Location.type.coding.version">
      <path value="Location.type.coding.version" />
      <max value="0" />
    </element>
    <element id="Location.type.coding.code">
      <path value="Location.type.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Location.type.coding.display">
      <path value="Location.type.coding.display" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Location.type.coding.userSelected">
      <path value="Location.type.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="Location.type.text">
      <path value="Location.type.text" />
      <max value="0" />
    </element>
    <element id="Location.contact">
      <path value="Location.contact" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Location.contact.telecom">
      <path value="Location.contact.telecom" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="system" />
        </discriminator>
        <description value="Rodzaj danych teleadresowych" />
        <ordered value="false" />
        <rules value="closed" />
      </slicing>
      <mustSupport value="true" />
    </element>
    <element id="Location.contact.telecom:phone">
      <path value="Location.contact.telecom" />
      <sliceName value="phone" />
      <min value="0" />
      <max value="*" />
      <mustSupport value="true" />
      <mapping>
        <identity value="pl-lab-intakePoint-to-catalogServiceModel-mapping" />
        <map value="PunktPobran.telefon" />
      </mapping>
    </element>
    <element id="Location.contact.telecom:phone.system">
      <path value="Location.contact.telecom.system" />
      <min value="1" />
      <patternCode value="phone" />
      <mustSupport value="true" />
    </element>
    <element id="Location.contact.telecom:phone.value">
      <path value="Location.contact.telecom.value" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Location.contact.telecom:phone.use">
      <path value="Location.contact.telecom.use" />
      <max value="0" />
    </element>
    <element id="Location.contact.telecom:phone.rank">
      <path value="Location.contact.telecom.rank" />
      <max value="0" />
    </element>
    <element id="Location.contact.telecom:phone.period">
      <path value="Location.contact.telecom.period" />
      <max value="0" />
    </element>
    <element id="Location.contact.telecom:email">
      <path value="Location.contact.telecom" />
      <sliceName value="email" />
      <min value="0" />
      <max value="*" />
      <mustSupport value="true" />
      <mapping>
        <identity value="pl-lab-intakePoint-to-catalogServiceModel-mapping" />
        <map value="PunktPobran.email" />
      </mapping>
    </element>
    <element id="Location.contact.telecom:email.system">
      <path value="Location.contact.telecom.system" />
      <min value="1" />
      <patternCode value="email" />
      <mustSupport value="true" />
    </element>
    <element id="Location.contact.telecom:email.value">
      <path value="Location.contact.telecom.value" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Location.contact.telecom:email.use">
      <path value="Location.contact.telecom.use" />
      <max value="0" />
    </element>
    <element id="Location.contact.telecom:email.rank">
      <path value="Location.contact.telecom.rank" />
      <max value="0" />
    </element>
    <element id="Location.contact.telecom:email.period">
      <path value="Location.contact.telecom.period" />
      <max value="0" />
    </element>
    <element id="Location.address">
      <path value="Location.address" />
      <mustSupport value="true" />
      <mapping>
        <identity value="pl-lab-intakePoint-to-catalogServiceModel-mapping" />
        <map value="PunktPobran.adres" />
      </mapping>
    </element>
    <element id="Location.form">
      <path value="Location.form" />
      <max value="0" />
    </element>
    <element id="Location.position">
      <path value="Location.position" />
      <max value="0" />
    </element>
    <element id="Location.managingOrganization">
      <path value="Location.managingOrganization" />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org.pl/fhir/ig/pl-lab/StructureDefinition/pl-lab-organization-diagnosticEntity" />
      </type>
      <mustSupport value="true" />
      <mapping>
        <identity value="pl-lab-intakePoint-to-catalogServiceModel-mapping" />
        <map value="PunktPobran.podmiotZarzadzajacy" />
      </mapping>
    </element>
    <element id="Location.partOf">
      <path value="Location.partOf" />
      <max value="0" />
    </element>
    <element id="Location.characteristic">
      <path value="Location.characteristic" />
      <max value="0" />
    </element>
    <element id="Location.virtualService">
      <path value="Location.virtualService" />
      <max value="0" />
    </element>
    <element id="Location.endpoint">
      <path value="Location.endpoint" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>