ERGNutzungsprotokoll (AuditEvent)

Bestätigungsrelevanz

Invocation of operator '=' failed: Unknown symbol 'capability'

Metadaten

Canonicalhttps://gematik.de/fhir/erg/StructureDefinition/erg-nutzungsprotokoll
Statusactive
Version1.1.0-RC1
Basishttp://hl7.org/fhir/StructureDefinition/AuditEvent

Inhalt

idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionI0..*Extension
modifierExtension?! I0..*Extension
typeS Σ1..1CodingBinding
subtypeS Σ0..*CodingBinding
actionS Σ0..1codeBinding
period0..1Period
recordedS Σ1..1instant
outcomeS Σ0..1codeBinding
outcomeDescΣ0..1string
purposeOfEventΣ0..*CodeableConceptBinding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
typeS1..1CodeableConceptBinding
role0..*CodeableConcept
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ0..1uriBinding
identifierS Σ0..1Identifier
displayS Σ1..1string
altId0..1string
name0..1string
requestorS Σ1..1boolean
location0..1Reference(Location)
policy0..*uri
media0..1CodingBinding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
address0..1string
type0..1codeBinding
purposeOfUse0..*CodeableConceptBinding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
site0..1string
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayS Σ0..1string
type0..*CodingBinding
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ0..1uriBinding
identifierΣ0..1Identifier
displayS Σ0..1string
type0..1CodingBinding
role0..1CodingBinding
lifecycle0..1CodingBinding
securityLabel0..*CodingBinding
nameS Σ I0..1string
descriptionS0..1string
queryΣ I0..1base64Binary
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
type1..1string
valueStringstring
valueBase64Binarybase64Binary
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ1..1uriBindingPattern
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeS Σ I1..1CodeableConceptBindingPattern
systemS Σ1..1uriFixed Value
valueS Σ I1..1string
periodΣ0..1Period
assignerΣ0..1Reference(Organization)
displayΣ0..1string
type0..1CodingBinding
role0..1CodingBinding
lifecycle0..1CodingBinding
securityLabel0..*CodingBinding
nameΣ I0..1string
description0..1string
queryΣ I0..1base64Binary
id0..1string
extensionI0..*Extension
modifierExtensionΣ ?! I0..*Extension
type1..1string
valueStringstring
valueBase64Binarybase64Binary
<StructureDefinition xmlns="http://hl7.org/fhir">
    <id value="erg-nutzungsprotokoll" />
    <url value="https://gematik.de/fhir/erg/StructureDefinition/erg-nutzungsprotokoll" />
    <version value="1.1.0-RC1" />
    <name value="ERGNutzungsprotokoll" />
    <title value="ERG Nutzungsprotokoll" />
    <status value="active" />
    <experimental value="false" />
    <date value="2025-02-28" />
    <publisher value="gematik GmbH" />
    <contact>
        <telecom>
            <system value="url" />
            <value value="http://gematik.de/" />
        </telecom>
    </contact>
    <fhirVersion value="4.0.1" />
    <kind value="resource" />
    <abstract value="false" />
    <type value="AuditEvent" />
    <baseDefinition value="http://hl7.org/fhir/StructureDefinition/AuditEvent" />
    <derivation value="constraint" />
    <differential>
        <element id="AuditEvent.type">
            <path value="AuditEvent.type" />
            <comment value="Angabe ob es sich um eine zu protokollierende Nutzerinteraktion nach Abschnittt &#39;5.5.9 Nutzerprotokolle&#39; des Feature-Dokuments &#39;E-Rechnung&#39; handelt oder um eine durchgef&#252;hrte REST-API-Interaktion durch den FD." />
            <mustSupport value="true" />
            <binding>
                <strength value="required" />
                <valueSet value="https://gematik.de/fhir/erg/ValueSet/erg-audit-event-type-vs" />
            </binding>
        </element>
        <element id="AuditEvent.subtype">
            <path value="AuditEvent.subtype" />
            <comment value="Erlaubt die Kodierung aller REST-API Operationen der Spec-E-Rechnung" />
            <mustSupport value="true" />
            <binding>
                <strength value="extensible" />
                <valueSet value="https://gematik.de/fhir/erg/ValueSet/erg-audit-event-sub-type-vs" />
            </binding>
        </element>
        <element id="AuditEvent.action">
            <path value="AuditEvent.action" />
            <comment value="Angabe ob es sich um eine lesende/schreibende/ausf&#252;hrende Interaktion handelt." />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.recorded">
            <path value="AuditEvent.recorded" />
            <comment value="Der Zeitpunkt des Zugriffs ist zu protokollieren. Siehe Abschnittt &#39;4.8.6 Protokolleintrag&#39;des Feature-Dokuments &#39;E-Rechnung&#39;." />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.outcome">
            <path value="AuditEvent.outcome" />
            <comment value="Angabe ob die zu protokollierende Interaktion erfolgreich ausgef&#252;hrt werden konnte." />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.agent">
            <path value="AuditEvent.agent" />
            <comment value="Angaben zum Akteur (Nutzer oder eRg FD), der den Zugriff durchgef&#252;hrt hat. Siehe Abschnittt &#39;4.8.6 Protokolleintrag&#39;des Feature-Dokuments &#39;E-Rechnung&#39;." />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.agent.type">
            <path value="AuditEvent.agent.type" />
            <min value="1" />
            <mustSupport value="true" />
            <binding>
                <strength value="required" />
                <valueSet value="https://gematik.de/fhir/erg/ValueSet/erg-audit-event-agent-type-vs" />
            </binding>
        </element>
        <element id="AuditEvent.agent.who">
            <path value="AuditEvent.agent.who" />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.agent.who.identifier">
            <path value="AuditEvent.agent.who.identifier" />
            <comment value="Der Identifier wird vom Server gesetzt und kann entweder eine KVNR oder Telematik-ID sein" />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.agent.who.display">
            <path value="AuditEvent.agent.who.display" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.agent.requestor">
            <path value="AuditEvent.agent.requestor" />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.source.observer.display">
            <path value="AuditEvent.source.observer.display" />
            <comment value="Freitext-Rolle des Servers, auf das Event ausgel&#246;st wurde" />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.entity">
            <path value="AuditEvent.entity" />
            <slicing>
                <discriminator>
                    <type value="pattern" />
                    <path value="what.type" />
                </discriminator>
                <rules value="open" />
            </slicing>
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.entity.what">
            <path value="AuditEvent.entity.what" />
            <comment value="Referenzierung aller durch die zu protokollierende Interaktion betroffenen Ressourcen" />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.entity.what.display">
            <path value="AuditEvent.entity.what.display" />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.entity.name">
            <path value="AuditEvent.entity.name" />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.entity.description">
            <path value="AuditEvent.entity.description" />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.entity:Versicherter">
            <path value="AuditEvent.entity" />
            <sliceName value="Versicherter" />
            <min value="0" />
            <max value="1" />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.entity:Versicherter.what.type">
            <path value="AuditEvent.entity.what.type" />
            <min value="1" />
            <patternUri value="Patient" />
        </element>
        <element id="AuditEvent.entity:Versicherter.what.identifier">
            <path value="AuditEvent.entity.what.identifier" />
            <type>
                <code value="Identifier" />
                <profile value="http://fhir.de/StructureDefinition/identifier-kvid-10" />
            </type>
            <patternIdentifier>
                <type>
                    <coding>
                        <system value="http://fhir.de/CodeSystem/identifier-type-de-basis" />
                        <code value="KVZ10" />
                    </coding>
                </type>
            </patternIdentifier>
        </element>
        <element id="AuditEvent.entity:Versicherter.what.identifier.type">
            <path value="AuditEvent.entity.what.identifier.type" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.entity:Versicherter.what.identifier.system">
            <path value="AuditEvent.entity.what.identifier.system" />
            <mustSupport value="true" />
        </element>
        <element id="AuditEvent.entity:Versicherter.what.identifier.value">
            <path value="AuditEvent.entity.what.identifier.value" />
            <mustSupport value="true" />
        </element>
    </differential>
</StructureDefinition>
{
    "resourceType": "StructureDefinition",
    "id": "erg-nutzungsprotokoll",
    "url": "https://gematik.de/fhir/erg/StructureDefinition/erg-nutzungsprotokoll",
    "version": "1.1.0-RC1",
    "name": "ERGNutzungsprotokoll",
    "title": "ERG Nutzungsprotokoll",
    "status": "active",
    "experimental": false,
    "date": "2025-02-28",
    "publisher": "gematik GmbH",
    "contact":  [
        {
            "telecom":  [
                {
                    "system": "url",
                    "value": "http://gematik.de/"
                }
            ]
        }
    ],
    "fhirVersion": "4.0.1",
    "kind": "resource",
    "abstract": false,
    "type": "AuditEvent",
    "baseDefinition": "http://hl7.org/fhir/StructureDefinition/AuditEvent",
    "derivation": "constraint",
    "differential": {
        "element":  [
            {
                "id": "AuditEvent.type",
                "path": "AuditEvent.type",
                "comment": "Angabe ob es sich um eine zu protokollierende Nutzerinteraktion nach Abschnittt '5.5.9 Nutzerprotokolle' des Feature-Dokuments 'E-Rechnung' handelt oder um eine durchgeführte REST-API-Interaktion durch den FD.",
                "mustSupport": true,
                "binding": {
                    "strength": "required",
                    "valueSet": "https://gematik.de/fhir/erg/ValueSet/erg-audit-event-type-vs"
                }
            },
            {
                "id": "AuditEvent.subtype",
                "path": "AuditEvent.subtype",
                "comment": "Erlaubt die Kodierung aller REST-API Operationen der Spec-E-Rechnung",
                "mustSupport": true,
                "binding": {
                    "strength": "extensible",
                    "valueSet": "https://gematik.de/fhir/erg/ValueSet/erg-audit-event-sub-type-vs"
                }
            },
            {
                "id": "AuditEvent.action",
                "path": "AuditEvent.action",
                "comment": "Angabe ob es sich um eine lesende/schreibende/ausführende Interaktion handelt.",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.recorded",
                "path": "AuditEvent.recorded",
                "comment": "Der Zeitpunkt des Zugriffs ist zu protokollieren. Siehe Abschnittt '4.8.6 Protokolleintrag'des Feature-Dokuments 'E-Rechnung'.",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.outcome",
                "path": "AuditEvent.outcome",
                "comment": "Angabe ob die zu protokollierende Interaktion erfolgreich ausgeführt werden konnte.",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.agent",
                "path": "AuditEvent.agent",
                "comment": "Angaben zum Akteur (Nutzer oder eRg FD), der den Zugriff durchgeführt hat. Siehe Abschnittt '4.8.6 Protokolleintrag'des Feature-Dokuments 'E-Rechnung'.",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.agent.type",
                "path": "AuditEvent.agent.type",
                "min": 1,
                "mustSupport": true,
                "binding": {
                    "strength": "required",
                    "valueSet": "https://gematik.de/fhir/erg/ValueSet/erg-audit-event-agent-type-vs"
                }
            },
            {
                "id": "AuditEvent.agent.who",
                "path": "AuditEvent.agent.who",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.agent.who.identifier",
                "path": "AuditEvent.agent.who.identifier",
                "comment": "Der Identifier wird vom Server gesetzt und kann entweder eine KVNR oder Telematik-ID sein",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.agent.who.display",
                "path": "AuditEvent.agent.who.display",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "AuditEvent.agent.requestor",
                "path": "AuditEvent.agent.requestor",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.source.observer.display",
                "path": "AuditEvent.source.observer.display",
                "comment": "Freitext-Rolle des Servers, auf das Event ausgelöst wurde",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.entity",
                "path": "AuditEvent.entity",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "pattern",
                            "path": "what.type"
                        }
                    ],
                    "rules": "open"
                },
                "mustSupport": true
            },
            {
                "id": "AuditEvent.entity.what",
                "path": "AuditEvent.entity.what",
                "comment": "Referenzierung aller durch die zu protokollierende Interaktion betroffenen Ressourcen",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.entity.what.display",
                "path": "AuditEvent.entity.what.display",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.entity.name",
                "path": "AuditEvent.entity.name",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.entity.description",
                "path": "AuditEvent.entity.description",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.entity:Versicherter",
                "path": "AuditEvent.entity",
                "sliceName": "Versicherter",
                "min": 0,
                "max": "1",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.entity:Versicherter.what.type",
                "path": "AuditEvent.entity.what.type",
                "min": 1,
                "patternUri": "Patient"
            },
            {
                "id": "AuditEvent.entity:Versicherter.what.identifier",
                "path": "AuditEvent.entity.what.identifier",
                "type":  [
                    {
                        "code": "Identifier",
                        "profile":  [
                            "http://fhir.de/StructureDefinition/identifier-kvid-10"
                        ]
                    }
                ],
                "patternIdentifier": {
                    "type": {
                        "coding":  [
                            {
                                "code": "KVZ10",
                                "system": "http://fhir.de/CodeSystem/identifier-type-de-basis"
                            }
                        ]
                    }
                }
            },
            {
                "id": "AuditEvent.entity:Versicherter.what.identifier.type",
                "path": "AuditEvent.entity.what.identifier.type",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "AuditEvent.entity:Versicherter.what.identifier.system",
                "path": "AuditEvent.entity.what.identifier.system",
                "mustSupport": true
            },
            {
                "id": "AuditEvent.entity:Versicherter.what.identifier.value",
                "path": "AuditEvent.entity.what.identifier.value",
                "mustSupport": true
            }
        ]
    }
}

Constraints/Invarianten

Terminology-Bindings

ElementStaerkeValueSet
AuditEvent.typerequiredhttps://gematik.de/fhir/erg/ValueSet/erg-audit-event-type-vs
AuditEvent.subtypeextensiblehttps://gematik.de/fhir/erg/ValueSet/erg-audit-event-sub-type-vs
AuditEvent.agent.typerequiredhttps://gematik.de/fhir/erg/ValueSet/erg-audit-event-agent-type-vs

Anmerkungen zu Must-Support-Feldern

FeldnameHinweise
AuditEvent.type

Angabe ob es sich um eine zu protokollierende Nutzerinteraktion nach Abschnittt '5.5.9 Nutzerprotokolle' des Feature-Dokuments 'E-Rechnung' handelt oder um eine durchgeführte REST-API-Interaktion durch den FD.

AuditEvent.subtype

Erlaubt die Kodierung aller REST-API Operationen der Spec-E-Rechnung

AuditEvent.action

Angabe ob es sich um eine lesende/schreibende/ausführende Interaktion handelt.

AuditEvent.recorded

Der Zeitpunkt des Zugriffs ist zu protokollieren. Siehe Abschnittt '4.8.6 Protokolleintrag'des Feature-Dokuments 'E-Rechnung'.

AuditEvent.outcome

Angabe ob die zu protokollierende Interaktion erfolgreich ausgeführt werden konnte.

AuditEvent.agent

Angaben zum Akteur (Nutzer oder eRg FD), der den Zugriff durchgeführt hat. Siehe Abschnittt '4.8.6 Protokolleintrag'des Feature-Dokuments 'E-Rechnung'.

AuditEvent.agent.type
AuditEvent.agent.who
AuditEvent.agent.who.identifier

Der Identifier wird vom Server gesetzt und kann entweder eine KVNR oder Telematik-ID sein

AuditEvent.agent.who.display
AuditEvent.agent.requestor
AuditEvent.source.observer.display

Freitext-Rolle des Servers, auf das Event ausgelöst wurde

AuditEvent.entity
AuditEvent.entity.what

Referenzierung aller durch die zu protokollierende Interaktion betroffenen Ressourcen

AuditEvent.entity.what.display
AuditEvent.entity.name
AuditEvent.entity.description
AuditEvent.entity:Versicherter
AuditEvent.entity:Versicherter.what.identifier.type
AuditEvent.entity:Versicherter.what.identifier.system
AuditEvent.entity:Versicherter.what.identifier.value

Interaktionen

Invocation of operator '=' failed: Unknown symbol 'capability'
Invocation of operator '=' failed: Unknown symbol 'capability'
Invocation of operator '=' failed: Unknown symbol 'capability'
Invocation of operator '=' failed: Unknown symbol 'capability'

(Reverse-)Include

Invocation of operator '=' failed: Unknown symbol 'capability'
Invocation of operator '=' failed: Unknown symbol 'capability'
Command 'pagelink' could not render: Page not found.

Beispiele

Could not find subject. File not found for 'subject=BeispielNutzungsprotokoll'
Command 'xml' could not render: File not found for 'subject=BeispielNutzungsprotokoll'
Command 'json' could not render: File not found for 'subject=BeispielNutzungsprotokoll'
Command 'link' could not render: File not found for 'subject=BeispielNutzungsprotokoll'