{
  "resourceType": "StructureDefinition",
  "url": "https://medico-emr.net/medico/r4/sd/AuditEvent_StandardDocumentRead_1",
  "name": "AuditEvent_StandardDocumentRead_1",
  "status": "draft",
  "fhirVersion": "4.0.0",
  "mapping": [
    {
      "identity": "workflow",
      "uri": "http://hl7.org/fhir/workflow",
      "name": "Workflow Pattern"
    },
    {
      "identity": "rim",
      "uri": "http://hl7.org/v3",
      "name": "RIM Mapping"
    },
    {
      "identity": "dicom",
      "uri": "http://nema.org/dicom",
      "name": "DICOM Tag Mapping"
    },
    {
      "identity": "w5",
      "uri": "http://hl7.org/fhir/fivews",
      "name": "FiveWs Pattern Mapping"
    },
    {
      "identity": "w3c.prov",
      "uri": "http://www.w3.org/ns/prov",
      "name": "W3C PROV"
    },
    {
      "identity": "fhirprovenance",
      "uri": "http://hl7.org/fhir/provenance",
      "name": "FHIR Provenance Mapping"
    }
  ],
  "kind": "resource",
  "abstract": false,
  "type": "AuditEvent",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/AuditEvent",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "AuditEvent.id",
        "path": "AuditEvent.id",
        "definition": "Format: StdDocRead-####\r\nwhere ##### maps to x1350dre.dre where signstatus=1",
        "min": 1
      },
      {
        "id": "AuditEvent.meta",
        "path": "AuditEvent.meta",
        "type": [
          {
            "code": "Meta",
            "profile": [
              "https://medico-emr.net/medico/r4/sd/Meta_ProfileOnly_1"
            ]
          }
        ]
      },
      {
        "id": "AuditEvent.meta.profile",
        "path": "AuditEvent.meta.profile",
        "fixedCanonical": "https://medico-emr.net/medico/r4/sd/AuditEvent_StandardDocumentRead_1"
      },
      {
        "id": "AuditEvent.implicitRules",
        "path": "AuditEvent.implicitRules",
        "max": "0"
      },
      {
        "id": "AuditEvent.language",
        "path": "AuditEvent.language",
        "max": "0"
      },
      {
        "id": "AuditEvent.text",
        "path": "AuditEvent.text",
        "max": "0"
      },
      {
        "id": "AuditEvent.contained",
        "path": "AuditEvent.contained",
        "max": "0"
      },
      {
        "id": "AuditEvent.type.id",
        "path": "AuditEvent.type.id",
        "max": "0"
      },
      {
        "id": "AuditEvent.type.system",
        "path": "AuditEvent.type.system",
        "min": 1,
        "fixedUri": "http://terminology.hl7.org/CodeSystem/iso-21089-lifecycle"
      },
      {
        "id": "AuditEvent.type.version",
        "path": "AuditEvent.type.version",
        "min": 1,
        "fixedString": "2017"
      },
      {
        "id": "AuditEvent.type.code",
        "path": "AuditEvent.type.code",
        "min": 1,
        "fixedCode": "access"
      },
      {
        "id": "AuditEvent.type.display",
        "path": "AuditEvent.type.display",
        "max": "0"
      },
      {
        "id": "AuditEvent.type.userSelected",
        "path": "AuditEvent.type.userSelected",
        "max": "0"
      },
      {
        "id": "AuditEvent.subtype",
        "path": "AuditEvent.subtype",
        "max": "0"
      },
      {
        "id": "AuditEvent.action",
        "path": "AuditEvent.action",
        "definition": "R stands for read - see https://www.hl7.org/fhir/codesystem-audit-event-action.html",
        "min": 1,
        "fixedCode": "R"
      },
      {
        "id": "AuditEvent.period",
        "path": "AuditEvent.period",
        "max": "0"
      },
      {
        "id": "AuditEvent.recorded",
        "path": "AuditEvent.recorded",
        "definition": "maps to x1350dre.signd"
      },
      {
        "id": "AuditEvent.outcome",
        "path": "AuditEvent.outcome",
        "definition": "Code \"0\" indicates success - based on http://hl7.org/fhir/audit-event-outcome\r\nThe read-operation for the user was handled successfully \r\nNote: If in x1350dre.",
        "min": 1,
        "fixedCode": "0"
      },
      {
        "id": "AuditEvent.outcomeDesc",
        "path": "AuditEvent.outcomeDesc",
        "max": "0"
      },
      {
        "id": "AuditEvent.purposeOfEvent",
        "path": "AuditEvent.purposeOfEvent",
        "min": 1,
        "max": "1"
      },
      {
        "id": "AuditEvent.purposeOfEvent.id",
        "path": "AuditEvent.purposeOfEvent.id",
        "max": "0"
      },
      {
        "id": "AuditEvent.purposeOfEvent.coding",
        "path": "AuditEvent.purposeOfEvent.coding",
        "min": 1,
        "max": "1"
      },
      {
        "id": "AuditEvent.purposeOfEvent.coding.id",
        "path": "AuditEvent.purposeOfEvent.coding.id",
        "max": "0"
      },
      {
        "id": "AuditEvent.purposeOfEvent.coding.system",
        "path": "AuditEvent.purposeOfEvent.coding.system",
        "min": 1,
        "fixedUri": "http://terminology.hl7.org/CodeSystem/v3-ActReason"
      },
      {
        "id": "AuditEvent.purposeOfEvent.coding.version",
        "path": "AuditEvent.purposeOfEvent.coding.version",
        "max": "0"
      },
      {
        "id": "AuditEvent.purposeOfEvent.coding.code",
        "path": "AuditEvent.purposeOfEvent.coding.code",
        "min": 1,
        "fixedCode": "PATSFTY"
      },
      {
        "id": "AuditEvent.purposeOfEvent.coding.display",
        "path": "AuditEvent.purposeOfEvent.coding.display",
        "max": "0"
      },
      {
        "id": "AuditEvent.purposeOfEvent.coding.userSelected",
        "path": "AuditEvent.purposeOfEvent.coding.userSelected",
        "max": "0"
      },
      {
        "id": "AuditEvent.purposeOfEvent.text",
        "path": "AuditEvent.purposeOfEvent.text",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.id",
        "path": "AuditEvent.agent.id",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.type",
        "path": "AuditEvent.agent.type",
        "definition": "medico: defines that the defined agent here is the use who read the document, i.e. RECIPient in the code-system",
        "min": 1
      },
      {
        "id": "AuditEvent.agent.type.id",
        "path": "AuditEvent.agent.type.id",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.type.coding",
        "path": "AuditEvent.agent.type.coding",
        "min": 1,
        "max": "1"
      },
      {
        "id": "AuditEvent.agent.type.coding.id",
        "path": "AuditEvent.agent.type.coding.id",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.type.coding.system",
        "path": "AuditEvent.agent.type.coding.system",
        "min": 1,
        "fixedUri": "http://terminology.hl7.org/CodeSystem/contractsignertypecodes"
      },
      {
        "id": "AuditEvent.agent.type.coding.version",
        "path": "AuditEvent.agent.type.coding.version",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.type.coding.code",
        "path": "AuditEvent.agent.type.coding.code",
        "min": 1,
        "fixedCode": "RECIP"
      },
      {
        "id": "AuditEvent.agent.type.coding.display",
        "path": "AuditEvent.agent.type.coding.display",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.type.coding.userSelected",
        "path": "AuditEvent.agent.type.coding.userSelected",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.type.text",
        "path": "AuditEvent.agent.type.text",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.role",
        "path": "AuditEvent.agent.role",
        "min": 1,
        "max": "1"
      },
      {
        "id": "AuditEvent.agent.role.coding.system",
        "path": "AuditEvent.agent.role.coding.system",
        "fixedUri": "http://terminology.hl7.org/CodeSystem/v3-ParticipationType"
      },
      {
        "id": "AuditEvent.agent.role.coding.code",
        "path": "AuditEvent.agent.role.coding.code",
        "fixedCode": "IRCP"
      },
      {
        "id": "AuditEvent.agent.who",
        "path": "AuditEvent.agent.who",
        "definition": "medico: maps to x1350dre.signuser",
        "min": 1,
        "type": [
          {
            "code": "Reference",
            "profile": [
              "https://medico-emr.net/medico/r4/sd/Reference_User_1"
            ],
            "targetProfile": [
              "https://medico-emr.net/medico/r4/sd/Practitioner_User_1"
            ],
            "aggregation": [
              "referenced"
            ]
          }
        ]
      },
      {
        "id": "AuditEvent.agent.altId",
        "path": "AuditEvent.agent.altId",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.name",
        "path": "AuditEvent.agent.name",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.requestor",
        "path": "AuditEvent.agent.requestor",
        "definition": "medico: always true / the user who's confirmation for reading is stated - is referenced in \"who\" - and he/she is the one who initiated the event \"confirmation of reading\"",
        "fixedBoolean": true
      },
      {
        "id": "AuditEvent.agent.location",
        "path": "AuditEvent.agent.location",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.policy",
        "path": "AuditEvent.agent.policy",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.media",
        "path": "AuditEvent.agent.media",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.network",
        "path": "AuditEvent.agent.network",
        "max": "0"
      },
      {
        "id": "AuditEvent.agent.purposeOfUse",
        "path": "AuditEvent.agent.purposeOfUse",
        "max": "0"
      },
      {
        "id": "AuditEvent.source.id",
        "path": "AuditEvent.source.id",
        "max": "0"
      },
      {
        "id": "AuditEvent.source.site",
        "path": "AuditEvent.source.site",
        "max": "0"
      },
      {
        "id": "AuditEvent.source.observer.id",
        "path": "AuditEvent.source.observer.id",
        "max": "0"
      },
      {
        "id": "AuditEvent.source.observer.reference",
        "path": "AuditEvent.source.observer.reference",
        "max": "0"
      },
      {
        "id": "AuditEvent.source.observer.type",
        "path": "AuditEvent.source.observer.type",
        "max": "0"
      },
      {
        "id": "AuditEvent.source.observer.identifier",
        "path": "AuditEvent.source.observer.identifier",
        "max": "0"
      },
      {
        "id": "AuditEvent.source.observer.display",
        "path": "AuditEvent.source.observer.display",
        "min": 1,
        "fixedString": "client-computer"
      },
      {
        "id": "AuditEvent.source.type",
        "path": "AuditEvent.source.type",
        "max": "0"
      },
      {
        "id": "AuditEvent.entity",
        "path": "AuditEvent.entity",
        "min": 1,
        "max": "1"
      },
      {
        "id": "AuditEvent.entity.id",
        "path": "AuditEvent.entity.id",
        "max": "0"
      },
      {
        "id": "AuditEvent.entity.what",
        "path": "AuditEvent.entity.what",
        "min": 1,
        "type": [
          {
            "code": "Reference",
            "profile": [
              "https://medico-emr.net/medico/r4/sd/Reference_Base_1"
            ],
            "targetProfile": [
              "https://medico-emr.net/medico/r4/sd/DocumentReference_StandardDocument_1"
            ],
            "aggregation": [
              "referenced"
            ]
          }
        ]
      },
      {
        "id": "AuditEvent.entity.what.identifier.system",
        "path": "AuditEvent.entity.what.identifier.system",
        "comment": "Dynamically resolved for validation\r\n--FixedValue=https://medico-emr.net/medico/%KUNDE%/sid1/StandardDocument"
      },
      {
        "id": "AuditEvent.entity.type",
        "path": "AuditEvent.entity.type",
        "min": 1
      },
      {
        "id": "AuditEvent.entity.type.system",
        "path": "AuditEvent.entity.type.system",
        "fixedUri": "http://hl7.org/fhir/resource-types"
      },
      {
        "id": "AuditEvent.entity.type.code",
        "path": "AuditEvent.entity.type.code",
        "fixedCode": "DocumentReference"
      },
      {
        "id": "AuditEvent.entity.role",
        "path": "AuditEvent.entity.role",
        "definition": "medico: Defines 3 (=\"report\") as the role for the entity, i.e. the document whose reading is confirmed",
        "min": 1
      },
      {
        "id": "AuditEvent.entity.role.id",
        "path": "AuditEvent.entity.role.id",
        "max": "0"
      },
      {
        "id": "AuditEvent.entity.role.system",
        "path": "AuditEvent.entity.role.system",
        "min": 1,
        "fixedUri": "http://terminology.hl7.org/CodeSystem/object-role"
      },
      {
        "id": "AuditEvent.entity.role.version",
        "path": "AuditEvent.entity.role.version",
        "max": "0"
      },
      {
        "id": "AuditEvent.entity.role.code",
        "path": "AuditEvent.entity.role.code",
        "min": 1,
        "fixedCode": "3"
      },
      {
        "id": "AuditEvent.entity.role.display",
        "path": "AuditEvent.entity.role.display",
        "max": "0"
      },
      {
        "id": "AuditEvent.entity.role.userSelected",
        "path": "AuditEvent.entity.role.userSelected",
        "max": "0"
      },
      {
        "id": "AuditEvent.entity.lifecycle",
        "path": "AuditEvent.entity.lifecycle",
        "max": "0"
      },
      {
        "id": "AuditEvent.entity.securityLabel",
        "path": "AuditEvent.entity.securityLabel",
        "max": "0"
      },
      {
        "id": "AuditEvent.entity.name",
        "path": "AuditEvent.entity.name",
        "max": "0"
      },
      {
        "id": "AuditEvent.entity.description",
        "path": "AuditEvent.entity.description",
        "max": "0"
      },
      {
        "id": "AuditEvent.entity.query",
        "path": "AuditEvent.entity.query",
        "max": "0"
      },
      {
        "id": "AuditEvent.entity.detail",
        "path": "AuditEvent.entity.detail",
        "max": "0"
      }
    ]
  }
}