<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="https://fhir.kbv.de/StructureDefinition/74_PR_DMPD2_SoftwareHersteller" />
  <version value="0.10" />
  <name value="74_PR_DMPD2_SoftwareHersteller" />
  <status value="draft" />
  <experimental value="false" />
  <publisher value="Kassenärztliche Bundesvereinigung" />
  <contact>
    <name value="Kassenärztliche Bundesvereinigung" />
    <telecom>
      <system value="url" />
      <value value="www.kbv.de" />
    </telecom>
  </contact>
  <fhirVersion value="3.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Organization" />
  <baseDefinition value="http://fhir.de/StructureDefinition/organization-de-basis/0.2" />
  <derivation value="constraint" />
  <differential>
    <element id="Organization.id">
      <path value="Organization.id" />
      <min value="1" />
    </element>
    <element id="Organization.meta">
      <path value="Organization.meta" />
      <min value="1" />
    </element>
    <element id="Organization.meta.profile">
      <path value="Organization.meta.profile" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Organization.text">
      <path value="Organization.text" />
      <min value="1" />
    </element>
    <element id="Organization.text.status">
      <path value="Organization.text.status" />
      <fixedCode value="extensions" />
    </element>
    <element id="Organization.extension:betriebsstaetten-hierarchie">
      <path value="Organization.extension" />
      <sliceName value="betriebsstaetten-hierarchie" />
      <max value="0" />
    </element>
    <element id="Organization.identifier">
      <path value="Organization.identifier" />
      <max value="0" />
      <mustSupport value="false" />
    </element>
    <element id="Organization.active">
      <path value="Organization.active" />
      <max value="0" />
    </element>
    <element id="Organization.type">
      <path value="Organization.type" />
      <max value="0" />
    </element>
    <element id="Organization.name">
      <path value="Organization.name" />
      <short value="Name des Softwareherstellers" />
      <definition value="Menschenlesbarer Name des Softwareherstellers, z.B.: &quot;Soundso Software Solutions GmbH&quot;" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Organization.alias">
      <path value="Organization.alias" />
      <max value="0" />
    </element>
    <element id="Organization.telecom">
      <path value="Organization.telecom" />
      <max value="0" />
    </element>
    <element id="Organization.address">
      <path value="Organization.address" />
      <max value="0" />
    </element>
    <element id="Organization.partOf">
      <path value="Organization.partOf" />
      <max value="0" />
    </element>
    <element id="Organization.contact">
      <path value="Organization.contact" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Organization.contact.purpose">
      <path value="Organization.contact.purpose" />
      <definition value="Kontakttyp gemäß KBV-Schlüsseltabelle (OID: 1.2.276.0.76.3.1.1.5.2.3)." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Organization.contact.purpose.coding">
      <path value="Organization.contact.purpose.coding" />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
      <binding>
        <strength value="required" />
        <valueSetUri value="https://fhir.kbv.de/ValueSet/74_VS_DMPD2_Kontakttyp" />
      </binding>
    </element>
    <element id="Organization.contact.purpose.coding.system">
      <path value="Organization.contact.purpose.coding.system" />
      <short value="KBV Kontakttypen" />
      <definition value="Enthält alle Elemente für Angaben zum Kontakttyp gemäß KBV-Schlüsseltabelle (OID: 1.2.276.0.76.3.1.1.5.2.3)." />
      <min value="1" />
      <fixedUri value="https://fhir.kbv.de/CodeSystem/74_CS_SFHIR_KBV_KONTAKTTYP" />
      <mustSupport value="true" />
    </element>
    <element id="Organization.contact.purpose.coding.code">
      <path value="Organization.contact.purpose.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Organization.contact.purpose.coding.userSelected">
      <path value="Organization.contact.purpose.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="Organization.contact.purpose.text">
      <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
        <valueBoolean value="true" />
      </extension>
      <path value="Organization.contact.purpose.text" />
      <max value="0" />
    </element>
    <element id="Organization.contact.name">
      <path value="Organization.contact.name" />
      <mustSupport value="true" />
    </element>
    <element id="Organization.contact.name.use">
      <path value="Organization.contact.name.use" />
      <max value="0" />
    </element>
    <element id="Organization.contact.name.suffix">
      <path value="Organization.contact.name.suffix" />
      <max value="0" />
    </element>
    <element id="Organization.contact.name.period">
      <path value="Organization.contact.name.period" />
      <max value="0" />
    </element>
    <element id="Organization.contact.telecom">
      <path value="Organization.contact.telecom" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="system" />
        </discriminator>
        <rules value="closed" />
      </slicing>
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Organization.contact.telecom:Telefonnummer">
      <path value="Organization.contact.telecom" />
      <sliceName value="Telefonnummer" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Organization.contact.telecom:Telefonnummer.system">
      <path value="Organization.contact.telecom.system" />
      <min value="1" />
      <fixedCode value="phone" />
    </element>
    <element id="Organization.contact.telecom:Telefonnummer.value">
      <path value="Organization.contact.telecom.value" />
      <min value="1" />
    </element>
    <element id="Organization.contact.telecom:Faxnummer">
      <path value="Organization.contact.telecom" />
      <sliceName value="Faxnummer" />
      <max value="1" />
    </element>
    <element id="Organization.contact.telecom:Faxnummer.system">
      <path value="Organization.contact.telecom.system" />
      <min value="1" />
      <fixedCode value="fax" />
    </element>
    <element id="Organization.contact.telecom:Faxnummer.value">
      <path value="Organization.contact.telecom.value" />
      <min value="1" />
    </element>
    <element id="Organization.contact.telecom:Faxnummer.use">
      <path value="Organization.contact.telecom.use" />
      <max value="0" />
    </element>
    <element id="Organization.contact.telecom:Faxnummer.rank">
      <path value="Organization.contact.telecom.rank" />
      <max value="0" />
    </element>
    <element id="Organization.contact.telecom:Faxnummer.period">
      <path value="Organization.contact.telecom.period" />
      <max value="0" />
    </element>
    <element id="Organization.contact.telecom:Emailadresse">
      <path value="Organization.contact.telecom" />
      <sliceName value="Emailadresse" />
      <max value="1" />
    </element>
    <element id="Organization.contact.telecom:Emailadresse.system">
      <path value="Organization.contact.telecom.system" />
      <min value="1" />
      <fixedCode value="email" />
    </element>
    <element id="Organization.contact.telecom:Emailadresse.value">
      <path value="Organization.contact.telecom.value" />
      <min value="1" />
    </element>
    <element id="Organization.contact.telecom:Emailadresse.use">
      <path value="Organization.contact.telecom.use" />
      <max value="0" />
    </element>
    <element id="Organization.contact.telecom:Emailadresse.rank">
      <path value="Organization.contact.telecom.rank" />
      <max value="0" />
    </element>
    <element id="Organization.contact.telecom:Emailadresse.period">
      <path value="Organization.contact.telecom.period" />
      <max value="0" />
    </element>
    <element id="Organization.contact.telecom:Homepage">
      <path value="Organization.contact.telecom" />
      <sliceName value="Homepage" />
      <max value="1" />
    </element>
    <element id="Organization.contact.telecom:Homepage.system">
      <path value="Organization.contact.telecom.system" />
      <min value="1" />
      <fixedCode value="url" />
    </element>
    <element id="Organization.contact.telecom:Homepage.value">
      <path value="Organization.contact.telecom.value" />
      <min value="1" />
    </element>
    <element id="Organization.contact.telecom:Homepage.use">
      <path value="Organization.contact.telecom.use" />
      <max value="0" />
    </element>
    <element id="Organization.contact.telecom:Homepage.rank">
      <path value="Organization.contact.telecom.rank" />
      <max value="0" />
    </element>
    <element id="Organization.contact.telecom:Homepage.period">
      <path value="Organization.contact.telecom.period" />
      <max value="0" />
    </element>
    <element id="Organization.contact.telecom:FTPServer">
      <path value="Organization.contact.telecom" />
      <sliceName value="FTPServer" />
      <max value="1" />
    </element>
    <element id="Organization.contact.telecom:FTPServer.system">
      <path value="Organization.contact.telecom.system" />
      <min value="1" />
      <fixedCode value="other" />
    </element>
    <element id="Organization.contact.telecom:FTPServer.value">
      <path value="Organization.contact.telecom.value" />
      <min value="1" />
    </element>
    <element id="Organization.contact.telecom:FTPServer.use">
      <path value="Organization.contact.telecom.use" />
      <max value="0" />
    </element>
    <element id="Organization.contact.telecom:FTPServer.rank">
      <path value="Organization.contact.telecom.rank" />
      <max value="0" />
    </element>
    <element id="Organization.contact.telecom:FTPServer.period">
      <path value="Organization.contact.telecom.period" />
      <max value="0" />
    </element>
    <element id="Organization.contact.address">
      <path value="Organization.contact.address" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Organization.contact.address.use">
      <path value="Organization.contact.address.use" />
      <max value="0" />
    </element>
    <element id="Organization.contact.address.type">
      <path value="Organization.contact.address.type" />
      <max value="0" />
    </element>
    <element id="Organization.contact.address.line">
      <path value="Organization.contact.address.line" />
      <max value="3" />
      <mustSupport value="true" />
    </element>
    <element id="Organization.contact.address.city">
      <path value="Organization.contact.address.city" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Organization.contact.address.district">
      <path value="Organization.contact.address.district" />
      <max value="0" />
    </element>
    <element id="Organization.contact.address.state">
      <path value="Organization.contact.address.state" />
      <max value="0" />
    </element>
    <element id="Organization.contact.address.postalCode">
      <path value="Organization.contact.address.postalCode" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Organization.contact.address.country">
      <path value="Organization.contact.address.country" />
      <mustSupport value="true" />
    </element>
    <element id="Organization.contact.address.period">
      <path value="Organization.contact.address.period" />
      <max value="0" />
    </element>
    <element id="Organization.endpoint">
      <path value="Organization.endpoint" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>