{
  "resourceType": "StructureDefinition",
  "id": "AuditEvent",
  "meta": {
    "lastUpdated": "2019-10-31T22:29:23.356+00:00"
  },
  "extension": [
    {
      "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-category",
      "valueString": "Foundation.Security"
    },
    {
      "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status",
      "valueCode": "trial-use"
    },
    {
      "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm",
      "valueInteger": 3
    },
    {
      "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-security-category",
      "valueCode": "not-classified"
    },
    {
      "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg",
      "valueCode": "sec"
    }
  ],
  "url": "http://hl7.org/fhir/StructureDefinition/AuditEvent",
  "version": "4.0.1",
  "name": "KR_AuditEvent",
  "status": "draft",
  "date": "2019-10-31T22:29:23+00:00",
  "publisher": "Health Level Seven International (Security)",
  "contact": [
    {
      "telecom": [
        {
          "system": "url",
          "value": "http://hl7.org/fhir"
        }
      ]
    },
    {
      "telecom": [
        {
          "system": "url",
          "value": "http://www.hl7.org/Special/committees/secure/index.cfm"
        }
      ]
    }
  ],
  "description": "보안 로그 유지 목적으로 작성된 이벤트(event)에 대한 기록. 대표적인 용도는 침입 시도 탐지 및 부적절한 사용에 대한 모니터링을 포함함.",
  "fhirVersion": "4.0.1",
  "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/DomainResource",
  "derivation": "specialization",
  "differential": {
    "element": [
      {
        "id": "AuditEvent",
        "path": "AuditEvent",
        "short": "보안 목적으로 보관된 이벤트 기록 (감사)",
        "definition": "보안 로그 유지 목적으로 작성된 이벤트에 대한 기록. 대표적인 용도는 침입 시도 탐지 및 부적절한 사용에 대한 모니터링을 포함함.",
        "comment": "IHE-ATNA를 기반으로",
        "mapping": [
          {
            "identity": "workflow",
            "map": "Event"
          },
          {
            "identity": "rim",
            "map": "ControlAct[moodCode=EVN]"
          },
          {
            "identity": "dicom",
            "map": "Message"
          }
        ]
      },
      {
        "id": "AuditEvent.type",
        "path": "AuditEvent.type",
        "short": "이벤트의 유형/식별자",
        "definition": "이벤트에 대한 식별자. 예를 들어 메뉴 항목, 프로그램, 규칙, 정책, 기능 코드, 응용 프로그램 이름 또는 URL. 수행된 이벤트의 기능을 식별함.",
        "requirements": "This identifies the performed function. For \"Execute\" Event Action Code audit records, this identifies the application function performed.",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Coding"
          }
        ],
        "isSummary": true,
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "AuditEventType"
            }
          ],
          "strength": "extensible",
          "description": "Type of event.",
          "valueSet": "http://hl7.org/fhir/ValueSet/audit-event-type"
        },
        "mapping": [
          {
            "identity": "workflow",
            "map": "Event.code"
          },
          {
            "identity": "w5",
            "map": "FiveWs.what[x]"
          },
          {
            "identity": "rim",
            "map": ".code (type, subtype and action are pre-coordinated or sent as translations)"
          },
          {
            "identity": "dicom",
            "map": "EventId"
          },
          {
            "identity": "w3c.prov",
            "map": "Activity"
          }
        ]
      },
      {
        "id": "AuditEvent.type.system",
        "path": "AuditEvent.type.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호(symbol)의 의미를 정의하는 코드 시스템의 식별(identification)"
      },
      {
        "id": "AuditEvent.type.version",
        "path": "AuditEvent.type.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.type.code",
        "path": "AuditEvent.type.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.type.display",
        "path": "AuditEvent.type.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.type.userSelected",
        "path": "AuditEvent.type.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.subtype",
        "path": "AuditEvent.subtype",
        "short": "이벤트에 대한 보다 구체적인 유형/식별자",
        "definition": "이벤트 범주의 식별자.",
        "requirements": "This field enables queries of messages by implementation-defined event categories.",
        "type": [
          {
            "code": "Coding"
          }
        ],
        "isSummary": true,
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "AuditEventSubType"
            }
          ],
          "strength": "extensible",
          "description": "Sub-type of event.",
          "valueSet": "http://hl7.org/fhir/ValueSet/audit-event-sub-type"
        },
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.what[x]"
          },
          {
            "identity": "rim",
            "map": ".code (type, subtype and action are pre-coordinated or sent as translations)"
          },
          {
            "identity": "dicom",
            "map": "EventTypeCode"
          }
        ]
      },
      {
        "id": "AuditEvent.subtype.system",
        "path": "AuditEvent.subtype.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.subtype.version",
        "path": "AuditEvent.subtype.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.subtype.code",
        "path": "AuditEvent.subtype.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.subtype.display",
        "path": "AuditEvent.subtype.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.subtype.userSelected",
        "path": "AuditEvent.subtype.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.action",
        "path": "AuditEvent.action",
        "short": "이벤트 동안 수행된 작업의 유형",
        "definition": "감사를 생성한 이벤트 동안 수행된 작업 유형을 나타냄.",
        "requirements": "This broadly indicates what kind of action was done on the AuditEvent.entity by the AuditEvent.agent.",
        "max": "1",
        "type": [
          {
            "code": "code"
          }
        ],
        "isSummary": true,
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "AuditEventAction"
            }
          ],
          "strength": "required",
          "description": "Indicator for type of action performed during the event that generated the event.",
          "valueSet": "http://hl7.org/fhir/ValueSet/audit-event-action|4.0.1"
        },
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.what[x]"
          },
          {
            "identity": "rim",
            "map": ".code (type, subtype and action are pre-coordinated or sent as translations)"
          },
          {
            "identity": "dicom",
            "map": "EventActionCode"
          }
        ]
      },
      {
        "id": "AuditEvent.period",
        "path": "AuditEvent.period",
        "short": "활동이 발생한 시기",
        "definition": "활동이 발생한 시기.",
        "comment": "기간은 약간 임의적 일 수 있음. 가능한 경우 시간은 활동 시간에 대한 사람의 평가와 일치해야함",
        "max": "1",
        "type": [
          {
            "code": "Period"
          }
        ],
        "mapping": [
          {
            "identity": "workflow",
            "map": "Event.occurred[x]"
          },
          {
            "identity": "w5",
            "map": "FiveWs.done[x]"
          },
          {
            "identity": "rim",
            "map": "./effectiveTime[type=IVL_TS]"
          },
          {
            "identity": "dicom",
            "map": "EventDateTime"
          },
          {
            "identity": "w3c.prov",
            "map": "Activity.startTime & Activity.endTime"
          },
          {
            "identity": "fhirprovenance",
            "map": "Provenance.occurred[x]"
          }
        ]
      },
      {
        "id": "AuditEvent.period.start",
        "path": "AuditEvent.period.start",
        "short": "해당 유효 기간의 시작 시점 (설정된 날짜 포함)",
        "definition": "해당 유효 기간이 시작되는 시점을 나타냄. 유효 기간은 시작 시점으로 설정된 날짜를 포함함."
      },
      {
        "id": "AuditEvent.period.end",
        "path": "AuditEvent.period.end",
        "short": "해당 유효 기간의 종료 시점 (설정된 날짜 포함)",
        "definition": "기간의 종료. 기간의 종료가 누락된 경우, 인스턴스가 생성될 때 끝이 알려지거나 계획되지 않았음을 의미함. 시작일은 과거일 수 있고 종료일은 미래일 수 있음. 이는 해당 기간이 해당 시간에 종료될 예정임을 의미함"
      },
      {
        "id": "AuditEvent.recorded",
        "path": "AuditEvent.recorded",
        "short": "이벤트가 기록 된 시간",
        "definition": "이벤트가 기록 된 시간",
        "comment": "분산 시스템에서는 일종의 공통 시간 기반 (예 : NTP [RFC1305] server)이 좋은 구현 전략임",
        "requirements": "This ties an event to a specific date and time. Security audits typically require a consistent time base (e.g. UTC), to eliminate time-zone issues arising from geographical distribution.",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "instant"
          }
        ],
        "isSummary": true,
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.recorded"
          },
          {
            "identity": "rim",
            "map": ".effectiveTime"
          },
          {
            "identity": "w3c.prov",
            "map": "Activity.when"
          },
          {
            "identity": "fhirprovenance",
            "map": "Provenance.recorded"
          }
        ]
      },
      {
        "id": "AuditEvent.outcome",
        "path": "AuditEvent.outcome",
        "short": "성공 여부",
        "definition": "이벤트의 성공 여부를 나타냄.",
        "comment": "어떤 경우에는 부분적으로 \"success\" 알수 있음. 예를 들어, 방사선 연구의 불완전하거나 중단 된 전송 일 수 있음. 책임을 확립하기 위해 이러한 구분이 필수는 아님.",
        "max": "1",
        "type": [
          {
            "code": "code"
          }
        ],
        "isSummary": true,
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "AuditEventOutcome"
            }
          ],
          "strength": "required",
          "description": "이벤트(event)의 성공/실패 여부를 나타냄.",
          "valueSet": "http://hl7.org/fhir/ValueSet/audit-event-outcome|4.0.1"
        },
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.what[x]"
          },
          {
            "identity": "rim",
            "map": ".actionNegationInd"
          },
          {
            "identity": "dicom",
            "map": "EventOutcomeIndicator"
          }
        ]
      },
      {
        "id": "AuditEvent.outcomeDesc",
        "path": "AuditEvent.outcomeDesc",
        "short": "성공 여부에 대한 설명",
        "definition": "성공 여부에 대한 텍스트형 설명..",
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ],
        "isSummary": true,
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.what[x]"
          },
          {
            "identity": "rim",
            "map": ".outboundRelationship[typeCode=OUT].target.text"
          },
          {
            "identity": "dicom",
            "map": "EventOutcomeDescription"
          }
        ]
      },
      {
        "id": "AuditEvent.purposeOfEvent",
        "path": "AuditEvent.purposeOfEvent",
        "short": "이벤트의 발생 이유",
        "definition": "이벤트의 발생 이유.",
        "comment": "에이전트에 특정한 경우 AuditEvent.agent.purposeOfUse를 사용하고 그렇지 않으면 AuditEvent.purposeOfEvent를 사용. 예를 들어, machine-to-machine 전송(transfer) 중에 이벤트의 원인이 된 감사 시스템은 명확하지 않을 수 있지만 그 이유는 알고 있음.",
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "isSummary": true,
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "AuditPurposeOfUse"
            }
          ],
          "strength": "extensible",
          "description": "The reason the activity took place.",
          "valueSet": "http://terminology.hl7.org/ValueSet/v3-PurposeOfUse"
        },
        "mapping": [
          {
            "identity": "workflow",
            "map": "Event.reasonCode"
          },
          {
            "identity": "w5",
            "map": "FiveWs.why[x]"
          },
          {
            "identity": "rim",
            "map": "* .reasonCode [ControlActReason when Act.class = CACT Control Act]\n*.outboundRelationship[typeCode=RSON].target"
          },
          {
            "identity": "dicom",
            "map": "EventPurposeOfUse"
          },
          {
            "identity": "w3c.prov",
            "map": "Activity.Activity"
          },
          {
            "identity": "fhirprovenance",
            "map": "Provenance.reason, Provenance.activity"
          }
        ]
      },
      {
        "id": "AuditEvent.purposeOfEvent.coding",
        "path": "AuditEvent.purposeOfEvent.coding",
        "short": "전문용어체계(terminology system)에 의해 정의된 코드",
        "definition": "전문용어체계(terminology system)에 의해 정의된 코드를 참조"
      },
      {
        "id": "AuditEvent.purposeOfEvent.coding.system",
        "path": "AuditEvent.purposeOfEvent.coding.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.purposeOfEvent.coding.version",
        "path": "AuditEvent.purposeOfEvent.coding.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.purposeOfEvent.coding.code",
        "path": "AuditEvent.purposeOfEvent.coding.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.purposeOfEvent.coding.display",
        "path": "AuditEvent.purposeOfEvent.coding.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.purposeOfEvent.coding.userSelected",
        "path": "AuditEvent.purposeOfEvent.coding.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.purposeOfEvent.text",
        "path": "AuditEvent.purposeOfEvent.text",
        "short": "개념에 대한 일반 텍스트 묘사",
        "definition": "데이터를 입력한 사용자의 입장에서 보거나/선택하거나/언급한대로의 개념, 혹은 사용자가 의도한 의미를 사람이 사용하는 언어로 표현한 것임."
      },
      {
        "id": "AuditEvent.agent",
        "path": "AuditEvent.agent",
        "short": "이벤트와 연관된 활동 수행자",
        "definition": "기록되는 이벤트 또는 활동에 역할을 수행하는 수행자.",
        "comment": "다수의 에이전트가 이벤트 또는 활동과 연관 될 수 있음 (예: 활동에 대한 일부 책임이 있음). 예를 들어, 활동은 다른 사용자를 위해 한 사용자에 의해 시작되거나 그 이상의 사용자가 관련 될 수 있음. 그러나 한 명의 사용자만 활동의 initiator/requestor가 될 수 있음.",
        "requirements": "An agent can be a person, an organization, software, device, or other actors that may be ascribed responsibility.",
        "alias": [
          "ActiveParticipant"
        ],
        "min": 1,
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mapping": [
          {
            "identity": "workflow",
            "map": "Event.performer"
          },
          {
            "identity": "w5",
            "map": "FiveWs.who"
          },
          {
            "identity": "rim",
            "map": ".participation"
          },
          {
            "identity": "dicom",
            "map": "ActiveParticipant"
          },
          {
            "identity": "w3c.prov",
            "map": "Agent"
          },
          {
            "identity": "fhirprovenance",
            "map": "Provenance.agent"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.type",
        "path": "AuditEvent.agent.type",
        "short": "에이전트(agent)가 참여한 방법",
        "definition": "이벤트를 수행 할 때 사용자가 플레이하는 참여 유형을 지정함",
        "max": "1",
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "AuditAgentType"
            }
          ],
          "strength": "extensible",
          "description": "The Participation type of the agent to the event.",
          "valueSet": "http://hl7.org/fhir/ValueSet/participation-role-type"
        },
        "mapping": [
          {
            "identity": "workflow",
            "map": "Event.performer.function"
          },
          {
            "identity": "w5",
            "map": "FiveWs.who"
          },
          {
            "identity": "rim",
            "map": ".typeCode and/or .functionCode"
          },
          {
            "identity": "dicom",
            "map": "RoleIdCode"
          },
          {
            "identity": "w3c.prov",
            "map": "Agent.Attribution"
          },
          {
            "identity": "fhirprovenance",
            "map": "Provenance.agent.type"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.type.coding",
        "path": "AuditEvent.agent.type.coding",
        "short": "전문용어체계(terminology system)에 의해 정의된 코드",
        "definition": "전문용어체계(terminology system)에 의해 정의된 코드를 참조"
      },
      {
        "id": "AuditEvent.agent.type.coding.system",
        "path": "AuditEvent.agent.type.coding.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.agent.type.coding.version",
        "path": "AuditEvent.agent.type.coding.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.agent.type.coding.code",
        "path": "AuditEvent.agent.type.coding.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.agent.type.coding.display",
        "path": "AuditEvent.agent.type.coding.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.agent.type.coding.userSelected",
        "path": "AuditEvent.agent.type.coding.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.agent.type.text",
        "path": "AuditEvent.agent.type.text",
        "short": "개념에 대한 일반 텍스트 묘사",
        "definition": "데이터를 입력한 사용자의 입장에서 보거나/선택하거나/언급한대로의 개념, 혹은 사용자가 의도한 의미를 사람이 사용하는 언어로 표현한 것임."
      },
      {
        "id": "AuditEvent.agent.role",
        "path": "AuditEvent.agent.role",
        "short": "실행자의 역할",
        "definition": "엑세스 제어 보안 시스템 (예: RBAC, ABAC)의 local code에서 정의된 사용자의 보안 역할 (security role).",
        "comment": "이벤트와 관련된 역할이어야함. 철저한 역할 목록이 아니어야함.",
        "requirements": "This value ties an audited event to a user's role(s). It is an optional value that might be used to group events for analysis by user functional role categories.",
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "AuditAgentRole"
            }
          ],
          "strength": "example",
          "description": "What security role enabled the agent to participate in the event.",
          "valueSet": "http://hl7.org/fhir/ValueSet/security-role-type"
        },
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.who"
          },
          {
            "identity": "rim",
            "map": ".role"
          },
          {
            "identity": "dicom",
            "map": "RoleIdCode"
          },
          {
            "identity": "w3c.prov",
            "map": "Agent.Attribution"
          },
          {
            "identity": "fhirprovenance",
            "map": "Provenance.agent.role"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.role.coding",
        "path": "AuditEvent.agent.role.coding",
        "short": "전문용어체계(terminology system)에 의해 정의된 코드",
        "definition": "전문용어체계(terminology system)에 의해 정의된 코드를 참조"
      },
      {
        "id": "AuditEvent.agent.role.coding.system",
        "path": "AuditEvent.agent.role.coding.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.agent.role.coding.version",
        "path": "AuditEvent.agent.role.coding.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.agent.role.coding.code",
        "path": "AuditEvent.agent.role.coding.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.agent.role.coding.display",
        "path": "AuditEvent.agent.role.coding.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.agent.role.coding.userSelected",
        "path": "AuditEvent.agent.role.coding.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.agent.role.text",
        "path": "AuditEvent.agent.role.text",
        "short": "개념에 대한 일반 텍스트 묘사",
        "definition": "데이터를 입력한 사용자의 입장에서 보거나/선택하거나/언급한대로의 개념, 혹은 사용자가 의도한 의미를 사람이 사용하는 언어로 표현한 것임."
      },
      {
        "id": "AuditEvent.agent.who",
        "path": "AuditEvent.agent.who",
        "short": "who의 식별자(Identifier)",
        "definition": "이벤트에 관련된 에이전트가 누구(Who)인지에 대한 참고문(Reference).",
        "comment": "사용자 ID를 사용할 수있는 경우 who.identifier로 이동합니다.",
        "requirements": "This field ties an audit event to a specific resource or identifier.",
        "alias": [
          "userId"
        ],
        "max": "1",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/PractitionerRole",
              "http://hl7.org/fhir/StructureDefinition/Practitioner",
              "http://hl7.org/fhir/StructureDefinition/Organization",
              "http://hl7.org/fhir/StructureDefinition/Device",
              "http://hl7.org/fhir/StructureDefinition/Patient",
              "http://hl7.org/fhir/StructureDefinition/RelatedPerson"
            ]
          }
        ],
        "isSummary": true,
        "mapping": [
          {
            "identity": "workflow",
            "map": "Event.performer.actor"
          },
          {
            "identity": "w5",
            "map": "FiveWs.who"
          },
          {
            "identity": "rim",
            "map": ".id"
          },
          {
            "identity": "dicom",
            "map": "UserId"
          },
          {
            "identity": "w3c.prov",
            "map": "Agent.Identity"
          },
          {
            "identity": "fhirprovenance",
            "map": "Provenance.agent.who"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.who.reference",
        "path": "AuditEvent.agent.who.reference",
        "short": "문안 참조, 상대적, 내부적 혹은 절대적인 URL",
        "definition": "다른 리소스(resource)을 찾을 수 있는 위치에 대한 참조를 의미함. 해당 참조는 service base URL에 상대적인 경우 상대 참조, 혹은 해당 리소스를 찾을 수 있는 위치인 절대 URL일 수 있음. 해당 참조는 버전에 따라 다를 수 있음. 해당 참조가 FHIR RESTful 서버가 아닌 경우, 버전에 따라 다른 것으로 간주함. 내부 구문 참조('#'으로 시작)는 포함되어 있는 리소스를 참조함."
      },
      {
        "id": "AuditEvent.agent.who.type",
        "path": "AuditEvent.agent.who.type",
        "short": "참조(reference)가 참조하는 유형  (예. \"Patient\")",
        "definition": "참조 대상의 예상 형식임. Reference.type과 Reference.reference가 모두 채워지고 Reference.reference가 FHIR URL이면 두가지 모두 일치해야함. 유형은이 참조가 참조하는 유형 인 리소스 정의의 표준 URL임. 참조는 http://hl7.org/fhir/StructureDefinition/과 관련된 URL임. (예) \" 환자 \" http://hl7.org/fhir/StructureDefinition/Patient에 대한 참조. 절대 URL은 논리 모델에만 허용됨 (리소스가 아닌 논리 모델의 참조에서만 사용할 수 있음)."
      },
      {
        "id": "AuditEvent.agent.who.identifier",
        "path": "AuditEvent.agent.who.identifier",
        "short": "문안 참조를 알 수 없는 경우의 논리 참조 (logical reference)",
        "definition": "대상 리소스의 식별자. 이것은 다른 리소스를 직접 참조할 방법이 없을 때 사용- 해당 앤티티(entity)가 FHIR 서버를 통해 사용할 수 없거나  리소스 작성자가 알려진 식별자를 실제 위치로 변활할 방법이 없기 때문에 이 방법이 사용됨. Reference.identifier가 실제로 FHIR 인스턴스로 노출되는 것을 가르킬(point) 필요는 없지만, FHIR 인스턴스로 노출될 것으로 예상되는 비즈니스 개념을 가리켜야하며, 해당 인스턴스는 참조가 허용되는 FHIR 리소스 유형이여야함."
      },
      {
        "id": "AuditEvent.agent.who.identifier.use",
        "path": "AuditEvent.agent.who.identifier.use",
        "short": "usual | official | temp | secondary | old (If known)",
        "definition": "해당 식별자의 목적"
      },
      {
        "id": "AuditEvent.agent.who.identifier.type",
        "path": "AuditEvent.agent.who.identifier.type",
        "short": "식별자에 대한 설명",
        "definition": "특정 목적으로 사용되는 식별자를 결정하기 위해 사용하는 식별자의 코드 유형을 나타냄."
      },
      {
        "id": "AuditEvent.agent.who.identifier.type.coding",
        "path": "AuditEvent.agent.who.identifier.type.coding",
        "short": "전문용어체계(terminology system)에 의해 정의된 코드",
        "definition": "전문용어체계(terminology system)에 의해 정의된 코드를 참조"
      },
      {
        "id": "AuditEvent.agent.who.identifier.type.coding.system",
        "path": "AuditEvent.agent.who.identifier.type.coding.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.agent.who.identifier.type.coding.version",
        "path": "AuditEvent.agent.who.identifier.type.coding.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.agent.who.identifier.type.coding.code",
        "path": "AuditEvent.agent.who.identifier.type.coding.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.agent.who.identifier.type.coding.display",
        "path": "AuditEvent.agent.who.identifier.type.coding.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.agent.who.identifier.type.coding.userSelected",
        "path": "AuditEvent.agent.who.identifier.type.coding.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.agent.who.identifier.type.text",
        "path": "AuditEvent.agent.who.identifier.type.text",
        "short": "개념에 대한 일반 텍스트 묘사",
        "definition": "데이터를 입력한 사용자의 입장에서 보거나/선택하거나/언급한대로의 개념, 혹은 사용자가 의도한 의미를 사람이 사용하는 언어로 표현한 것임."
      },
      {
        "id": "AuditEvent.agent.who.identifier.system",
        "path": "AuditEvent.agent.who.identifier.system",
        "short": "식별자 값의 네임스페이스(namespace)",
        "definition": "설정값에 대한 네임 스페이스 (namespace), 즉 고유한 설정값을 설명하는 URL을 설정함."
      },
      {
        "id": "AuditEvent.agent.who.identifier.value",
        "path": "AuditEvent.agent.who.identifier.value",
        "short": "고유 설정값",
        "definition": "일반적으로 식별자의 사용과와 관련이 있으며, 시스템 컨텍스트 (context) 내에서 고유한 식별자의 일부분임."
      },
      {
        "id": "AuditEvent.agent.who.identifier.period",
        "path": "AuditEvent.agent.who.identifier.period",
        "short": "식별자의 유효 기간",
        "definition": "식별자가 사용 가능했거나 가능한 기간을 나타냄."
      },
      {
        "id": "AuditEvent.agent.who.identifier.period.start",
        "path": "AuditEvent.agent.who.identifier.period.start",
        "short": "해당 유효 기간의 시작 시점 (설정된 날짜 포함)",
        "definition": "해당 유효 기간이 시작되는 시점을 나타냄. 유효 기간은 시작 시점으로 설정된 날짜를 포함함."
      },
      {
        "id": "AuditEvent.agent.who.identifier.period.end",
        "path": "AuditEvent.agent.who.identifier.period.end",
        "short": "해당 유효 기간의 종료 시점 (설정된 날짜 포함)",
        "definition": "기간의 종료. 기간의 종료가 누락된 경우, 인스턴스가 생성될 때 끝이 알려지거나 계획되지 않았음을 의미함. 시작일은 과거일 수 있고 종료일은 미래일 수 있음. 이는 해당 기간이 해당 시간에 종료될 예정임을 의미함"
      },
      {
        "id": "AuditEvent.agent.who.identifier.assigner",
        "path": "AuditEvent.agent.who.identifier.assigner",
        "short": "식별자를 발급한 조직 (단순 텍스트 기입 가능)",
        "definition": "식별자를 발급하고 관리하는 조직을 나타냄."
      },
      {
        "id": "AuditEvent.agent.who.display",
        "path": "AuditEvent.agent.who.display",
        "short": "해당 리소스를 대체하는 텍스트 설명",
        "definition": "리소스 참조 외에도 리소스를 식별하기 위한 일반 텍스트 설명임."
      },
      {
        "id": "AuditEvent.agent.altId",
        "path": "AuditEvent.agent.altId",
        "short": "대체 사용자 ID",
        "definition": "수행자의 대체 식별자. 인간의 경우, 인증 시스템의 사용자 식별 텍스트임. 가능한 경우 이 식별자는 공통 인증 시스템에서 정해진 식별자임.",
        "requirements": "In some situations, a human user may authenticate with one identity but, to access a specific application system, may use a synonymous identify. For example, some \"single sign on\" implementations will do this. The alternative identifier would then be the original identify  used for authentication, and the User ID is the one known to and used by the application.",
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.who"
          },
          {
            "identity": "rim",
            "map": ".id (distinguish id type by root)"
          },
          {
            "identity": "dicom",
            "map": "AlternativeUserId"
          },
          {
            "identity": "w3c.prov",
            "map": "Agent.Identity"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.name",
        "path": "AuditEvent.agent.name",
        "short": "사람에게 적합한 수행자 이름.",
        "definition": "(사람이 이해 할 수 있는) 수행자의 이름.",
        "requirements": "The User ID and Authorization User ID may be internal or otherwise obscure values. This field assists the auditor in identifying the actual user.",
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.who"
          },
          {
            "identity": "rim",
            "map": ".name"
          },
          {
            "identity": "dicom",
            "map": "UserName"
          },
          {
            "identity": "w3c.prov",
            "map": "Agent.Identity"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.requestor",
        "path": "AuditEvent.agent.requestor",
        "short": "수행자가 감사되는 이벤트를 개시했는지에 대한 여부",
        "definition": "수행자가 감사되는 이벤트를 개시했는지에 대한 여부.",
        "comment": "이니시에이터는 하나만 있을 수 있음. 이니시에이터가 명확하지 않은 경우 그중 에이전트 중 하나를 이니시에이터로 선택하지 말아야함.",
        "requirements": "This value is used to distinguish between requestor-users and recipient-users. For example, one person may initiate a report-output to be sent to another user.",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "boolean"
          }
        ],
        "isSummary": true,
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.who"
          },
          {
            "identity": "rim",
            "map": "If participation.typeCode was author, then true"
          },
          {
            "identity": "dicom",
            "map": "UserIsRequestor"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.location",
        "path": "AuditEvent.agent.location",
        "short": "장소",
        "definition": "감사 이벤트가 일어난 장소.",
        "max": "1",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/Location"
            ]
          }
        ],
        "mapping": [
          {
            "identity": "workflow",
            "map": "Event.location"
          },
          {
            "identity": "w5",
            "map": "FiveWs.where[x]"
          },
          {
            "identity": "rim",
            "map": "* Role.Class =SDLOC\n*Role.Code = ServiceDeliveryLocationRoleType\n *Entity.Code  = PlaceEntityType = df.Types of places for  Entity.Class = PLC\n*EntityClass = PLC = df.A physical place or site with its containing structure. May be natural or man-made. The geographic position of a place might or might not be constant."
          },
          {
            "identity": "w3c.prov",
            "map": "Activity.location"
          },
          {
            "identity": "fhirprovenance",
            "map": "Provenance.location"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.location.reference",
        "path": "AuditEvent.agent.location.reference",
        "short": "문안 참조, 상대적, 내부적 혹은 절대적인 URL",
        "definition": "다른 리소스(resource)을 찾을 수 있는 위치에 대한 참조를 의미함. 해당 참조는 service base URL에 상대적인 경우 상대 참조, 혹은 해당 리소스를 찾을 수 있는 위치인 절대 URL일 수 있음. 해당 참조는 버전에 따라 다를 수 있음. 해당 참조가 FHIR RESTful 서버가 아닌 경우, 버전에 따라 다른 것으로 간주함. 내부 구문 참조('#'으로 시작)는 포함되어 있는 리소스를 참조함."
      },
      {
        "id": "AuditEvent.agent.location.type",
        "path": "AuditEvent.agent.location.type",
        "short": "참조(reference)가 참조하는 유형  (예. \"Patient\")",
        "definition": "참조 대상의 예상 형식임. Reference.type과 Reference.reference가 모두 채워지고 Reference.reference가 FHIR URL이면 두가지 모두 일치해야함. 유형은이 참조가 참조하는 유형 인 리소스 정의의 표준 URL임. 참조는 http://hl7.org/fhir/StructureDefinition/과 관련된 URL임. (예) \" 환자 \" http://hl7.org/fhir/StructureDefinition/Patient에 대한 참조. 절대 URL은 논리 모델에만 허용됨 (리소스가 아닌 논리 모델의 참조에서만 사용할 수 있음)."
      },
      {
        "id": "AuditEvent.agent.location.identifier",
        "path": "AuditEvent.agent.location.identifier",
        "short": "문안 참조를 알 수 없는 경우의 논리 참조 (logical reference)",
        "definition": "대상 리소스의 식별자. 이것은 다른 리소스를 직접 참조할 방법이 없을 때 사용- 해당 앤티티(entity)가 FHIR 서버를 통해 사용할 수 없거나  리소스 작성자가 알려진 식별자를 실제 위치로 변활할 방법이 없기 때문에 이 방법이 사용됨. Reference.identifier가 실제로 FHIR 인스턴스로 노출되는 것을 가르킬(point) 필요는 없지만, FHIR 인스턴스로 노출될 것으로 예상되는 비즈니스 개념을 가리켜야하며, 해당 인스턴스는 참조가 허용되는 FHIR 리소스 유형이여야함."
      },
      {
        "id": "AuditEvent.agent.location.identifier.use",
        "path": "AuditEvent.agent.location.identifier.use",
        "short": "usual | official | temp | secondary | old (If known)",
        "definition": "해당 식별자의 목적"
      },
      {
        "id": "AuditEvent.agent.location.identifier.type",
        "path": "AuditEvent.agent.location.identifier.type",
        "short": "식별자에 대한 설명",
        "definition": "특정 목적으로 사용되는 식별자를 결정하기 위해 사용하는 식별자의 코드 유형을 나타냄."
      },
      {
        "id": "AuditEvent.agent.location.identifier.type.coding",
        "path": "AuditEvent.agent.location.identifier.type.coding",
        "short": "전문용어체계(terminology system)에 의해 정의된 코드",
        "definition": "전문용어체계(terminology system)에 의해 정의된 코드를 참조"
      },
      {
        "id": "AuditEvent.agent.location.identifier.type.coding.system",
        "path": "AuditEvent.agent.location.identifier.type.coding.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.agent.location.identifier.type.coding.version",
        "path": "AuditEvent.agent.location.identifier.type.coding.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.agent.location.identifier.type.coding.code",
        "path": "AuditEvent.agent.location.identifier.type.coding.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.agent.location.identifier.type.coding.display",
        "path": "AuditEvent.agent.location.identifier.type.coding.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.agent.location.identifier.type.coding.userSelected",
        "path": "AuditEvent.agent.location.identifier.type.coding.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.agent.location.identifier.type.text",
        "path": "AuditEvent.agent.location.identifier.type.text",
        "short": "개념에 대한 일반 텍스트 묘사",
        "definition": "데이터를 입력한 사용자의 입장에서 보거나/선택하거나/언급한대로의 개념, 혹은 사용자가 의도한 의미를 사람이 사용하는 언어로 표현한 것임."
      },
      {
        "id": "AuditEvent.agent.location.identifier.system",
        "path": "AuditEvent.agent.location.identifier.system",
        "short": "식별자 값의 네임스페이스(namespace)",
        "definition": "설정값에 대한 네임 스페이스 (namespace), 즉 고유한 설정값을 설명하는 URL을 설정함."
      },
      {
        "id": "AuditEvent.agent.location.identifier.value",
        "path": "AuditEvent.agent.location.identifier.value",
        "short": "고유 설정값",
        "definition": "일반적으로 식별자의 사용과와 관련이 있으며, 시스템 컨텍스트 (context) 내에서 고유한 식별자의 일부분임."
      },
      {
        "id": "AuditEvent.agent.location.identifier.period",
        "path": "AuditEvent.agent.location.identifier.period",
        "short": "식별자의 유효 기간",
        "definition": "식별자가 사용 가능했거나 가능한 기간을 나타냄."
      },
      {
        "id": "AuditEvent.agent.location.identifier.period.start",
        "path": "AuditEvent.agent.location.identifier.period.start",
        "short": "해당 유효 기간의 시작 시점 (설정된 날짜 포함)",
        "definition": "해당 유효 기간이 시작되는 시점을 나타냄. 유효 기간은 시작 시점으로 설정된 날짜를 포함함."
      },
      {
        "id": "AuditEvent.agent.location.identifier.period.end",
        "path": "AuditEvent.agent.location.identifier.period.end",
        "short": "해당 유효 기간의 종료 시점 (설정된 날짜 포함)",
        "definition": "기간의 종료. 기간의 종료가 누락된 경우, 인스턴스가 생성될 때 끝이 알려지거나 계획되지 않았음을 의미함. 시작일은 과거일 수 있고 종료일은 미래일 수 있음. 이는 해당 기간이 해당 시간에 종료될 예정임을 의미함"
      },
      {
        "id": "AuditEvent.agent.location.identifier.assigner",
        "path": "AuditEvent.agent.location.identifier.assigner",
        "short": "식별자를 발급한 조직 (단순 텍스트 기입 가능)",
        "definition": "식별자 발급/관리(issued/manages) 조직"
      },
      {
        "id": "AuditEvent.agent.location.display",
        "path": "AuditEvent.agent.location.display",
        "short": "해당 리소스를 대체하는 텍스트 설명",
        "definition": "리소스 참조 외에도 리소스를 식별하기 위한 일반 텍스트 설명임."
      },
      {
        "id": "AuditEvent.agent.policy",
        "path": "AuditEvent.agent.policy",
        "short": "감사 이벤트를 승인한 정책",
        "definition": "기록될 활동을 승인한 정책 또는 계획. 일반적으로 단일 활동에는 환자 동의, 보증인 자금 지원 등과 같은 여러 가지 적용 가능한 정책이 있을 수 있음. 이 정책은 사용된 보안 토큰 (security token)을 나타낼 것임.",
        "comment": "예 : OAuth 토큰이 권한을 부여하면 OAuth 토큰의 고유 식별자가 정책 요소에 배치됨. 정책 엔진 (예 : XACML)이 정책 논리를 보유하는 경우 고유 정책 식별자가 정책 요소에 배치됨",
        "requirements": "This value is used retrospectively to determine the authorization policies.",
        "type": [
          {
            "code": "uri"
          }
        ],
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.why[x]"
          },
          {
            "identity": "rim",
            "map": "ActPolicyType"
          },
          {
            "identity": "dicom",
            "map": "ParticipantRoleIDCode"
          },
          {
            "identity": "fhirprovenance",
            "map": "Provenance.policy"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.media",
        "path": "AuditEvent.agent.media",
        "short": "미디어 유형",
        "definition": "관련된 미디어 유형. 이벤트를 미디어로 내보내거나 가져올 때 사용됨.",
        "requirements": "Usually, this is used instead of specifying a network address. This field is not used for Media Id (i.e. the serial number of a CD).",
        "max": "1",
        "type": [
          {
            "code": "Coding"
          }
        ],
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "DICOMMediaType"
            }
          ],
          "strength": "extensible",
          "description": "Used when the event is about exporting/importing onto media.",
          "valueSet": "http://hl7.org/fhir/ValueSet/dicm-405-mediatype"
        },
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.where[x]"
          },
          {
            "identity": "rim",
            "map": ".player.description.mediaType"
          },
          {
            "identity": "dicom",
            "map": "MediaType"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.media.system",
        "path": "AuditEvent.agent.media.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.agent.media.version",
        "path": "AuditEvent.agent.media.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.agent.media.code",
        "path": "AuditEvent.agent.media.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.agent.media.display",
        "path": "AuditEvent.agent.media.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.agent.media.userSelected",
        "path": "AuditEvent.agent.media.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.agent.network",
        "path": "AuditEvent.agent.network",
        "short": "애플리케이션 작업 (application activity)의 논리적 네트워크 위치 (logical network location)",
        "definition": "애플리케이션 작업 (application activity)의 논리적 네트워크 위치 (logical network location).",
        "max": "1",
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.where[x]"
          },
          {
            "identity": "rim",
            "map": ".player.description.reference"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.network.address",
        "path": "AuditEvent.agent.network.address",
        "short": "사용자 장치의 네트워크 액세스 지점에 대한 식별자",
        "definition": "감사 이벤트에 대한 사용자 장치의 네트워크 액세스 지점에 대한 식별자.",
        "comment": "장치 ID, IP 주소 또는 기기와 관련된 다른 식별자(identifier) 일 수 있음.",
        "requirements": "This datum identifies the user's network access point, which may be distinct from the server that performed the action. It is an optional value that may be used to group events recorded on separate servers for analysis of a specific network access point's data access across all servers.",
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.where[x]"
          },
          {
            "identity": "rim",
            "map": "pre-coordinated into URL"
          },
          {
            "identity": "dicom",
            "map": "NetworkAccessPointID"
          },
          {
            "identity": "w3c.prov",
            "map": "Agent.Location"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.network.type",
        "path": "AuditEvent.agent.network.type",
        "short": "네트워크 액세스 지점 유형",
        "definition": "감사 이벤트를 발생한 네트워크 액세스 지점의 유형에 대한 식별자.",
        "requirements": "This datum identifies the type of network access point identifier of the user device for the audit event. It is an optional value that may be used to group events recorded on separate servers for analysis of access according to a network access point's type.",
        "max": "1",
        "type": [
          {
            "code": "code"
          }
        ],
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "AuditEventAgentNetworkType"
            }
          ],
          "strength": "required",
          "description": "The type of network access point of this agent in the audit event.",
          "valueSet": "http://hl7.org/fhir/ValueSet/network-type|4.0.1"
        },
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.where[x]"
          },
          {
            "identity": "rim",
            "map": "pre-coordinated into URL"
          },
          {
            "identity": "dicom",
            "map": "NetworkAccessPointTypeCode"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.purposeOfUse",
        "path": "AuditEvent.agent.purposeOfUse",
        "short": "사용자에 대한 이유",
        "definition": "이벤트가 기록되는 동안 사용된 이유 (이 수행자에 한정됨).",
        "comment": "에이전트에 특정한 것을 알고있는 경우 AuditEvent.agent.purposeOfUse를 사용하고 그렇지 않으면 AuditEvent.purposeOfEvent를 사용. 예를 들어, machine-to-machine 전송 중에 이벤트의 원인이 된 감사 시스템은 명확하지 않을 수 있지만 그 이유는 알고 있음.",
        "type": [
          {
            "code": "CodeableConcept"
          }
        ],
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "AuditPurposeOfUse"
            }
          ],
          "strength": "extensible",
          "description": "The reason the activity took place.",
          "valueSet": "http://terminology.hl7.org/ValueSet/v3-PurposeOfUse"
        },
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.why[x]"
          },
          {
            "identity": "rim",
            "map": "*.reasonCode [ActHealthInformationPurposeOfUseReason codes/v:PurposeOfUse\n(2.16.840.1.113883.1.11.20448)\n* .outboundRelationship[typeCode=RSON or SUBJ].target"
          },
          {
            "identity": "w3c.prov",
            "map": "Agent.Activity"
          }
        ]
      },
      {
        "id": "AuditEvent.agent.purposeOfUse.coding",
        "path": "AuditEvent.agent.purposeOfUse.coding",
        "short": "전문용어체계(terminology system)에 의해 정의된 코드",
        "definition": "전문용어체계(terminology system)에 의해 정의된 코드를 참조"
      },
      {
        "id": "AuditEvent.agent.purposeOfUse.coding.system",
        "path": "AuditEvent.agent.purposeOfUse.coding.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.agent.purposeOfUse.coding.version",
        "path": "AuditEvent.agent.purposeOfUse.coding.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.agent.purposeOfUse.coding.code",
        "path": "AuditEvent.agent.purposeOfUse.coding.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.agent.purposeOfUse.coding.display",
        "path": "AuditEvent.agent.purposeOfUse.coding.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.agent.purposeOfUse.coding.userSelected",
        "path": "AuditEvent.agent.purposeOfUse.coding.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.agent.purposeOfUse.text",
        "path": "AuditEvent.agent.purposeOfUse.text",
        "short": "개념에 대한 일반 텍스트 묘사",
        "definition": "데이터를 입력한 사용자의 입장에서 보거나/선택하거나/언급한대로의 개념, 혹은 사용자가 의도한 의미를 사람이 사용하는 언어로 표현한 것임."
      },
      {
        "id": "AuditEvent.source",
        "path": "AuditEvent.source",
        "short": "감사 이벤트 리포터 (reporter)",
        "definition": "감사 이벤트를 보고하는 시스템.",
        "comment": "multi-tier, 분산 또는 복합 애플리케이션은 소스 식별(identification)을 모호하게 만들기 때문에 이 필드 모음은 이벤트에 적극적으로 관련된 각 애플리케이션 또는 프로세스에 대해 반복 될 수 있음. 예를 들어, 여러 값 집합은 n-tier 분산 응용 프로그램에서 참여하는 웹 서버, 응용 프로그램 프로세스 및 데이터베이스 서버 thread를 식별 할 수 있음. 패시브 이벤트 참가자들 (예 : 저수준 네트워크 전송)은 식별 할 필요가 없음",
        "requirements": "The event is reported by one source.",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.witness"
          },
          {
            "identity": "rim",
            "map": ".participation[typeCode=INF].role[classCode=ASSIGN].player[classCode=DEV, determinerCode=INSTANCE]"
          },
          {
            "identity": "dicom",
            "map": "AuditSourceIdentification"
          }
        ]
      },
      {
        "id": "AuditEvent.source.site",
        "path": "AuditEvent.source.site",
        "short": "기관 (enterprise) 내의 논리적 소스 (logical source) 위치",
        "definition": "의료 네트워크 내의 논리적 소스 (logical source) 위치. 예를 들어 다중 제공자 그룹 내의 병원 또는 기타 의료 서비스 제공자의 위치.",
        "requirements": "This value differentiates among the sites in a multi-site enterprise health information system.",
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.witness"
          },
          {
            "identity": "rim",
            "map": ".scopedRole[classCode=LOCE].player.desc"
          },
          {
            "identity": "dicom",
            "map": "AuditEnterpriseSiteId"
          }
        ]
      },
      {
        "id": "AuditEvent.source.observer",
        "path": "AuditEvent.source.observer",
        "short": "이벤트를 탐지하는 소스의 정체",
        "definition": "이벤트가 탐지된 소스 (source) 의 정체.",
        "requirements": "This field ties the event to a specific source system. It may be used to group events for analysis according to where the event was detected.",
        "alias": [
          "SourceId"
        ],
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/PractitionerRole",
              "http://hl7.org/fhir/StructureDefinition/Practitioner",
              "http://hl7.org/fhir/StructureDefinition/Organization",
              "http://hl7.org/fhir/StructureDefinition/Device",
              "http://hl7.org/fhir/StructureDefinition/Patient",
              "http://hl7.org/fhir/StructureDefinition/RelatedPerson"
            ]
          }
        ],
        "isSummary": true,
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.witness"
          },
          {
            "identity": "rim",
            "map": ".id"
          },
          {
            "identity": "dicom",
            "map": "AuditSourceId"
          }
        ]
      },
      {
        "id": "AuditEvent.source.observer.reference",
        "path": "AuditEvent.source.observer.reference",
        "short": "문안 참조, 상대적, 내부적 혹은 절대적인 URL",
        "definition": "다른 리소스(resource)을 찾을 수 있는 위치에 대한 참조를 의미함. 해당 참조는 service base URL에 상대적인 경우 상대 참조, 혹은 해당 리소스를 찾을 수 있는 위치인 절대 URL일 수 있음. 해당 참조는 버전에 따라 다를 수 있음. 해당 참조가 FHIR RESTful 서버가 아닌 경우, 버전에 따라 다른 것으로 간주함. 내부 구문 참조('#'으로 시작)는 포함되어 있는 리소스를 참조함."
      },
      {
        "id": "AuditEvent.source.observer.type",
        "path": "AuditEvent.source.observer.type",
        "short": "참조(reference)가 참조하는 유형  (예. \"Patient\")",
        "definition": "참조 대상의 예상 형식임. Reference.type과 Reference.reference가 모두 채워지고 Reference.reference가 FHIR URL이면 두가지 모두 일치해야함. 유형은이 참조가 참조하는 유형 인 리소스 정의의 표준 URL임. 참조는 http://hl7.org/fhir/StructureDefinition/과 관련된 URL임. (예) \" 환자 \" http://hl7.org/fhir/StructureDefinition/Patient에 대한 참조. 절대 URL은 논리 모델에만 허용됨 (리소스가 아닌 논리 모델의 참조에서만 사용할 수 있음)."
      },
      {
        "id": "AuditEvent.source.observer.identifier",
        "path": "AuditEvent.source.observer.identifier",
        "short": "문안 참조를 알 수 없는 경우의 논리 참조 (logical reference)",
        "definition": "대상 리소스의 식별자. 이것은 다른 리소스를 직접 참조할 방법이 없을 때 사용- 해당 앤티티(entity)가 FHIR 서버를 통해 사용할 수 없거나  리소스 작성자가 알려진 식별자를 실제 위치로 변활할 방법이 없기 때문에 이 방법이 사용됨. Reference.identifier가 실제로 FHIR 인스턴스로 노출되는 것을 가르킬(point) 필요는 없지만, FHIR 인스턴스로 노출될 것으로 예상되는 비즈니스 개념을 가리켜야하며, 해당 인스턴스는 참조가 허용되는 FHIR 리소스 유형이여야함."
      },
      {
        "id": "AuditEvent.source.observer.identifier.use",
        "path": "AuditEvent.source.observer.identifier.use",
        "short": "usual | official | temp | secondary | old (If known)",
        "definition": "해당 식별자의 목적"
      },
      {
        "id": "AuditEvent.source.observer.identifier.type",
        "path": "AuditEvent.source.observer.identifier.type",
        "short": "식별자에 대한 설명",
        "definition": "특정 목적으로 사용되는 식별자를 결정하기 위해 사용하는 식별자의 코드 유형을 나타냄."
      },
      {
        "id": "AuditEvent.source.observer.identifier.type.coding",
        "path": "AuditEvent.source.observer.identifier.type.coding",
        "short": "전문용어체계(terminology system)에 의해 정의된 코드",
        "definition": "전문용어체계(terminology system)에 의해 정의된 코드를 참조"
      },
      {
        "id": "AuditEvent.source.observer.identifier.type.coding.system",
        "path": "AuditEvent.source.observer.identifier.type.coding.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.source.observer.identifier.type.coding.version",
        "path": "AuditEvent.source.observer.identifier.type.coding.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.source.observer.identifier.type.coding.code",
        "path": "AuditEvent.source.observer.identifier.type.coding.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.source.observer.identifier.type.coding.display",
        "path": "AuditEvent.source.observer.identifier.type.coding.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.source.observer.identifier.type.coding.userSelected",
        "path": "AuditEvent.source.observer.identifier.type.coding.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.source.observer.identifier.type.text",
        "path": "AuditEvent.source.observer.identifier.type.text",
        "short": "개념에 대한 일반 텍스트 묘사",
        "definition": "데이터를 입력한 사용자의 입장에서 보거나/선택하거나/언급한대로의 개념, 혹은 사용자가 의도한 의미를 사람이 사용하는 언어로 표현한 것임."
      },
      {
        "id": "AuditEvent.source.observer.identifier.system",
        "path": "AuditEvent.source.observer.identifier.system",
        "short": "식별자 값의 네임스페이스(namespace)",
        "definition": "설정값에 대한 네임 스페이스 (namespace), 즉 고유한 설정값을 설명하는 URL을 설정함."
      },
      {
        "id": "AuditEvent.source.observer.identifier.value",
        "path": "AuditEvent.source.observer.identifier.value",
        "short": "고유 설정값",
        "definition": "일반적으로 식별자의 사용과와 관련이 있으며, 시스템 컨텍스트 (context) 내에서 고유한 식별자의 일부분임."
      },
      {
        "id": "AuditEvent.source.observer.identifier.period",
        "path": "AuditEvent.source.observer.identifier.period",
        "short": "식별자의 유효 기간",
        "definition": "식별자가 사용 가능했거나 가능한 기간을 나타냄."
      },
      {
        "id": "AuditEvent.source.observer.identifier.period.start",
        "path": "AuditEvent.source.observer.identifier.period.start",
        "short": "해당 유효 기간의 시작 시점 (설정된 날짜 포함)",
        "definition": "해당 유효 기간이 시작되는 시점을 나타냄. 유효 기간은 시작 시점으로 설정된 날짜를 포함함."
      },
      {
        "id": "AuditEvent.source.observer.identifier.period.end",
        "path": "AuditEvent.source.observer.identifier.period.end",
        "short": "해당 유효 기간의 종료 시점 (설정된 날짜 포함)",
        "definition": "기간의 종료. 기간의 종료가 누락된 경우, 인스턴스가 생성될 때 끝이 알려지거나 계획되지 않았음을 의미함. 시작일은 과거일 수 있고 종료일은 미래일 수 있음. 이는 해당 기간이 해당 시간에 종료될 예정임을 의미함"
      },
      {
        "id": "AuditEvent.source.observer.identifier.assigner",
        "path": "AuditEvent.source.observer.identifier.assigner",
        "short": "식별자를 발급한 조직 (단순 텍스트 기입 가능)",
        "definition": "식별자를 발급하고 관리하는 조직을 나타냄."
      },
      {
        "id": "AuditEvent.source.observer.display",
        "path": "AuditEvent.source.observer.display",
        "short": "해당 리소스를 대체하는 텍스트 설명",
        "definition": "리소스 참조 외에도 리소스를 식별하기 위한 일반 텍스트 설명임."
      },
      {
        "id": "AuditEvent.source.type",
        "path": "AuditEvent.source.type",
        "short": "이벤트가 발생한 소스 (source) 유형",
        "definition": "이벤트가 발생한 소스 유형을 지정하는 코드.",
        "requirements": "This field indicates which type of source is identified by the Audit Source ID. It is an optional value that may be used to group events for analysis according to the type of source where the event occurred.",
        "type": [
          {
            "code": "Coding"
          }
        ],
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "AuditEventSourceType"
            }
          ],
          "strength": "extensible",
          "description": "Code specifying the type of system that detected and recorded the event.",
          "valueSet": "http://hl7.org/fhir/ValueSet/audit-source-type"
        },
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.witness"
          },
          {
            "identity": "rim",
            "map": ".code"
          },
          {
            "identity": "dicom",
            "map": "AuditSourceTypeCode"
          }
        ]
      },
      {
        "id": "AuditEvent.source.type.system",
        "path": "AuditEvent.source.type.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.source.type.version",
        "path": "AuditEvent.source.type.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.source.type.code",
        "path": "AuditEvent.source.type.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.source.type.display",
        "path": "AuditEvent.source.type.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.source.type.userSelected",
        "path": "AuditEvent.source.type.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.entity",
        "path": "AuditEvent.entity",
        "short": "사용된 데이터 도는 개체",
        "definition": "액세스 된 데이터 또는 개체의 특정 사례들.",
        "comment": "이벤트 식별(identification), 에이전트(agent) 식별(identification) 및 audit source identification이 감사 가능한 전체 이벤트를 문서화 하기에 충분하지 않은 경우 필수임. 이벤트에는 둘 이상의 항목이있을 수 있으므로 이 그룹의 값이 반복될 수 있음.",
        "requirements": "The event may have other entities involved.",
        "alias": [
          "ParticipantObject"
        ],
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "constraint": [
          {
            "key": "sev-1",
            "severity": "error",
            "human": "Either a name or a query (NOT both)",
            "expression": "name.empty() or query.empty()",
            "xpath": "not(exists(f:name)) or not(exists(f:query))",
            "source": "http://hl7.org/fhir/StructureDefinition/AuditEvent"
          }
        ],
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.what[x]"
          },
          {
            "identity": "rim",
            "map": ".outboundRelationship[typeCode=SUBJ].target  or  .participation[typeCode=SBJ].role"
          },
          {
            "identity": "dicom",
            "map": "ParticipantObjectIdentification"
          },
          {
            "identity": "w3c.prov",
            "map": "Entity"
          },
          {
            "identity": "fhirprovenance",
            "map": "Provenance.target, Provenance.entity"
          }
        ]
      },
      {
        "id": "AuditEvent.entity.what",
        "path": "AuditEvent.entity.what",
        "short": "리소스의 특정 인스턴스 (instance)",
        "definition": "리소스의 특정 인스턴스를 식별함. 참조는 버전별로 해야 함.",
        "max": "1",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/Resource"
            ]
          }
        ],
        "isSummary": true,
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.what[x]"
          },
          {
            "identity": "rim",
            "map": ".id"
          },
          {
            "identity": "dicom",
            "map": "ParticipantObjectID and ParticipantObjectIDTypeCode"
          },
          {
            "identity": "fhirprovenance",
            "map": "Provenance.target, Provenance.entity.what"
          }
        ]
      },
      {
        "id": "AuditEvent.entity.what.reference",
        "path": "AuditEvent.entity.what.reference",
        "short": "문안 참조, 상대적, 내부적 혹은 절대적인 URL",
        "definition": "다른 리소스(resource)을 찾을 수 있는 위치에 대한 참조를 의미함. 해당 참조는 service base URL에 상대적인 경우 상대 참조, 혹은 해당 리소스를 찾을 수 있는 위치인 절대 URL일 수 있음. 해당 참조는 버전에 따라 다를 수 있음. 해당 참조가 FHIR RESTful 서버가 아닌 경우, 버전에 따라 다른 것으로 간주함. 내부 구문 참조('#'으로 시작)는 포함되어 있는 리소스를 참조함."
      },
      {
        "id": "AuditEvent.entity.what.type",
        "path": "AuditEvent.entity.what.type",
        "short": "참조(reference)가 참조하는 유형  (예. \"Patient\")",
        "definition": "참조 대상의 예상 형식임. Reference.type과 Reference.reference가 모두 채워지고 Reference.reference가 FHIR URL이면 두가지 모두 일치해야함. 유형은이 참조가 참조하는 유형 인 리소스 정의의 표준 URL임. 참조는 http://hl7.org/fhir/StructureDefinition/과 관련된 URL임. (예) \" 환자 \" http://hl7.org/fhir/StructureDefinition/Patient에 대한 참조. 절대 URL은 논리 모델에만 허용됨 (리소스가 아닌 논리 모델의 참조에서만 사용할 수 있음)."
      },
      {
        "id": "AuditEvent.entity.what.identifier",
        "path": "AuditEvent.entity.what.identifier",
        "short": "문안 참조를 알 수 없는 경우의 논리 참조 (logical reference)",
        "definition": "대상 리소스의 식별자. 이것은 다른 리소스를 직접 참조할 방법이 없을 때 사용- 해당 앤티티(entity)가 FHIR 서버를 통해 사용할 수 없거나  리소스 작성자가 알려진 식별자를 실제 위치로 변활할 방법이 없기 때문에 이 방법이 사용됨. Reference.identifier가 실제로 FHIR 인스턴스로 노출되는 것을 가르킬(point) 필요는 없지만, FHIR 인스턴스로 노출될 것으로 예상되는 비즈니스 개념을 가리켜야하며, 해당 인스턴스는 참조가 허용되는 FHIR 리소스 유형이여야함."
      },
      {
        "id": "AuditEvent.entity.what.identifier.use",
        "path": "AuditEvent.entity.what.identifier.use",
        "short": "usual | official | temp | secondary | old (If known)",
        "definition": "해당 식별자의 목적"
      },
      {
        "id": "AuditEvent.entity.what.identifier.type",
        "path": "AuditEvent.entity.what.identifier.type",
        "short": "식별자에 대한 설명",
        "definition": "특정 목적으로 사용되는 식별자를 결정하기 위해 사용하는 식별자의 코드 유형을 나타냄."
      },
      {
        "id": "AuditEvent.entity.what.identifier.type.coding",
        "path": "AuditEvent.entity.what.identifier.type.coding",
        "short": "전문용어체계(terminology system)에 의해 정의된 코드",
        "definition": "전문용어체계(terminology system)에 의해 정의된 코드를 참조"
      },
      {
        "id": "AuditEvent.entity.what.identifier.type.coding.system",
        "path": "AuditEvent.entity.what.identifier.type.coding.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.entity.what.identifier.type.coding.version",
        "path": "AuditEvent.entity.what.identifier.type.coding.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.entity.what.identifier.type.coding.code",
        "path": "AuditEvent.entity.what.identifier.type.coding.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.entity.what.identifier.type.coding.display",
        "path": "AuditEvent.entity.what.identifier.type.coding.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.entity.what.identifier.type.coding.userSelected",
        "path": "AuditEvent.entity.what.identifier.type.coding.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.entity.what.identifier.type.text",
        "path": "AuditEvent.entity.what.identifier.type.text",
        "short": "개념에 대한 일반 텍스트 묘사",
        "definition": "데이터를 입력한 사용자의 입장에서 보거나/선택하거나/언급한대로의 개념, 혹은 사용자가 의도한 의미를 사람이 사용하는 언어로 표현한 것임."
      },
      {
        "id": "AuditEvent.entity.what.identifier.system",
        "path": "AuditEvent.entity.what.identifier.system",
        "short": "식별자 값의 네임스페이스(namespace)",
        "definition": "설정값에 대한 네임 스페이스 (namespace), 즉 고유한 설정값을 설명하는 URL을 설정함."
      },
      {
        "id": "AuditEvent.entity.what.identifier.value",
        "path": "AuditEvent.entity.what.identifier.value",
        "short": "고유 설정값",
        "definition": "일반적으로 식별자의 사용과와 관련이 있으며, 시스템 컨텍스트 (context) 내에서 고유한 식별자의 일부분임."
      },
      {
        "id": "AuditEvent.entity.what.identifier.period",
        "path": "AuditEvent.entity.what.identifier.period",
        "short": "식별자의 유효 기간",
        "definition": "식별자가 사용 가능했거나 가능한 기간을 나타냄."
      },
      {
        "id": "AuditEvent.entity.what.identifier.period.start",
        "path": "AuditEvent.entity.what.identifier.period.start",
        "short": "해당 유효 기간의 시작 시점 (설정된 날짜 포함)",
        "definition": "해당 유효 기간이 시작되는 시점을 나타냄. 유효 기간은 시작 시점으로 설정된 날짜를 포함함."
      },
      {
        "id": "AuditEvent.entity.what.identifier.period.end",
        "path": "AuditEvent.entity.what.identifier.period.end",
        "short": "해당 유효 기간의 종료 시점 (설정된 날짜 포함)",
        "definition": "기간의 종료. 기간의 종료가 누락된 경우, 인스턴스가 생성될 때 끝이 알려지거나 계획되지 않았음을 의미함. 시작일은 과거일 수 있고 종료일은 미래일 수 있음. 이는 해당 기간이 해당 시간에 종료될 예정임을 의미함"
      },
      {
        "id": "AuditEvent.entity.what.identifier.assigner",
        "path": "AuditEvent.entity.what.identifier.assigner",
        "short": "식별자를 발급한 조직 (단순 텍스트 기입 가능)",
        "definition": "식별자를 발급하고 관리하는 조직을 나타냄."
      },
      {
        "id": "AuditEvent.entity.what.display",
        "path": "AuditEvent.entity.what.display",
        "short": "해당 리소스를 대체하는 텍스트 설명",
        "definition": "리소스 참조 외에도 리소스를 식별하기 위한 일반 텍스트 설명임."
      },
      {
        "id": "AuditEvent.entity.type",
        "path": "AuditEvent.entity.type",
        "short": "관련된 엔티티 (entity) 유형",
        "definition": "이 감사 이벤트에 관련된 개체의 유형.",
        "comment": "이 값(value)은 사용자의 역할 또는 그 어떤 엔터티에 대한 사용자 관계와도 무관.",
        "requirements": "To describe the object being acted upon. In addition to queries on the subject of the action in an auditable event, it is also important to be able to query on the object type for the action.",
        "max": "1",
        "type": [
          {
            "code": "Coding"
          }
        ],
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "AuditEventEntityType"
            }
          ],
          "strength": "extensible",
          "description": "Code for the entity type involved in the audit event.",
          "valueSet": "http://hl7.org/fhir/ValueSet/audit-entity-type"
        },
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.what[x]"
          },
          {
            "identity": "rim",
            "map": "[self::Act].code or role.player.code"
          },
          {
            "identity": "dicom",
            "map": "ParticipantObjectTypeCode"
          },
          {
            "identity": "w3c.prov",
            "map": "Entity.type"
          },
          {
            "identity": "fhirprovenance",
            "map": "Provenance.entity.type"
          }
        ]
      },
      {
        "id": "AuditEvent.entity.type.system",
        "path": "AuditEvent.entity.type.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.entity.type.version",
        "path": "AuditEvent.entity.type.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.entity.type.code",
        "path": "AuditEvent.entity.type.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.entity.type.display",
        "path": "AuditEvent.entity.type.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.entity.type.userSelected",
        "path": "AuditEvent.entity.type.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.entity.role",
        "path": "AuditEvent.entity.role",
        "short": "엔티티 (entity)의 역할",
        "definition": "감사 대상 이벤트에서 엔티티 (entity)가 수행한 역할을 나타내는 코드.",
        "requirements": "For some detailed audit analysis it may be necessary to indicate a more granular type of entity, based on the application role it serves.",
        "max": "1",
        "type": [
          {
            "code": "Coding"
          }
        ],
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "AuditEventEntityRole"
            }
          ],
          "strength": "extensible",
          "description": "Code representing the role the entity played in the audit event.",
          "valueSet": "http://hl7.org/fhir/ValueSet/object-role"
        },
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.context"
          },
          {
            "identity": "rim",
            "map": "role.code (not sure what this would mean for an Act)"
          },
          {
            "identity": "dicom",
            "map": "ParticipantObjectTypeCodeRole"
          },
          {
            "identity": "w3c.prov",
            "map": "Entity.role"
          }
        ]
      },
      {
        "id": "AuditEvent.entity.role.system",
        "path": "AuditEvent.entity.role.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.entity.role.version",
        "path": "AuditEvent.entity.role.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.entity.role.code",
        "path": "AuditEvent.entity.role.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.entity.role.display",
        "path": "AuditEvent.entity.role.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.entity.role.userSelected",
        "path": "AuditEvent.entity.role.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.entity.lifecycle",
        "path": "AuditEvent.entity.lifecycle",
        "short": "엔티티 (entity)의 수명 주기 단계",
        "definition": "엔티티 (entity)의 수명 주기 단계를 나타내는 식별자.",
        "comment": "이는 데이터가 시스템을 통과 할 때 데이터에 대한 감사 추적 또는 오버타임을 제공하는 데 사용할 수 있음.",
        "requirements": "Institutional policies for privacy and security may optionally fall under different accountability rules based on data life cycle. This provides a differentiating value for those cases.",
        "max": "1",
        "type": [
          {
            "code": "Coding"
          }
        ],
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "AuditEventEntityLifecycle"
            }
          ],
          "strength": "extensible",
          "description": "엔티티(entity)의 수명 주기 단계를 나타내는 식별자(identifier).",
          "valueSet": "http://hl7.org/fhir/ValueSet/object-lifecycle-events"
        },
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.context"
          },
          {
            "identity": "rim",
            "map": "target of ObservationEvent[code=\"lifecycle\"].value"
          },
          {
            "identity": "dicom",
            "map": "ParticipantObjectDataLifeCycle"
          },
          {
            "identity": "w3c.prov",
            "map": "Entity.role"
          },
          {
            "identity": "fhirprovenance",
            "map": "Provenance.entity.role"
          }
        ]
      },
      {
        "id": "AuditEvent.entity.lifecycle.system",
        "path": "AuditEvent.entity.lifecycle.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.entity.lifecycle.version",
        "path": "AuditEvent.entity.lifecycle.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.entity.lifecycle.code",
        "path": "AuditEvent.entity.lifecycle.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.entity.lifecycle.display",
        "path": "AuditEvent.entity.lifecycle.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.entity.lifecycle.userSelected",
        "path": "AuditEvent.entity.lifecycle.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.entity.securityLabel",
        "path": "AuditEvent.entity.securityLabel",
        "short": "엔티티 (entity)의 보안 레이블 (security label)",
        "definition": "엔티티 (entity)의 보안 레이블 (security label).",
        "comment": "엔티티 (entitiy)의 메타 보안 태그에서 복사됨",
        "requirements": "This field identifies the security labels for a specific instance of an object, such as a patient, to detect/track privacy and security issues.",
        "type": [
          {
            "code": "Coding"
          }
        ],
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "SecurityLabels"
            },
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding",
              "valueBoolean": true
            }
          ],
          "strength": "extensible",
          "description": "Security Labels from the Healthcare Privacy and Security Classification System.",
          "valueSet": "http://hl7.org/fhir/ValueSet/security-labels"
        },
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.context"
          },
          {
            "identity": "rim",
            "map": ".confidentialityCode"
          },
          {
            "identity": "dicom",
            "map": "ParticipantObjectSensitivity"
          }
        ]
      },
      {
        "id": "AuditEvent.entity.securityLabel.system",
        "path": "AuditEvent.entity.securityLabel.system",
        "short": "해당 전문용어체계(terminology system)의 식별",
        "definition": "코드에서 기호의 의미를 정의하는 CodeSystem[코드시스템]를 식별"
      },
      {
        "id": "AuditEvent.entity.securityLabel.version",
        "path": "AuditEvent.entity.securityLabel.version",
        "short": "해당 시스템의 버전 정보 - 필요한 경우",
        "definition": "해당 코드를 선택한 시점에 사용된 코드 시스템의 버전임. 올바로 관리된 코드 시스템은 코드의 의미가 버전과 관계없이 일관적이므로 버전을 보고할 필요가 없음. 그러나 코드 시스템의 관리 상태는 지속적으로 보장할 수 없는 부분이며, 코드의 의미가 일관적임을 보장할 수 없는 경우 버전이 교체되어야 함."
      },
      {
        "id": "AuditEvent.entity.securityLabel.code",
        "path": "AuditEvent.entity.securityLabel.code",
        "short": "시스템에 정의된 구문(syntax)의 기호(symbol)",
        "definition": "시스템에 정의된 구문의 기호. 기호는 CodeSystem[코드시스템]에 의해 정의된 구문에서 미리 정의된 코드 또는 표현(expression)일 수 있음. (예: post-coordination)"
      },
      {
        "id": "AuditEvent.entity.securityLabel.display",
        "path": "AuditEvent.entity.securityLabel.display",
        "short": "시스템에 정의된 표현",
        "definition": "시스템 내 코드의 의미를 시스템의 규칙에 따라 표현한 것을 의미함."
      },
      {
        "id": "AuditEvent.entity.securityLabel.userSelected",
        "path": "AuditEvent.entity.securityLabel.userSelected",
        "short": "해당 코딩 방법이 사용자에 의해 직접 선택되었는지 여부",
        "definition": "해당 코딩 방법이 사용자에 의해 직접 선택되었음을 나타냄. 즉, 선택 가능한 항목 (코드 혹은 디스플레이) 목록에 존재하지 않음을 나타냄."
      },
      {
        "id": "AuditEvent.entity.name",
        "path": "AuditEvent.entity.name",
        "short": "엔티티(entity)에대한설명자(Descriptor)",
        "definition": "감사 이벤트(audit event)의 엔터티(entitiy) 이름.",
        "comment": "이 필드는 특정 개인에 대한 감사 이벤트를 식별하기 위해 query/report에서 사용할 수 있음. 예를 들어, 여러 개의 비슷한 앤티티 식별자 (환자 번호, 의료 기록 번호, 만남 번호 등)가 사용",
        "requirements": "Use only where entity can't be identified with an identifier.",
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ],
        "condition": [
          "sev-1"
        ],
        "isSummary": true,
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.context"
          },
          {
            "identity": "rim",
            "map": ".title"
          },
          {
            "identity": "dicom",
            "map": "ParticipantObjectName"
          },
          {
            "identity": "w3c.prov",
            "map": "Entity.Label"
          }
        ]
      },
      {
        "id": "AuditEvent.entity.description",
        "path": "AuditEvent.entity.description",
        "short": "설명 텍스트",
        "definition": "엔티티(entitiy)에 대한 더 구체적인 설명이 있는 텍스트",
        "requirements": "Use only where entity can't be identified with an identifier.",
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.context"
          },
          {
            "identity": "rim",
            "map": ".text"
          },
          {
            "identity": "dicom",
            "map": "ParticipantObjectDescription"
          }
        ]
      },
      {
        "id": "AuditEvent.entity.query",
        "path": "AuditEvent.entity.query",
        "short": "쿼리 파라미터 (query parameters)",
        "definition": "퀴리 유형 엔티티를 위한 쿼리 파라미터 (query parameters).",
        "comment": "base64로 인코딩 된 blob 컨텐츠의 의미 및 보조 인코딩은 AuditEvent.type, AuditEvent.subtype, AuditEvent.entity.type 및 AuditEvent.entity.role에 따라 다름. base64는 기록되는 트랜잭션에서 사용하는 인코딩에 관계없이 이벤트 별 데이터 Blobs에 대한 일반적이고 안전한 컨테이너임. AuditEvent 사용 응용 프로그램은 사용중인 이벤트와 이벤트에서 사용하는 형식을 이해해야 함. 예를 들어 Oracle 네트워크 데이터베이스 액세스를 감사하는 경우 Oracle 형식은 간단히 base64binary blob으로 인코딩되므로 이를 이해해야함.",
        "requirements": "For query events, it may be necessary to capture the actual query input to the query process in order to identify the specific event. Because of differences among query implementations and data encoding for them, this is a base 64 encoded data blob. It may be subsequently decoded or interpreted by downstream audit analysis processing.",
        "max": "1",
        "type": [
          {
            "code": "base64Binary"
          }
        ],
        "condition": [
          "sev-1"
        ],
        "isSummary": true,
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.context"
          },
          {
            "identity": "rim",
            "map": "No mapping"
          },
          {
            "identity": "dicom",
            "map": "ParticipantObjectQuery"
          }
        ]
      },
      {
        "id": "AuditEvent.entity.detail",
        "path": "AuditEvent.entity.detail",
        "short": "엔티티 (entity)에 대한 추가 정보",
        "definition": "엔티티 (entity)에 대한 추가 정보 - 태그된 값 쌍 (tagged value pairs).",
        "requirements": "Implementation-defined data about specific details of the object accessed or used.",
        "type": [
          {
            "code": "BackboneElement"
          }
        ],
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.context"
          },
          {
            "identity": "rim",
            "map": ".inboundRelationship[typeCode=SUBJ].target[classCode=OBS, moodCode=EVN]"
          },
          {
            "identity": "dicom",
            "map": "ParticipantObjectDetail"
          }
        ]
      },
      {
        "id": "AuditEvent.entity.detail.type",
        "path": "AuditEvent.entity.detail.type",
        "short": "속성 이름",
        "definition": "값에 제공된 추가 세부 정보 유형.",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.context"
          },
          {
            "identity": "rim",
            "map": ".code"
          },
          {
            "identity": "dicom",
            "map": "ParticipantObjectDetail.type"
          }
        ]
      },
      {
        "id": "AuditEvent.entity.detail.value[x]",
        "path": "AuditEvent.entity.detail.value[x]",
        "short": "속성 값",
        "definition": "추가 세부 사항 값",
        "comment": "값(value)은 string으로 알려진 string 일 수 있으며, 그렇지 않으면 바이너리 또는 정의되지 않은 컨텐츠를 보호하기 위해 base64 인코딩을 사용해야 함. base64로 인코딩 된 blob 컨텐츠의 의미 및 보조 인코딩은 AuditEvent.type, AuditEvent.subtype, AuditEvent.entity.type 및 AuditEvent.entity.role에 따라 다름. base64는 기록되는 트랜잭션에서 사용하는 인코딩에 관계없이 이벤트 별 데이터 Blob에 대한 일반적이고 안전한 컨테이너임. AuditEvent 사용 응용 프로그램은 사용중인 이벤트와 이벤트에서 사용하는 형식을 이해해야 함. 예를들어 Oracle 네트워크데이터베이스액세스를감사하는경우 Oracle 형식은간단히 base64binary blob으로인코딩되므로이를이해해야함.",
        "requirements": "Should not duplicate the entity value unless absolutely necessary.",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          },
          {
            "code": "base64Binary"
          }
        ],
        "mapping": [
          {
            "identity": "w5",
            "map": "FiveWs.context"
          },
          {
            "identity": "rim",
            "map": ".value"
          },
          {
            "identity": "dicom",
            "map": "ParticipantObjectDetail.value"
          }
        ]
      }
    ]
  }
}