{
  "resourceType": "StructureDefinition",
  "id": "KBV-PR-FOR-Organization",
  "url": "https://fhir.kbv.de/StructureDefinition/KBV_PR_FOR_Organization",
  "version": "1.1.0_cc",
  "name": "KBV_PR_FOR_Organization",
  "status": "draft",
  "date": "2022-05-13",
  "publisher": "Kassenärztliche Bundesvereinigung",
  "fhirVersion": "4.0.1",
  "mapping": [
    {
      "identity": "v2",
      "uri": "http://hl7.org/v2",
      "name": "HL7 v2 Mapping"
    },
    {
      "identity": "rim",
      "uri": "http://hl7.org/v3",
      "name": "RIM Mapping"
    },
    {
      "identity": "servd",
      "uri": "http://www.omg.org/spec/ServD/1.0/",
      "name": "ServD"
    },
    {
      "identity": "w5",
      "uri": "http://hl7.org/fhir/fivews",
      "name": "FiveWs Pattern Mapping"
    }
  ],
  "kind": "resource",
  "abstract": false,
  "type": "Organization",
  "baseDefinition": "https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization|1.3.0",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Organization",
        "path": "Organization",
        "constraint": [
          {
            "key": "-for-adresszeilenAufbauOrganizationRessource-1",
            "severity": "error",
            "human": "Falls die erste Adresszeile einen Straßennamen und eine Hausnummer besitzt, sind diese zusammen im Element 'line' mit einem Leerzeichen getrennt anzugeben.",
            "expression": "(address.line[0].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber').exists() and address.line[0].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetName').exists()) implies address.line[0].toString() =  address.line[0].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetName').value + ' ' + address.line[0].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber').value",
            "source": "https://fhir.kbv.de/StructureDefinition/KBV_PR_FOR_Organization"
          },
          {
            "key": "-for-adresszeilenAufbauOrganizationRessource-2",
            "severity": "error",
            "human": "Falls die zweite  Adresszeile einen Adresszusatz besitzt, ist dieser im Element 'line' anzugeben.",
            "expression": "(address.line[1].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-additionalLocator').exists() implies address.line[1].toString() = address.line[1].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-additionalLocator').value)",
            "source": "https://fhir.kbv.de/StructureDefinition/KBV_PR_FOR_Organization"
          },
          {
            "key": "-for-adresszeilenAufbauOrganizationRessource-3",
            "severity": "error",
            "human": "Falls die erste Adresszeile einen Straßennamen besitzt, muss sie auch eine Hausnummer enthalten.",
            "expression": "address.line[0].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetName').exists() implies address.line[0].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber').exists()",
            "source": "https://fhir.kbv.de/StructureDefinition/KBV_PR_FOR_Organization"
          },
          {
            "key": "-for-adresszeilenAufbauOrganizationRessource-4",
            "severity": "error",
            "human": "Falls die erste Adresszeile eine Hausnummer besitzt, muss sie auch einen Straßennamen enthalten.",
            "expression": "address.line[0].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber').exists() implies address.line[0].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetName').exists()",
            "source": "https://fhir.kbv.de/StructureDefinition/KBV_PR_FOR_Organization"
          },
          {
            "key": "-for-adresszeilenAufbauOrganizationRessource-5",
            "severity": "error",
            "human": "Die erste Adresszeile darf keinen Adresszusatz enthalten.",
            "expression": "address.line[0].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-additionalLocator').exists().not()",
            "source": "https://fhir.kbv.de/StructureDefinition/KBV_PR_FOR_Organization"
          },
          {
            "key": "-for-adresszeilenAufbauOrganizationRessource-6",
            "severity": "error",
            "human": "Falls eine zweite Adresszeile existiert, darf sie weder einen Straßennamen oder eine Hausnummer enthalten und muss einen Adresszusatz enthalten.",
            "expression": "address.line[1].exists() implies address.line[1].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber').exists().not() and address.line[1].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetName').exists().not() and address.line[1].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-additionalLocator').exists()",
            "source": "https://fhir.kbv.de/StructureDefinition/KBV_PR_FOR_Organization"
          },
          {
            "key": "-for-adresszeilenAufbauOrganizationRessource-7",
            "severity": "error",
            "human": "Falls eine zweite Adresszeile existiert, muss die erste Adresszeile einen Straßennamen und eine Hausnummer enthalten und darf keinen Adresszusatz besitzen.",
            "expression": "address.line[1].exists() implies address.line[0].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber').exists() and address.line[0].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetName').exists() and address.line[0].extension('http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-additionalLocator').exists().not()",
            "source": "https://fhir.kbv.de/StructureDefinition/KBV_PR_FOR_Organization"
          }
        ]
      },
      {
        "id": "Organization.id",
        "path": "Organization.id",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Organization.meta",
        "path": "Organization.meta",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Organization.meta.versionId",
        "path": "Organization.meta.versionId",
        "max": "0"
      },
      {
        "id": "Organization.meta.lastUpdated",
        "path": "Organization.meta.lastUpdated",
        "max": "0"
      },
      {
        "id": "Organization.meta.source",
        "path": "Organization.meta.source",
        "max": "0"
      },
      {
        "id": "Organization.meta.profile",
        "path": "Organization.meta.profile",
        "min": 1,
        "max": "1",
        "fixedCanonical": "https://fhir.kbv.de/StructureDefinition/KBV_PR_FOR_Organization|1.1.0_cc",
        "mustSupport": true
      },
      {
        "id": "Organization.meta.security",
        "path": "Organization.meta.security",
        "max": "0"
      },
      {
        "id": "Organization.meta.tag",
        "path": "Organization.meta.tag",
        "max": "0"
      },
      {
        "id": "Organization.implicitRules",
        "path": "Organization.implicitRules",
        "max": "0"
      },
      {
        "id": "Organization.language",
        "path": "Organization.language",
        "max": "0"
      },
      {
        "id": "Organization.text",
        "path": "Organization.text",
        "max": "0"
      },
      {
        "id": "Organization.contained",
        "path": "Organization.contained",
        "max": "0"
      },
      {
        "id": "Organization.extension",
        "path": "Organization.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "closed"
        },
        "min": 0
      },
      {
        "id": "Organization.extension:ergaenzende_Angaben",
        "path": "Organization.extension",
        "sliceName": "ergaenzende_Angaben",
        "min": 0,
        "max": "0"
      },
      {
        "id": "Organization.identifier",
        "path": "Organization.identifier",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Institutionskennzeichen",
        "path": "Organization.identifier",
        "sliceName": "Institutionskennzeichen",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Institutionskennzeichen.type",
        "path": "Organization.identifier.type",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Institutionskennzeichen.type.coding",
        "path": "Organization.identifier.type.coding",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Institutionskennzeichen.type.coding.system",
        "path": "Organization.identifier.type.coding.system",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Institutionskennzeichen.type.coding.version",
        "path": "Organization.identifier.type.coding.version",
        "max": "0"
      },
      {
        "id": "Organization.identifier:Institutionskennzeichen.type.coding.code",
        "path": "Organization.identifier.type.coding.code",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Institutionskennzeichen.type.coding.display",
        "path": "Organization.identifier.type.coding.display",
        "max": "0",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Institutionskennzeichen.type.coding.userSelected",
        "path": "Organization.identifier.type.coding.userSelected",
        "max": "0"
      },
      {
        "id": "Organization.identifier:Institutionskennzeichen.type.text",
        "path": "Organization.identifier.type.text",
        "max": "0"
      },
      {
        "id": "Organization.identifier:Institutionskennzeichen.system",
        "path": "Organization.identifier.system",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Institutionskennzeichen.value",
        "path": "Organization.identifier.value",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Institutionskennzeichen.period",
        "path": "Organization.identifier.period",
        "max": "0"
      },
      {
        "id": "Organization.identifier:Institutionskennzeichen.assigner",
        "path": "Organization.identifier.assigner",
        "max": "0"
      },
      {
        "id": "Organization.identifier:Betriebsstaettennummer",
        "path": "Organization.identifier",
        "sliceName": "Betriebsstaettennummer",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Betriebsstaettennummer.type",
        "path": "Organization.identifier.type",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Betriebsstaettennummer.type.coding",
        "path": "Organization.identifier.type.coding",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Betriebsstaettennummer.type.coding.system",
        "path": "Organization.identifier.type.coding.system",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Betriebsstaettennummer.type.coding.version",
        "path": "Organization.identifier.type.coding.version",
        "max": "0"
      },
      {
        "id": "Organization.identifier:Betriebsstaettennummer.type.coding.code",
        "path": "Organization.identifier.type.coding.code",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Betriebsstaettennummer.type.coding.display",
        "path": "Organization.identifier.type.coding.display",
        "max": "0",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Betriebsstaettennummer.type.coding.userSelected",
        "path": "Organization.identifier.type.coding.userSelected",
        "max": "0"
      },
      {
        "id": "Organization.identifier:Betriebsstaettennummer.type.text",
        "path": "Organization.identifier.type.text",
        "max": "0"
      },
      {
        "id": "Organization.identifier:Betriebsstaettennummer.system",
        "path": "Organization.identifier.system",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Betriebsstaettennummer.value",
        "path": "Organization.identifier.value",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:Betriebsstaettennummer.period",
        "path": "Organization.identifier.period",
        "max": "0"
      },
      {
        "id": "Organization.identifier:Betriebsstaettennummer.assigner",
        "path": "Organization.identifier.assigner",
        "max": "0"
      },
      {
        "id": "Organization.identifier:VKNR",
        "path": "Organization.identifier",
        "sliceName": "VKNR",
        "max": "0"
      },
      {
        "id": "Organization.identifier:KZV-Abrechnungsnummer",
        "path": "Organization.identifier",
        "sliceName": "KZV-Abrechnungsnummer",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:KZV-Abrechnungsnummer.type",
        "path": "Organization.identifier.type",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:KZV-Abrechnungsnummer.type.coding",
        "path": "Organization.identifier.type.coding",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:KZV-Abrechnungsnummer.type.coding.system",
        "path": "Organization.identifier.type.coding.system",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:KZV-Abrechnungsnummer.type.coding.version",
        "path": "Organization.identifier.type.coding.version",
        "max": "0"
      },
      {
        "id": "Organization.identifier:KZV-Abrechnungsnummer.type.coding.code",
        "path": "Organization.identifier.type.coding.code",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:KZV-Abrechnungsnummer.type.coding.display",
        "path": "Organization.identifier.type.coding.display",
        "max": "0",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:KZV-Abrechnungsnummer.type.coding.userSelected",
        "path": "Organization.identifier.type.coding.userSelected",
        "max": "0"
      },
      {
        "id": "Organization.identifier:KZV-Abrechnungsnummer.type.text",
        "path": "Organization.identifier.type.text",
        "max": "0"
      },
      {
        "id": "Organization.identifier:KZV-Abrechnungsnummer.system",
        "path": "Organization.identifier.system",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:KZV-Abrechnungsnummer.value",
        "path": "Organization.identifier.value",
        "mustSupport": true
      },
      {
        "id": "Organization.identifier:KZV-Abrechnungsnummer.period",
        "path": "Organization.identifier.period",
        "max": "0"
      },
      {
        "id": "Organization.identifier:KZV-Abrechnungsnummer.assigner",
        "path": "Organization.identifier.assigner",
        "max": "0"
      },
      {
        "id": "Organization.identifier:Telematik-ID",
        "path": "Organization.identifier",
        "sliceName": "Telematik-ID",
        "max": "0"
      },
      {
        "id": "Organization.active",
        "path": "Organization.active",
        "max": "0"
      },
      {
        "id": "Organization.type",
        "path": "Organization.type",
        "max": "0"
      },
      {
        "id": "Organization.name",
        "path": "Organization.name",
        "maxLength": 60,
        "mustSupport": true
      },
      {
        "id": "Organization.alias",
        "path": "Organization.alias",
        "max": "0"
      },
      {
        "id": "Organization.telecom",
        "path": "Organization.telecom",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "system"
            }
          ],
          "rules": "closed"
        },
        "min": 1,
        "max": "3",
        "mustSupport": true
      },
      {
        "id": "Organization.telecom:telefon",
        "path": "Organization.telecom",
        "sliceName": "telefon",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Organization.telecom:telefon.system",
        "path": "Organization.telecom.system",
        "fixedCode": "phone",
        "mustSupport": true
      },
      {
        "id": "Organization.telecom:telefon.value",
        "path": "Organization.telecom.value",
        "maxLength": 30,
        "mustSupport": true
      },
      {
        "id": "Organization.telecom:telefon.use",
        "path": "Organization.telecom.use",
        "max": "0"
      },
      {
        "id": "Organization.telecom:telefon.rank",
        "path": "Organization.telecom.rank",
        "max": "0"
      },
      {
        "id": "Organization.telecom:telefon.period",
        "path": "Organization.telecom.period",
        "max": "0"
      },
      {
        "id": "Organization.telecom:fax",
        "path": "Organization.telecom",
        "sliceName": "fax",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Organization.telecom:fax.system",
        "path": "Organization.telecom.system",
        "fixedCode": "fax",
        "mustSupport": true
      },
      {
        "id": "Organization.telecom:fax.value",
        "path": "Organization.telecom.value",
        "maxLength": 30,
        "mustSupport": true
      },
      {
        "id": "Organization.telecom:fax.use",
        "path": "Organization.telecom.use",
        "max": "0"
      },
      {
        "id": "Organization.telecom:fax.rank",
        "path": "Organization.telecom.rank",
        "max": "0"
      },
      {
        "id": "Organization.telecom:fax.period",
        "path": "Organization.telecom.period",
        "max": "0"
      },
      {
        "id": "Organization.telecom:eMail",
        "path": "Organization.telecom",
        "sliceName": "eMail",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Organization.telecom:eMail.system",
        "path": "Organization.telecom.system",
        "fixedCode": "email",
        "mustSupport": true
      },
      {
        "id": "Organization.telecom:eMail.value",
        "path": "Organization.telecom.value",
        "maxLength": 60,
        "mustSupport": true
      },
      {
        "id": "Organization.telecom:eMail.use",
        "path": "Organization.telecom.use",
        "max": "0"
      },
      {
        "id": "Organization.telecom:eMail.rank",
        "path": "Organization.telecom.rank",
        "max": "0"
      },
      {
        "id": "Organization.telecom:eMail.period",
        "path": "Organization.telecom.period",
        "max": "0"
      },
      {
        "id": "Organization.address",
        "path": "Organization.address",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift",
        "path": "Organization.address",
        "sliceName": "Strassenanschrift",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.extension",
        "path": "Organization.address.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "closed"
        },
        "min": 0
      },
      {
        "id": "Organization.address:Strassenanschrift.extension:Stadtteil",
        "path": "Organization.address.extension",
        "sliceName": "Stadtteil",
        "min": 0,
        "max": "0"
      },
      {
        "id": "Organization.address:Strassenanschrift.use",
        "path": "Organization.address.use",
        "max": "0"
      },
      {
        "id": "Organization.address:Strassenanschrift.type",
        "path": "Organization.address.type",
        "fixedCode": "both",
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.text",
        "path": "Organization.address.text",
        "max": "0"
      },
      {
        "id": "Organization.address:Strassenanschrift.line",
        "path": "Organization.address.line",
        "definition": "Diese Komponente kann Straßennamen, Hausnummer, Appartmentnummer, Postfach, c/o sowie weitere Zustellungshinweise enthalten. Die Informationen können in mehrere line-Komponenten aufgeteilt werden.\r\nBei Verwendung der Extensions, um Straße, Hausnnummer und Postleitzahl strukturiert zu übermitteln, müssen diese Informationen stets vollständig auch in der line-Komponente, die sie erweitern, enthalten sein, um es Systemen, die diese Extensions nicht verwenden zu ermöglichen, auf diese Informationen zugreifen zu können. Es wird empfohlen, dass die erste Zeile für Straße und Hausnummer und die zweite Zeile für den Zusatz verwendet wird.",
        "min": 1,
        "max": "2",
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.line.extension",
        "path": "Organization.address.line.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "closed"
        },
        "min": 0
      },
      {
        "id": "Organization.address:Strassenanschrift.line.extension:Strasse",
        "path": "Organization.address.line.extension",
        "sliceName": "Strasse",
        "min": 0,
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.line.extension:Strasse.value[x]",
        "path": "Organization.address.line.extension.value[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "rules": "closed"
        },
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.line.extension:Strasse.value[x]:valueString",
        "path": "Organization.address.line.extension.value[x]",
        "sliceName": "valueString",
        "maxLength": 46,
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.line.extension:Hausnummer",
        "path": "Organization.address.line.extension",
        "sliceName": "Hausnummer",
        "min": 0,
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.line.extension:Hausnummer.value[x]",
        "path": "Organization.address.line.extension.value[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "rules": "closed"
        },
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.line.extension:Hausnummer.value[x]:valueString",
        "path": "Organization.address.line.extension.value[x]",
        "sliceName": "valueString",
        "maxLength": 9,
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.line.extension:Adresszusatz",
        "path": "Organization.address.line.extension",
        "sliceName": "Adresszusatz",
        "min": 0,
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.line.extension:Adresszusatz.value[x]",
        "path": "Organization.address.line.extension.value[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "rules": "closed"
        },
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.line.extension:Adresszusatz.value[x]:valueString",
        "path": "Organization.address.line.extension.value[x]",
        "sliceName": "valueString",
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.city",
        "path": "Organization.address.city",
        "min": 1,
        "maxLength": 40,
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.state",
        "path": "Organization.address.state",
        "max": "0"
      },
      {
        "id": "Organization.address:Strassenanschrift.postalCode",
        "path": "Organization.address.postalCode",
        "maxLength": 10,
        "mustSupport": true
      },
      {
        "id": "Organization.address:Strassenanschrift.country",
        "path": "Organization.address.country",
        "mustSupport": true,
        "binding": {
          "strength": "required"
        }
      },
      {
        "id": "Organization.address:Strassenanschrift.period",
        "path": "Organization.address.period",
        "max": "0"
      },
      {
        "id": "Organization.address:Postfach",
        "path": "Organization.address",
        "sliceName": "Postfach",
        "max": "0"
      },
      {
        "id": "Organization.partOf",
        "path": "Organization.partOf",
        "max": "0"
      },
      {
        "id": "Organization.contact",
        "path": "Organization.contact",
        "max": "0"
      },
      {
        "id": "Organization.endpoint",
        "path": "Organization.endpoint",
        "max": "0"
      }
    ]
  }
}