PackagesCanonicalsLogsProblems
    Packages
    rs/de.gematik.fhir.directory@0.13.0
    https://gematik.de/fhir/directory/StructureDefinition/HealthcareServiceDirectory
description: Defines the data structure for medical, regulatory and technical\norganisations specific for german Healthcare and Telematics Infrastructure.
package_name: rs/de.gematik.fhir.directory
derivation: constraint
name: HealthcareServiceDirectory
type: HealthcareService
elements:
  coverageArea:
    mustSupport: true
    index: 21
    extensions:
      serviceCoverageArea: {url: 'https://gematik.de/fhir/directory/StructureDefinition/ServiceCoverageArea', min: 0, max: 1, type: Extension, mustSupport: true, index: 23}
      serviceCoveragePostalCode: {url: 'https://gematik.de/fhir/directory/StructureDefinition/ServiceCoveragePostalCode', min: 0, type: Extension, mustSupport: true, index: 24}
    elements:
      extension:
        mustSupport: true
        index: 22
        slicing:
          slices:
            serviceCoverageArea:
              match: {}
              schema: {type: Extension, mustSupport: true, url: 'https://gematik.de/fhir/directory/StructureDefinition/ServiceCoverageArea', index: 23}
              min: 0
              max: 1
            serviceCoveragePostalCode:
              match: {}
              schema: {type: Extension, mustSupport: true, url: 'https://gematik.de/fhir/directory/StructureDefinition/ServiceCoveragePostalCode', index: 24}
              min: 0
  category:
    binding: {strength: required, valueSet: 'https://gematik.de/fhir/directory/ValueSet/healthcare-service-category-codes'}
    mustSupport: true
    index: 9
    elements:
      coding:
        constraint:
          CodingSytemCodeInv: {human: System and Code SHOULD be present, source: 'https://gematik.de/fhir/directory/StructureDefinition/HealthcareServiceDirectory', severity: warning, expression: system.exists() and code.exists()}
        index: 10
  availableTime:
    constraint:
      VZD-Service-Opening-TimeInv-1: {human: 'If the specialOpeningTimes extension is set, daysOfWeek, availableStartTime, and availableEndTime must not be set.', source: 'https://gematik.de/fhir/directory/StructureDefinition/HealthcareServiceDirectory', severity: error, expression: 'extension(''https://gematik.de/fhir/directory/StructureDefinition/SpecialOpeningTimesEX'').exists() implies (daysOfWeek.empty() and availableStartTime.empty() and availableEndTime.empty())'}
      VZD-Service-Opening-TimeInv-2: {human: 'If the specialOpeningTimes extension is not set, daysOfWeek, availableStartTime, and availableEndTime all must be set.', source: 'https://gematik.de/fhir/directory/StructureDefinition/HealthcareServiceDirectory', severity: error, expression: 'extension(''https://gematik.de/fhir/directory/StructureDefinition/SpecialOpeningTimesEX'').empty() implies (daysOfWeek.exists() and availableStartTime.exists() and availableEndTime.exists())'}
    mustSupport: true
    index: 33
    extensions:
      specialOpeningTimes: {url: 'https://gematik.de/fhir/directory/StructureDefinition/SpecialOpeningTimesEX', min: 0, max: 1, type: Extension, mustSupport: true, index: 34}
    elements:
      extension:
        type: Extension
        mustSupport: true
        url: https://gematik.de/fhir/directory/StructureDefinition/SpecialOpeningTimesEX
        index: 34
        slicing:
          slices:
            specialOpeningTimes:
              match: {}
              schema: {type: Extension, mustSupport: true, url: 'https://gematik.de/fhir/directory/StructureDefinition/SpecialOpeningTimesEX', index: 34}
              min: 0
              max: 1
      daysOfWeek: {mustSupport: true, index: 35}
      allDay: {index: 36}
      availableStartTime: {mustSupport: true, index: 37}
      availableEndTime: {mustSupport: true, index: 38}
  meta:
    elements:
      tag:
        constraint:
          CodingSytemCodeInv: {human: System and Code SHOULD be present, source: 'https://gematik.de/fhir/directory/StructureDefinition/HealthcareServiceDirectory', severity: warning, expression: system.exists() and code.exists()}
        mustSupport: true
        index: 1
        slicing:
          rules: open
          discriminator:
          - {path: system, type: pattern}
          min: 1
          slices:
            Origin:
              match: {system: 'https://gematik.de/fhir/directory/CodeSystem/Origin'}
              schema:
                binding: {strength: required, valueSet: 'https://gematik.de/fhir/directory/ValueSet/OriginVS'}
                mustSupport: true
                _required: true
                index: 2
                elements:
                  system:
                    pattern: {type: uri, value: 'https://gematik.de/fhir/directory/CodeSystem/Origin'}
                    type: uri
                    index: 3
                required: [system]
    required: [tag]
  specialty:
    binding: {strength: required, valueSet: 'https://gematik.de/fhir/directory/ValueSet/HealthcareSpecialtyTypeVS'}
    mustSupport: true
    index: 13
    elements:
      coding:
        constraint:
          CodingSytemCodeInv: {human: System and Code SHOULD be present, source: 'https://gematik.de/fhir/directory/StructureDefinition/HealthcareServiceDirectory', severity: warning, expression: system.exists() and code.exists()}
        index: 14
  name: {mustSupport: true, index: 16}
  notAvailable:
    mustSupport: true
    index: 39
    elements:
      description: {mustSupport: true, index: 40}
      during: {mustSupport: true, index: 41}
  providedBy: {mustSupport: true, index: 8}
  type:
    binding: {strength: required, valueSet: 'https://gematik.de/fhir/directory/ValueSet/HealthcareServiceTypeVS'}
    mustSupport: true
    index: 11
    elements:
      coding:
        constraint:
          CodingSytemCodeInv: {human: System and Code SHOULD be present, source: 'https://gematik.de/fhir/directory/StructureDefinition/HealthcareServiceDirectory', severity: warning, expression: system.exists() and code.exists()}
        index: 12
  characteristic:
    short: Physical Features & Technical Services
    mustSupport: true
    index: 25
    elements:
      coding:
        constraint:
          CodingSytemCodeInv: {human: System and Code SHOULD be present, source: 'https://gematik.de/fhir/directory/StructureDefinition/HealthcareServiceDirectory', severity: warning, expression: system.exists() and code.exists()}
        index: 26
    slicing:
      rules: open
      discriminator:
      - {path: $this, type: pattern}
      min: null
      slices:
        technicalCharacteristic:
          match: {}
          schema:
            short: Technical Services
            binding: {strength: required, valueSet: 'https://gematik.de/fhir/directory/ValueSet/healthcareservice-technical-characteristic-vs'}
            mustSupport: true
            array: true
            index: 27
          min: 0
        physicalFeatures:
          match: {}
          schema:
            short: Physical Features
            binding: {strength: required, valueSet: 'https://gematik.de/fhir/directory/ValueSet/PhysicalFeaturesHealthCareServiceVS'}
            mustSupport: true
            array: true
            index: 28
            extensions:
              additionalNote: {url: 'https://gematik.de/fhir/directory/StructureDefinition/PhysicalFeaturesAdditionalNoteEX', min: 0, max: 1, type: Extension, mustSupport: true, index: 29}
            elements:
              extension:
                type: Extension
                mustSupport: true
                url: https://gematik.de/fhir/directory/StructureDefinition/PhysicalFeaturesAdditionalNoteEX
                index: 29
                slicing:
                  slices:
                    additionalNote:
                      match: {}
                      schema: {type: Extension, mustSupport: true, url: 'https://gematik.de/fhir/directory/StructureDefinition/PhysicalFeaturesAdditionalNoteEX', index: 29}
                      min: 0
                      max: 1
  extension:
    type: Extension
    mustSupport: true
    url: https://gematik.de/fhir/directory/StructureDefinition/holder-id-ex
    index: 4
    slicing:
      slices:
        holderId:
          match: {}
          schema: {type: Extension, mustSupport: true, url: 'https://gematik.de/fhir/directory/StructureDefinition/holder-id-ex', index: 4}
          min: 0
        ownerTelematikId:
          match: {}
          schema: {type: Extension, mustSupport: true, url: 'https://gematik.de/fhir/directory/StructureDefinition/OwnerTelematikIdEx', index: 5}
          min: 0
  communication:
    mustSupport: true
    index: 30
    elements:
      coding:
        constraint:
          CodingSytemCodeInv: {human: System and Code SHOULD be present, source: 'https://gematik.de/fhir/directory/StructureDefinition/HealthcareServiceDirectory', severity: warning, expression: system.exists() and code.exists()}
        index: 31
  id: {mustSupport: true, index: 0}
  identifier:
    mustSupport: true
    index: 6
    slicing:
      rules: open
      discriminator:
      - {path: system, type: value}
      min: null
      slices:
        TelematikID:
          match: {system: null}
          schema: {type: Identifier, mustSupport: true, index: 7}
          min: 0
          max: 1
  availabilityExceptions: {mustSupport: true, index: 42}
  appointmentRequired: {mustSupport: true, index: 32}
  telecom:
    mustSupport: true
    index: 17
    elements:
      system: {mustSupport: true, index: 18}
      value: {mustSupport: true, index: 19}
      use: {mustSupport: true, index: 20}
  location: {mustSupport: true, index: 15}
  endpoint: {mustSupport: true, index: 43}
package_version: 0.13.0
extensions:
  holderId: {url: 'https://gematik.de/fhir/directory/StructureDefinition/holder-id-ex', min: 0, type: Extension, mustSupport: true, index: 4}
  ownerTelematikId: {url: 'https://gematik.de/fhir/directory/StructureDefinition/OwnerTelematikIdEx', min: 0, type: Extension, mustSupport: true, index: 5}
class: profile
kind: resource
url: https://gematik.de/fhir/directory/StructureDefinition/HealthcareServiceDirectory
base: http://hl7.org/fhir/StructureDefinition/HealthcareService
version: 0.13.0
required: [providedBy]