{
"description": "Defines the data structure for medical, regulatory and technical\\norganisations specific for german Healthcare and Telematics Infrastructure.",
"_filename": "StructureDefinition-HealthcareServiceDirectory.json",
"package_name": "de.gematik.fhir.directory",
"date": "2024-10-29",
"derivation": "constraint",
"publisher": "gematik GmbH",
"fhirVersion": "4.0.1",
"name": "HealthcareServiceDirectory",
"abstract": false,
"type": "HealthcareService",
"experimental": "false",
"resourceType": "StructureDefinition",
"title": "HealthcareService in gematik Directory",
"package_version": "0.11.19",
"status": "active",
"id": "d0d41c5e-7135-41c2-b439-e6071ca7ba26",
"kind": "resource",
"url": "https://gematik.de/fhir/directory/StructureDefinition/HealthcareServiceDirectory",
"version": "0.11.19",
"differential": {
"element": [ {
"id": "HealthcareService.id",
"path": "HealthcareService.id",
"mustSupport": true
}, {
"id": "HealthcareService.meta.tag",
"min": 1,
"path": "HealthcareService.meta.tag",
"slicing": {
"rules": "open",
"discriminator": [ {
"path": "system",
"type": "pattern"
} ]
},
"mustSupport": true
}, {
"id": "HealthcareService.meta.tag:Origin",
"max": "1",
"min": 1,
"path": "HealthcareService.meta.tag",
"binding": {
"strength": "required",
"valueSet": "https://gematik.de/fhir/directory/ValueSet/OriginVS"
},
"sliceName": "Origin",
"mustSupport": true
}, {
"id": "HealthcareService.meta.tag:Origin.system",
"min": 1,
"path": "HealthcareService.meta.tag.system",
"patternUri": "https://gematik.de/fhir/directory/CodeSystem/Origin"
}, {
"id": "HealthcareService.identifier",
"path": "HealthcareService.identifier",
"slicing": {
"rules": "open",
"discriminator": [ {
"path": "system",
"type": "value"
} ]
},
"mustSupport": true
}, {
"id": "HealthcareService.identifier:TelematikID",
"max": "1",
"min": 0,
"path": "HealthcareService.identifier",
"type": [ {
"code": "Identifier",
"profile": [ "http://fhir.de/StructureDefinition/identifier-telematik-id" ]
} ],
"sliceName": "TelematikID",
"mustSupport": true
}, {
"id": "HealthcareService.providedBy",
"min": 1,
"path": "HealthcareService.providedBy",
"mustSupport": true
}, {
"id": "HealthcareService.category",
"path": "HealthcareService.category",
"binding": {
"strength": "required",
"valueSet": "http://ihe-d.de/ValueSets/IHEXDShealthcareFacilityTypeCodePatientRelatedHealthcare"
},
"mustSupport": true
}, {
"id": "HealthcareService.type",
"path": "HealthcareService.type",
"binding": {
"strength": "extensible",
"valueSet": "https://gematik.de/fhir/directory/ValueSet/HealthcareServiceTypeVS"
},
"mustSupport": true
}, {
"id": "HealthcareService.specialty",
"path": "HealthcareService.specialty",
"binding": {
"strength": "required",
"valueSet": "https://gematik.de/fhir/directory/ValueSet/HealthcareSpecialtyTypeVS"
},
"mustSupport": true
}, {
"id": "HealthcareService.location",
"max": "1",
"path": "HealthcareService.location",
"mustSupport": true
}, {
"id": "HealthcareService.name",
"path": "HealthcareService.name",
"mustSupport": true
}, {
"id": "HealthcareService.telecom",
"path": "HealthcareService.telecom",
"mustSupport": true
}, {
"id": "HealthcareService.telecom.system",
"path": "HealthcareService.telecom.system",
"mustSupport": true
}, {
"id": "HealthcareService.telecom.value",
"path": "HealthcareService.telecom.value",
"mustSupport": true
}, {
"id": "HealthcareService.telecom.use",
"path": "HealthcareService.telecom.use",
"mustSupport": true
}, {
"id": "HealthcareService.coverageArea",
"path": "HealthcareService.coverageArea",
"mustSupport": true
}, {
"id": "HealthcareService.coverageArea.extension",
"path": "HealthcareService.coverageArea.extension",
"mustSupport": true
}, {
"id": "HealthcareService.coverageArea.extension:serviceCoverageArea",
"max": "1",
"min": 0,
"path": "HealthcareService.coverageArea.extension",
"type": [ {
"code": "Extension",
"profile": [ "https://gematik.de/fhir/directory/StructureDefinition/ServiceCoverageArea" ]
} ],
"sliceName": "serviceCoverageArea",
"mustSupport": true
}, {
"id": "HealthcareService.coverageArea.extension:serviceCoveragePostalCode",
"max": "*",
"min": 0,
"path": "HealthcareService.coverageArea.extension",
"type": [ {
"code": "Extension",
"profile": [ "https://gematik.de/fhir/directory/StructureDefinition/ServiceCoveragePostalCode" ]
} ],
"sliceName": "serviceCoveragePostalCode",
"mustSupport": true
}, {
"id": "HealthcareService.characteristic",
"path": "HealthcareService.characteristic",
"short": "Physical Features & Technical Services",
"slicing": {
"rules": "open",
"discriminator": [ {
"path": "$this",
"type": "pattern"
} ]
},
"mustSupport": true
}, {
"id": "HealthcareService.characteristic:technicalCharacteristic",
"max": "*",
"min": 0,
"path": "HealthcareService.characteristic",
"short": "Technical Services",
"binding": {
"strength": "required",
"valueSet": "https://gematik.de/fhir/directory/ValueSet/healthcareservice-technical-characteristic-vs"
},
"sliceName": "technicalCharacteristic",
"mustSupport": true
}, {
"path": "HealthcareService.characteristic",
"min": 0,
"short": "Physical Features",
"mustSupport": true,
"sliceName": "physicalFeatures",
"binding": {
"strength": "extensible",
"valueSet": "https://gematik.de/fhir/directory/ValueSet/PhysicalFeaturesHealthCareServiceVS"
},
"max": "*",
"id": "HealthcareService.characteristic:physicalFeatures",
"patternCodeableConcept": {
"coding": [ {
"system": "https://gematik.de/fhir/directory/CodeSystem/physicalFeatures"
} ]
}
}, {
"id": "HealthcareService.characteristic:physicalFeatures.extension:additionalNote",
"max": "1",
"min": 0,
"path": "HealthcareService.characteristic.extension",
"type": [ {
"code": "Extension",
"profile": [ "https://gematik.de/fhir/directory/StructureDefinition/PhysicalFeaturesAdditionalNoteEX" ]
} ],
"sliceName": "additionalNote",
"mustSupport": true
}, {
"id": "HealthcareService.communication",
"path": "HealthcareService.communication",
"mustSupport": true
}, {
"id": "HealthcareService.appointmentRequired",
"path": "HealthcareService.appointmentRequired",
"mustSupport": true
}, {
"id": "HealthcareService.availableTime",
"path": "HealthcareService.availableTime",
"constraint": [ {
"key": "VZD-Service-Opening-Time",
"human": "Only allows either specialOpeningTimes extension or daysOfWeek, availableStartTime, availableEndTime",
"source": "https://gematik.de/fhir/directory/StructureDefinition/HealthcareServiceDirectory",
"severity": "error",
"expression": "extension('https://gematik.de/fhir/directory/StructureDefinition/SpecialOpeningTimesEX').exists() xor (daysOfWeek.exists() and availableStartTime.exists() and availableEndTime.exists())"
} ],
"mustSupport": true
}, {
"id": "HealthcareService.availableTime.extension:specialOpeningTimes",
"max": "1",
"min": 0,
"path": "HealthcareService.availableTime.extension",
"type": [ {
"code": "Extension",
"profile": [ "https://gematik.de/fhir/directory/StructureDefinition/SpecialOpeningTimesEX" ]
} ],
"sliceName": "specialOpeningTimes",
"mustSupport": true
}, {
"id": "HealthcareService.availableTime.daysOfWeek",
"max": "1",
"path": "HealthcareService.availableTime.daysOfWeek",
"mustSupport": true
}, {
"id": "HealthcareService.availableTime.allDay",
"max": "0",
"path": "HealthcareService.availableTime.allDay"
}, {
"id": "HealthcareService.availableTime.availableStartTime",
"path": "HealthcareService.availableTime.availableStartTime",
"mustSupport": true
}, {
"id": "HealthcareService.availableTime.availableEndTime",
"path": "HealthcareService.availableTime.availableEndTime",
"mustSupport": true
}, {
"id": "HealthcareService.notAvailable",
"path": "HealthcareService.notAvailable",
"mustSupport": true
}, {
"id": "HealthcareService.availabilityExceptions",
"path": "HealthcareService.availabilityExceptions",
"mustSupport": true
}, {
"id": "HealthcareService.endpoint",
"path": "HealthcareService.endpoint",
"mustSupport": true
} ]
},
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/HealthcareService"
}