Ressourcen-Profile
Hinweis | Diese Box bitte entfernen! |
---|---|
Diese Seite ist ein Template, das bei Verwendung für ein konkretes Projekt angepasst werden muss! Dieses Banner kann verwendet werden, um zu kennzeichnen, welche Seiten noch nicht bearbeitet wurden, sich gerade in Arbeit befinden oder um auf offene Punkte hinzuweisen. | |
Um das Template an ein konkretes Ressourcenprofil anzupassen, müssen dessen Canonical sowie der Ressourcentyp im Seitenheader angepasst werden! Die Seite muss umbenannt werden von Template -> Profilname | |
Wenn ein CapabilityStatement vorhanden ist und der Abschnitt RESTful-API gefüllt werden soll, muss im Header zusätlich die Canoncial des CapabilityStatements angeben werden. Falls nicht, sollte der Abschnitt RESTFul-API durch eine geeignete Beschreibung des verwendeten Paradigmas ersetzt werden. |
Mein Patienten-Profil
Metadaten
Canonical | http://fhir.de/test/StructureDefinition/MeinPatientProfil |
---|---|
Status | draft |
Version | 4.0.1 |
Basis | http://hl7.org/fhir/StructureDefinition/Patient |
Inhalt
MeinPatientProfil (Patient) | I | Patient | |
id | Σ | 0..1 | string |
meta | Σ | 0..1 | Meta |
implicitRules | Σ ?! | 0..1 | uri |
language | 0..1 | codeBinding | |
text | 0..1 | Narrative | |
contained | 0..* | Resource | |
extension | I | 0..* | Extension |
modifierExtension | ?! I | 0..* | Extension |
identifier | Σ | 0..* | Identifier |
active | Σ ?! | 0..1 | boolean |
name | S Σ | 1..* | HumanName |
id | 0..1 | string | |
extension | I | 0..* | Extension |
use | Σ ?! | 0..1 | codeBinding |
text | Σ | 0..1 | string |
family | S Σ I | 1..1 | string |
given | S Σ | 1..* | string |
prefix | S Σ | 0..* | string |
suffix | Σ | 0..* | string |
period | Σ I | 0..1 | Period |
telecom | Σ I | 0..* | ContactPoint |
gender | Σ | 0..1 | codeBinding |
birthDate | Σ | 0..1 | date |
deceased[x] | Σ ?! | 0..1 | |
deceasedBoolean | boolean | ||
deceasedDateTime | dateTime | ||
address | Σ | 0..* | Address |
maritalStatus | 0..1 | CodeableConceptBinding | |
multipleBirth[x] | 0..1 | ||
multipleBirthBoolean | boolean | ||
multipleBirthInteger | integer | ||
photo | I | 0..* | Attachment |
contact | I | 0..* | BackboneElement |
id | 0..1 | string | |
extension | I | 0..* | Extension |
modifierExtension | Σ ?! I | 0..* | Extension |
relationship | 0..* | CodeableConceptBinding | |
name | 0..1 | HumanName | |
telecom | I | 0..* | ContactPoint |
address | 0..1 | Address | |
gender | 0..1 | codeBinding | |
organization | I | 0..1 | Reference(Organization) |
period | I | 0..1 | Period |
communication | 0..* | BackboneElement | |
id | 0..1 | string | |
extension | I | 0..* | Extension |
modifierExtension | Σ ?! I | 0..* | Extension |
language | 1..1 | CodeableConceptBinding | |
preferred | 0..1 | boolean | |
generalPractitioner | I | 0..* | Reference(Organization | Practitioner | PractitionerRole) |
managingOrganization | Σ I | 0..1 | Reference(Organization) |
link | Σ ?! | 0..* | BackboneElement |
id | 0..1 | string | |
extension | I | 0..* | Extension |
modifierExtension | Σ ?! I | 0..* | Extension |
other | Σ I | 1..1 | Reference(Patient | RelatedPerson) |
type | Σ | 1..1 | codeBinding |
Beispielprofil für IG Template. Mit noch mehr Text zu Testzwecken: Hier ist ein link, und eine
Überschrift
sowie
- eine
- Aufzählung
Feldname | Kurzbeschreibung | Hinweise |
---|---|---|
Patient.name | Name | Der Name muss angegeben werden, um die Identität des Patienten verifizieren zu können |
Patient.name.family | Nachnname | Der Nachname des Patienten mit allen Bestandteilen (Vorsatzwort, Namenszusatz, Postfix etc.) muss stets asl ein vollständiger String angegeben werden. MARKDOWN-TEST!!! |
Patient.name.given | Vorname | Der Vorname des Patienten muss stets angegeben werden. Sollte der Vorname in Ausnahmefällen nicht bekannt sein, kann die data-absent-reason-Extension verwendet werden |
Patient.name.prefix | Titel | Die Angabe eines Titels ist optional, muss jedoch übermittelt werden, sofern bekannt. |
<StructureDefinition xmlns="http://hl7.org/fhir"> <id value="MeinPatientProfil" /> <url value="http://fhir.de/test/StructureDefinition/MeinPatientProfil" /> <version value="4.0.1" /> <name value="MeinPatientProfil" /> <title value="Mein Patienten-Profil" /> <status value="draft" /> <experimental value="true" /> <date value="2024-10-22" /> <publisher value="HL7 Deutschland e.V." /> <description value="Beispielprofil für IG Template. Mit noch mehr Text zu Testzwecken: Hier ist ein [link](http://gefyra.de), und eine \n # Überschrift \n sowie \n * eine \n * Aufzählung" /> <fhirVersion value="4.0.1" /> <mapping> <identity value="meinErstesPatientenMapping" /> <uri value="Meine Datenbank" /> <comment value="Mapping der Patientenressource auf meine Datenbank" /> </mapping> <mapping> <identity value="meinZweitesPatientenMapping" /> <uri value="Meine andere Datenbank" /> <comment value="Mapping der Patientenressource auf meine andere Datenbank" /> </mapping> <kind value="resource" /> <abstract value="false" /> <type value="Patient" /> <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Patient" /> <derivation value="constraint" /> <differential> <element id="Patient.name"> <path value="Patient.name" /> <short value="Name" /> <comment value="Der Name muss angegeben werden, um die Identität des Patienten verifizieren zu können" /> <min value="1" /> <mustSupport value="true" /> </element> <element id="Patient.name.family"> <path value="Patient.name.family" /> <short value="Nachnname" /> <comment value="Der Nachname des Patienten mit allen Bestandteilen (Vorsatzwort, Namenszusatz, Postfix etc.) muss stets asl ein *vollständiger* [String](http://hl7.org/fhir/datatypes.html#string) angegeben werden. **MARKDOWN-TEST!!!**" /> <min value="1" /> <constraint> <key value="nachname-check" /> <severity value="warning" /> <human value="Der Nachname sollte nicht länger sein als 50 Zeichen!" /> <expression value="length() < 50" /> <source value="http://fhir.de/test/StructureDefinition/MeinPatientProfil" /> </constraint> <mustSupport value="true" /> <mapping> <identity value="meinErstesPatientenMapping" /> <map value="Person.Nachname" /> </mapping> <mapping> <identity value="meinZweitesPatientenMapping" /> <map value="Person.Nachname" /> </mapping> </element> <element id="Patient.name.given"> <path value="Patient.name.given" /> <short value="Vorname" /> <comment value="Der Vorname des Patienten muss stets angegeben werden. Sollte der Vorname in Ausnahmefällen nicht bekannt sein, kann die data-absent-reason-Extension verwendet werden" /> <min value="1" /> <mustSupport value="true" /> <mapping> <identity value="meinErstesPatientenMapping" /> <map value="Person.Vorname" /> <comment value="Meine DB kann nur einen Vornamen speichern" /> </mapping> <mapping> <identity value="meinZweitesPatientenMapping" /> <map value="Person.Vorname" /> <comment value="Meine DB kann nur einen Vornamen speichern" /> </mapping> </element> <element id="Patient.name.prefix"> <path value="Patient.name.prefix" /> <short value="Titel" /> <comment value="Die Angabe eines Titels ist optional, muss jedoch übermittelt werden, sofern bekannt." /> <mustSupport value="true" /> <mapping> <identity value="meinErstesPatientenMapping" /> <map value="Person.Titel" /> <comment value="In meiner DB ist nur Dr. oder Prof. erlaubt!" /> </mapping> <mapping> <identity value="meinZweitesPatientenMapping" /> <map value="Person.Titel" /> <comment value="In meiner DB ist nur Dr. oder Prof. erlaubt!" /> </mapping> </element> <element id="Patient.birthDate"> <path value="Patient.birthDate" /> <mapping> <identity value="meinErstesPatientenMapping" /> <map value="Person.Geburtsdatum" /> <comment value="muss in das Format DD.MM.YYYY konvertiert werden" /> </mapping> <mapping> <identity value="meinZweitesPatientenMapping" /> <map value="Person.Geburtsdatum" /> <comment value="muss in das Format DD.MM.YYYY konvertiert werden" /> </mapping> </element> </differential> </StructureDefinition>
{ "resourceType": "StructureDefinition", "id": "MeinPatientProfil", "url": "http://fhir.de/test/StructureDefinition/MeinPatientProfil", "version": "4.0.1", "name": "MeinPatientProfil", "title": "Mein Patienten-Profil", "status": "draft", "experimental": true, "date": "2024-10-22", "publisher": "HL7 Deutschland e.V.", "description": "Beispielprofil für IG Template. Mit noch mehr Text zu Testzwecken: Hier ist ein [link](http://gefyra.de), und eine \n # Überschrift \n sowie \n * eine \n * Aufzählung ", "fhirVersion": "4.0.1", "mapping": [ { "identity": "meinErstesPatientenMapping", "uri": "Meine Datenbank", "comment": "Mapping der Patientenressource auf meine Datenbank" }, { "identity": "meinZweitesPatientenMapping", "uri": "Meine andere Datenbank", "comment": "Mapping der Patientenressource auf meine andere Datenbank" } ], "kind": "resource", "abstract": false, "type": "Patient", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Patient", "derivation": "constraint", "differential": { "element": [ { "id": "Patient.name", "path": "Patient.name", "short": "Name", "comment": "Der Name muss angegeben werden, um die Identität des Patienten verifizieren zu können", "min": 1, "mustSupport": true }, { "id": "Patient.name.family", "path": "Patient.name.family", "short": "Nachnname", "comment": "Der Nachname des Patienten mit allen Bestandteilen (Vorsatzwort, Namenszusatz, Postfix etc.) muss stets asl ein *vollständiger* [String](http://hl7.org/fhir/datatypes.html#string) angegeben werden. **MARKDOWN-TEST!!!**", "min": 1, "constraint": [ { "key": "nachname-check", "human": "Der Nachname sollte nicht länger sein als 50 Zeichen!", "source": "http://fhir.de/test/StructureDefinition/MeinPatientProfil", "severity": "warning", "expression": "length() < 50" } ], "mustSupport": true, "mapping": [ { "identity": "meinErstesPatientenMapping", "map": "Person.Nachname" }, { "identity": "meinZweitesPatientenMapping", "map": "Person.Nachname" } ] }, { "id": "Patient.name.given", "path": "Patient.name.given", "short": "Vorname", "comment": "Der Vorname des Patienten muss stets angegeben werden. Sollte der Vorname in Ausnahmefällen nicht bekannt sein, kann die data-absent-reason-Extension verwendet werden", "min": 1, "mustSupport": true, "mapping": [ { "identity": "meinErstesPatientenMapping", "map": "Person.Vorname", "comment": "Meine DB kann nur einen Vornamen speichern" }, { "identity": "meinZweitesPatientenMapping", "map": "Person.Vorname", "comment": "Meine DB kann nur einen Vornamen speichern" } ] }, { "id": "Patient.name.prefix", "path": "Patient.name.prefix", "short": "Titel", "comment": "Die Angabe eines Titels ist optional, muss jedoch übermittelt werden, sofern bekannt.", "mustSupport": true, "mapping": [ { "identity": "meinErstesPatientenMapping", "map": "Person.Titel", "comment": "In meiner DB ist nur Dr. oder Prof. erlaubt!" }, { "identity": "meinZweitesPatientenMapping", "map": "Person.Titel", "comment": "In meiner DB ist nur Dr. oder Prof. erlaubt!" } ] }, { "id": "Patient.birthDate", "path": "Patient.birthDate", "mapping": [ { "identity": "meinErstesPatientenMapping", "map": "Person.Geburtsdatum", "comment": "muss in das Format DD.MM.YYYY konvertiert werden" }, { "identity": "meinZweitesPatientenMapping", "map": "Person.Geburtsdatum", "comment": "muss in das Format DD.MM.YYYY konvertiert werden" } ] } ] } }
Terminology-Bindings
Constraints/Invarianten
Name | Schweregrad | Beschreibung | Ausdruck |
---|---|---|---|
nachname-check | warning | Der Nachname sollte nicht länger sein als 50 Zeichen! | length() < 50 |
RestFul API
Hier sollte eine Erläuterung stehen, wie und wofür die konkrete Ressource verwendet wird und ggf. warum deren Implementierung verpflichtend ist.
Interaktion | Hinweise | Verbindlichkeit |
---|---|---|
read | Hier können Hinweise zu der Interaktion stehen. | SHALL |
search-type | Hier können Hinweise zu der Interaktion stehen. | SHALL |
Parameter | Typ | Verbindlichkeit | Hinweise |
---|---|---|---|
identifier | token | SHALL | Beispiel: |
family | string | SHALL | Beispiel: |
given | string | SHALL | Beispiel: |
birthdate | date | SHALL | Beispiel: |
gender | token | SHALL | Beispiel: |
name | string | MAY | Beispiel: |
address | string | MAY | Beispiel: |
address-country | string | MAY | Beispiel: |
address-postalcode | string | MAY | Beispiel: |
active | token | MAY | Beispiel: |
telecom | token | MAY | Beispiel: |
(Reverse-)Include
ReverseInclude |
---|
Composition:patient; Composition:subject; Composition:author; Condition:patient; Condition:subject; Procedure:patient; Procedure:subject; Encounter:patient; Encounter:subject; Coverage:beneficiary; Coverage:subscriber; Coverage:patient; Coverage:payor; Account:subject; Account:patient; AllergyIntolerance:patient; Observation:patient |
Beispiele
Mappings
FHIR | meineDatenbank | Hinweis | Identitaet |
---|---|---|---|
Patient.name.family | Person.Nachname | meinErstesPatientenMapping | |
Patient.name.given | Person.Vorname | Meine DB kann nur einen Vornamen speichern | meinErstesPatientenMapping |
Patient.name.prefix | Person.Titel | In meiner DB ist nur Dr. oder Prof. erlaubt! | meinErstesPatientenMapping |
Patient.birthDate | Person.Geburtsdatum | muss in das Format DD.MM.YYYY konvertiert werden | meinErstesPatientenMapping |
FHIR | meineDatenbank | Hinweis | Identitaet |
---|---|---|---|
Patient.name.family | Person.Nachname | meinZweitesPatientenMapping | |
Patient.name.given | Person.Vorname | Meine DB kann nur einen Vornamen speichern | meinZweitesPatientenMapping |
Patient.name.prefix | Person.Titel | In meiner DB ist nur Dr. oder Prof. erlaubt! | meinZweitesPatientenMapping |
Patient.birthDate | Person.Geburtsdatum | muss in das Format DD.MM.YYYY konvertiert werden | meinZweitesPatientenMapping |