<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="https://fohm.se/nvr/fhir/StructureDefinition/NVRHealthCareUnitLocation" />
  <name value="NVRHealthCareUnitLocation" />
  <status value="draft" />
  <description value="A care unit where a vaccination was performed" />
  <fhirVersion value="5.0.0" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Location" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Location" />
  <derivation value="constraint" />
  <differential>
    <element id="Location.identifier">
      <path value="Location.identifier" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="system" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <max value="1" />
    </element>
    <element id="Location.identifier:hsaId">
      <path value="Location.identifier" />
      <sliceName value="hsaId" />
      <max value="1" />
    </element>
    <element id="Location.identifier:hsaId.use">
      <path value="Location.identifier.use" />
      <max value="0" />
    </element>
    <element id="Location.identifier:hsaId.type">
      <path value="Location.identifier.type" />
      <max value="0" />
    </element>
    <element id="Location.identifier:hsaId.system">
      <path value="Location.identifier.system" />
      <min value="1" />
      <fixedUri value="http://electronichealth.se/identifier/hsa_id" />
    </element>
    <element id="Location.identifier:hsaId.value">
      <path value="Location.identifier.value" />
      <min value="1" />
    </element>
    <element id="Location.identifier:hsaId.period">
      <path value="Location.identifier.period" />
      <max value="0" />
    </element>
    <element id="Location.identifier:hsaId.assigner">
      <path value="Location.identifier.assigner" />
      <max value="0" />
    </element>
    <element id="Location.identifier:schoolUnitCode">
      <path value="Location.identifier" />
      <sliceName value="schoolUnitCode" />
      <short value="8 number school unit code" />
      <max value="1" />
    </element>
    <element id="Location.identifier:schoolUnitCode.use">
      <path value="Location.identifier.use" />
      <max value="0" />
    </element>
    <element id="Location.identifier:schoolUnitCode.type">
      <path value="Location.identifier.type" />
      <max value="0" />
    </element>
    <element id="Location.identifier:schoolUnitCode.system">
      <path value="Location.identifier.system" />
      <min value="1" />
      <fixedUri value="https://www.skolverket.se/skolutveckling/skolenhetsregistret" />
    </element>
    <element id="Location.identifier:schoolUnitCode.value">
      <path value="Location.identifier.value" />
      <min value="1" />
    </element>
    <element id="Location.identifier:schoolUnitCode.period">
      <path value="Location.identifier.period" />
      <max value="0" />
    </element>
    <element id="Location.identifier:schoolUnitCode.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" />
    </element>
    <element id="Location.alias">
      <path value="Location.alias" />
      <max value="0" />
    </element>
    <element id="Location.description">
      <path value="Location.description" />
      <max value="0" />
    </element>
    <element id="Location.mode">
      <path value="Location.mode" />
      <max value="0" />
    </element>
    <element id="Location.type">
      <path value="Location.type" />
      <max value="0" />
    </element>
    <element id="Location.contact">
      <path value="Location.contact" />
      <max value="1" />
    </element>
    <element id="Location.contact.purpose">
      <path value="Location.contact.purpose" />
      <max value="0" />
    </element>
    <element id="Location.contact.name">
      <path value="Location.contact.name" />
      <max value="0" />
    </element>
    <element id="Location.contact.telecom">
      <path value="Location.contact.telecom" />
      <max value="1" />
    </element>
    <element id="Location.contact.telecom.system">
      <path value="Location.contact.telecom.system" />
      <min value="1" />
      <fixedCode value="email" />
    </element>
    <element id="Location.contact.telecom.value">
      <path value="Location.contact.telecom.value" />
      <min value="1" />
    </element>
    <element id="Location.contact.telecom.use">
      <path value="Location.contact.telecom.use" />
      <max value="0" />
    </element>
    <element id="Location.contact.telecom.rank">
      <path value="Location.contact.telecom.rank" />
      <max value="0" />
    </element>
    <element id="Location.contact.telecom.period">
      <path value="Location.contact.telecom.period" />
      <max value="0" />
    </element>
    <element id="Location.contact.address">
      <path value="Location.contact.address" />
      <max value="0" />
    </element>
    <element id="Location.contact.organization">
      <path value="Location.contact.organization" />
      <max value="0" />
    </element>
    <element id="Location.contact.period">
      <path value="Location.contact.period" />
      <max value="0" />
    </element>
    <element id="Location.address.use">
      <path value="Location.address.use" />
      <max value="0" />
    </element>
    <element id="Location.address.type">
      <path value="Location.address.type" />
      <max value="0" />
    </element>
    <element id="Location.address.text">
      <path value="Location.address.text" />
      <max value="0" />
    </element>
    <element id="Location.address.line">
      <path value="Location.address.line" />
      <max value="0" />
    </element>
    <element id="Location.address.city">
      <path value="Location.address.city" />
      <min value="1" />
      <binding>
        <strength value="required" />
        <description value="4 digit municipality code" />
        <valueSet value="http://fohm.se/nvr/fhir/ValueSet/municipality-codes" />
      </binding>
    </element>
    <element id="Location.address.district">
      <path value="Location.address.district" />
      <max value="0" />
    </element>
    <element id="Location.address.state">
      <path value="Location.address.state" />
      <max value="0" />
    </element>
    <element id="Location.address.postalCode">
      <path value="Location.address.postalCode" />
      <max value="0" />
    </element>
    <element id="Location.address.country">
      <path value="Location.address.country" />
      <max value="0" />
    </element>
    <element id="Location.address.period">
      <path value="Location.address.period" />
      <max value="0" />
    </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" />
      <max value="0" />
    </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.hoursOfOperation">
      <path value="Location.hoursOfOperation" />
      <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>