This page is part of the FHIR Specification (v0.0.82: DSTU 1). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions

Securityevent.profile.xml

Profile for securityevent

Raw XML

<Profile xmlns="http://hl7.org/fhir">
  <text>
    <status value="generated"/><div xmlns="http://www.w3.org/1999/xhtml"><pre>
&lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent" title="A record of an event made for purposes of maintaining a security log. Typical uses include
         detection of intrusion attempts and monitoring for inappropriate usage."><b>SecurityEvent</b></a> xmlns=&quot;http://hl7.org/fhir&quot;&gt; <span style="float: right"><a href="formats.html" title="Documentation for this format"><img alt="doco" src="help.png"/></a></span>
 &lt;!-- from <a href="resources.html">Resource</a>: <a href="extensibility.html">extension</a>, <a href="extensibility.html#modifierExtension">modifierExtension</a>, language, <a href="narrative.html#Narrative">text</a>, and <a href="references.html#contained">contained</a> --&gt;
 &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.event" title="Identifies the name, action type, time, and disposition of the audited event."><b>event</b></a>&gt;  <span style="color: Gray">&lt;!-- <span style="color: brown"><b>1..1</b></span> What was done --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.event.type" title="Identifier for a family of the event."><b>type</b></a>&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>1..1</b></span> <span style="color: darkgreen"><a href="datatypes.html#CodeableConcept">CodeableConcept</a></span> <span style="color: navy"><a href="valueset-security-event-type.html" style="color: navy">Type/identifier of event</a></span><span style="color: Gray"> --&gt;</span>&lt;/type&gt;
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.event.subtype" title="Identifier for the category of event."><b>subtype</b></a>&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..*</b></span> <span style="color: darkgreen"><a href="datatypes.html#CodeableConcept">CodeableConcept</a></span> <span style="color: navy"><a href="valueset-security-event-sub-type.html" style="color: navy">More specific type/id for the event</a></span><span style="color: Gray"> --&gt;</span>&lt;/subtype&gt;
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.event.action" title="Indicator for type of action performed during the event that generated the audit."><b>action</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#code">code</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: navy"><a href="security-event-action.html" style="color: navy">Type of action performed during the event</a></span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.event.dateTime" title="The time when the event occurred on the source."><b>dateTime</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#instant">instant</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>1..1</b></span> <span style="color: navy">Time when the event occurred on source</span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.event.outcome" title="Indicates whether the event succeeded or failed."><b>outcome</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#code">code</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: navy"><a href="security-event-outcome.html" style="color: navy">Whether the event succeeded or failed</a></span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.event.outcomeDesc" title="A free text description of the outcome of the event."><b>outcomeDesc</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#string">string</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: navy">Description of the event outcome</span><span style="color: Gray"> --&gt;</span>
 &lt;/event&gt;
 &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.participant" title="A person, a hardware device or software process."><b>participant</b></a>&gt;  <span style="color: Gray">&lt;!-- <span style="color: brown"><b>1..*</b></span> A person, a hardware device or software process --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.participant.role" title="Specification of the role(s) the user plays when performing the event. Usually the codes
         used in this element are local codes defined by the role-based access control security
         system used in the local context."><b>role</b></a>&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..*</b></span> <span style="color: darkgreen"><a href="datatypes.html#CodeableConcept">CodeableConcept</a></span> <span style="color: navy"><a href="valueset-dicm-402-roleid.html" style="color: navy">User roles (e.g. local RBAC codes)</a></span><span style="color: Gray"> --&gt;</span>&lt;/role&gt;
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.participant.reference" title="Direct reference to a resource that identifies the participant."><b>reference</b></a>&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown" title="Inv-3: Either a userId or a reference, but not both"><b><img alt="??" src="lock.png"/> 0..1</b></span> <span style="color: darkgreen"><a href="references.html#Resource">Resource</a>(<a href="practitioner.html#Practitioner">Practitioner</a>|<a href="patient.html#Patient">Patient</a>|<a href="device.html#Device">Device</a>)</span> <span style="color: navy">Direct reference to resource</span><span style="color: Gray"> --&gt;</span>&lt;/reference&gt;
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.participant.userId" title="Unique identifier for the user actively participating in the event."><b>userId</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#string">string</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown" title="Inv-3: Either a userId or a reference, but not both"><b><img alt="??" src="lock.png"/> 0..1</b></span> <span style="color: navy">Unique identifier for the user</span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.participant.altId" title="Alternative Participant Identifier. For a human, this should be a user identifier text
         string from authentication system. This identifier would be one known to a common authentication
         system (e.g., single sign-on), if available."><b>altId</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#string">string</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: navy">Alternative User id e.g. authentication</span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.participant.name" title="Human-meaningful name for the user."><b>name</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#string">string</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: navy">Human-meaningful name for the user</span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.participant.requestor" title="Indicator that the user is or is not the requestor, or initiator, for the event being
         audited."><b>requestor</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#boolean">boolean</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>1..1</b></span> <span style="color: navy">Whether user is initiator</span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.participant.media" title="Type of media involved. Used when the event is about exporting/importing onto media."><b>media</b></a>&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: darkgreen"><a href="datatypes.html#Coding">Coding</a></span> <span style="color: navy">Type of media</span><span style="color: Gray"> --&gt;</span>&lt;/media&gt;
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.participant.network" title="Logical network location for application activity, if the activity has a network location."><b>network</b></a>&gt;  <span style="color: Gray">&lt;!-- <span style="color: brown"><b>0..1</b></span> Logical network location for application activity --&gt;</span>
   &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.participant.network.identifier" title="An identifier for the network access point of the user device for the audit event."><b>identifier</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#string">string</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: navy">Identifier for the network access point of the user device</span><span style="color: Gray"> --&gt;</span>
   &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.participant.network.type" title="An identifier for the type of network access point that originated the audit event."><b>type</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#code">code</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: navy"><a href="network-type.html" style="color: navy">The type of network access point</a></span><span style="color: Gray"> --&gt;</span>
  &lt;/network&gt;
 &lt;/participant&gt;
 &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.source" title="Application systems and processes."><b>source</b></a>&gt;  <span style="color: Gray">&lt;!-- <span style="color: brown"><b>1..1</b></span> Application systems and processes --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.source.site" title="Logical source location within the healthcare enterprise network."><b>site</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#string">string</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: navy">Logical source location within the enterprise</span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.source.identifier" title="Identifier of the source where the event originated."><b>identifier</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#string">string</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>1..1</b></span> <span style="color: navy">The id of source where event originated</span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.source.type" title="Code specifying the type of source where event originated."><b>type</b></a>&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..*</b></span> <span style="color: darkgreen"><a href="datatypes.html#Coding">Coding</a></span> <span style="color: navy"><a href="valueset-security-source-type.html" style="color: navy">The type of source where event originated</a></span><span style="color: Gray"> --&gt;</span>&lt;/type&gt;
 &lt;/source&gt;
 &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.object" title="Specific instances of data or objects that have been accessed."><b>object</b></a>&gt;  <span style="color: Gray">&lt;!-- <span style="color: brown"><b>0..*</b></span> Specific instances of data or objects that have been accessed --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.object.identifier" title="Identifies a specific instance of the participant object. The reference should always
         be version specific."><b>identifier</b></a>&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown" title="Inv-2: Either an identifier or a reference, but not both"><b><img alt="??" src="lock.png"/> 0..1</b></span> <span style="color: darkgreen"><a href="datatypes.html#Identifier">Identifier</a></span> <span style="color: navy">Specific instance of object (e.g. versioned)</span><span style="color: Gray"> --&gt;</span>&lt;/identifier&gt;
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.object.reference" title="Identifies a specific instance of the participant object. The reference should always
         be version specific."><b>reference</b></a>&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown" title="Inv-2: Either an identifier or a reference, but not both"><b><img alt="??" src="lock.png"/> 0..1</b></span> <span style="color: darkgreen"><a href="references.html#Resource">Resource</a>(<a href="resourcelist.html">Any</a>)</span> <span style="color: navy">Specific instance of resource (e.g. versioned)</span><span style="color: Gray"> --&gt;</span>&lt;/reference&gt;
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.object.type" title="Object type being audited."><b>type</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#code">code</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: navy"><a href="object-type.html" style="color: navy">Object type being audited</a></span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.object.role" title="Code representing the functional application role of Participant Object being audited."><b>role</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#code">code</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: navy"><a href="object-role.html" style="color: navy">Functional application role of Object</a></span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.object.lifecycle" title="Identifier for the data life-cycle stage for the participant object."><b>lifecycle</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#code">code</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: navy"><a href="object-lifecycle.html" style="color: navy">Life-cycle stage for the object</a></span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.object.sensitivity" title="Denotes policy-defined sensitivity for the Participant Object ID such as VIP, HIV status,
         mental health status or similar topics."><b>sensitivity</b></a>&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: darkgreen"><a href="datatypes.html#CodeableConcept">CodeableConcept</a></span> <span style="color: navy"><a href="valueset-security-event-sensitivity.html" style="color: navy">Policy-defined sensitivity for the object</a></span><span style="color: Gray"> --&gt;</span>&lt;/sensitivity&gt;
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.object.name" title="An instance-specific descriptor of the Participant Object ID audited, such as a person's
         name."><b>name</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#string">string</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown" title="Inv-1: Either a name or a query (or both)"><b><img alt="??" src="lock.png"/> 0..1</b></span> <span style="color: navy">Instance-specific descriptor for Object</span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.object.description" title="Text that describes the object in more detail."><b>description</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#string">string</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>0..1</b></span> <span style="color: navy">Descriptive text</span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.object.query" title="The actual query for a query-type participant object."><b>query</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#base64Binary">base64Binary</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown" title="Inv-1: Either a name or a query (or both)"><b><img alt="??" src="lock.png"/> 0..1</b></span> <span style="color: navy">Actual query for object</span><span style="color: Gray"> --&gt;</span>
  &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.object.detail" title="Additional Information about the Object."><b>detail</b></a>&gt;  <span style="color: Gray">&lt;!-- <span style="color: brown"><b>0..*</b></span> Additional Information about the Object --&gt;</span>
   &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.object.detail.type" title="Name of the property."><b>type</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#string">string</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>1..1</b></span> <span style="color: navy">Name of the property</span><span style="color: Gray"> --&gt;</span>
   &lt;<a class="dict" href="securityevent-definitions.html#SecurityEvent.object.detail.value" title="Property value."><b>value</b></a> value=&quot;[<span style="color: darkgreen"><a href="datatypes.html#base64Binary">base64Binary</a></span>]&quot;/&gt;<span style="color: Gray">&lt;!--</span> <span style="color: brown"><b>1..1</b></span> <span style="color: navy">Property value</span><span style="color: Gray"> --&gt;</span>
  &lt;/detail&gt;
 &lt;/object&gt;
&lt;/SecurityEvent&gt;
</pre></div>
  </text>
  <name value="securityevent"/>
  <publisher value="FHIR Project"/>
  <description value="Basic Profile. A record of an event made for purposes of maintaining a security log. Typical
   uses include detection of intrusion attempts and monitoring for inappropriate usage."/>
  <status value="draft"/>
  <date value="2014-09-30"/>
  <requirements value="Scope and Usage The security event is based on the ATNA Audit record definitions, originally
   from RFC 3881, and now managed by DICOM (see DICOM Part 15 Annex A5). This resource is
   managed collaboratively between HL7, DICOM, and IHE for the MHD/mHealth initiatives. 
    The primary purpose of this resource is the maintenance of audit log information. However,
   it can also be used for simple event-based notification or even general indexing of resources
   stored in a variety of repositories."/>
  <mapping>
    <identity value="rim"/>
    <uri value="http://hl7.org/v3"/>
    <name value="RIM"/>
  </mapping>
  <mapping>
    <identity value="dicom"/>
    <uri value="http://nema.org/dicom"/>
    <name value="DICOM"/>
  </mapping>
  <structure>
    <type value="SecurityEvent"/>
    <publish value="true"/>
    <element>
      <path value="SecurityEvent"/>
      <definition>
        <short value="Event record kept for security purposes"/>
        <formal value="A record of an event made for purposes of maintaining a security log. Typical uses include
         detection of intrusion attempts and monitoring for inappropriate usage."/>
        <comments value="Based on ATNA (RFC 3881)."/>
        <min value="1"/>
        <max value="1"/>
        <type>
          <code value="Resource"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value="ControlAct[moodCode=EVN]"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="Message"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.extension"/>
      <definition>
        <short value="Additional Content defined by implementations"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource. In order to make the use of extensions safe and manageable, there is
         a strict governance applied to the definition and use of extensions. Though any implementer
         is allowed to define an extension, there is a set of requirements that SHALL be met as
         part of the definition of the extension."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.modifierExtension"/>
      <definition>
        <short value="Extensions that cannot be ignored"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource, and that modifies the understanding of the element that contains it.
         Usually modifier elements provide negation or qualification. In order to make the use
         of extensions safe and manageable, there is a strict governance applied to the definition
         and use of extensions. Though any implementer is allowed to define an extension, there
         is a set of requirements that SHALL be met as part of the definition of the extension.
         Applications processing a resource are required to check for modifier extensions."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.text"/>
      <definition>
        <short value="Text summary of the resource, for human interpretation"/>
        <formal value="A human-readable narrative that contains a summary of the resource, and may be used to
         represent the content of the resource to a human. The narrative need not encode all the
         structured data, but is required to contain sufficient detail to make it &quot;clinically
         safe&quot; for a human to just read the narrative. Resource definitions may define what
         content should be represented in the narrative to ensure clinical safety."/>
        <comments value="Contained resources do not have narrative. Resources that are not contained SHOULD have
         a narrative."/>
        <synonym value="narrative"/>
        <synonym value="html"/>
        <synonym value="xhtml"/>
        <synonym value="display"/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="Narrative"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.contained"/>
      <definition>
        <short value="Contained, inline Resources"/>
        <formal value="These resources do not have an independent existence apart from the resource that contains
         them - they cannot be identified independently, and nor can they have their own independent
         transaction scope."/>
        <comments value="This should never be done when the content can be identified properly, as once identification
         is lost, it is extremely difficult (and context dependent) to restore it again."/>
        <synonym value="inline resources"/>
        <synonym value="anonymous resources"/>
        <synonym value="contained resources"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Resource"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.event"/>
      <definition>
        <short value="What was done"/>
        <formal value="Identifies the name, action type, time, and disposition of the audited event."/>
        <min value="1"/>
        <max value="1"/>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value="N/A (no nesting in v3)"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="EventIdentification"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.event.extension"/>
      <definition>
        <short value="Additional Content defined by implementations"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource. In order to make the use of extensions safe and manageable, there is
         a strict governance applied to the definition and use of extensions. Though any implementer
         is allowed to define an extension, there is a set of requirements that SHALL be met as
         part of the definition of the extension."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.event.modifierExtension"/>
      <definition>
        <short value="Extensions that cannot be ignored"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource, and that modifies the understanding of the element that contains it.
         Usually modifier elements provide negation or qualification. In order to make the use
         of extensions safe and manageable, there is a strict governance applied to the definition
         and use of extensions. Though any implementer is allowed to define an extension, there
         is a set of requirements that SHALL be met as part of the definition of the extension.
         Applications processing a resource are required to check for modifier extensions."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.event.type"/>
      <definition>
        <short value="Type/identifier of event"/>
        <formal value="Identifier for a family of the event."/>
        <comments value="e.g., a menu item, program, rule, policy, function code, application name or URL. It identifies
         the performed function."/>
        <min value="1"/>
        <max value="1"/>
        <type>
          <code value="CodeableConcept"/>
        </type>
        <isModifier value="false"/>
        <binding>
          <name value="SecurityEventType"/>
          <isExtensible value="true"/>
          <conformance value="preferred"/>
          <referenceResource>
            <reference value="http://hl7.org/fhir/vs/security-event-type"/>
          </referenceResource>
        </binding>
        <mapping>
          <identity value="rim"/>
          <map value=".code (type, subtype and action are pre-coordinated or sent as translations)"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@EventId"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.event.subtype"/>
      <definition>
        <short value="More specific type/id for the event"/>
        <formal value="Identifier for the category of event."/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="CodeableConcept"/>
        </type>
        <isModifier value="false"/>
        <binding>
          <name value="SecurityEventSubType"/>
          <isExtensible value="true"/>
          <conformance value="preferred"/>
          <referenceResource>
            <reference value="http://hl7.org/fhir/vs/security-event-sub-type"/>
          </referenceResource>
        </binding>
        <mapping>
          <identity value="rim"/>
          <map value=".code (type, subtype and action are pre-coordinated or sent as translations)"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@EventTypeCode"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.event.action"/>
      <definition>
        <short value="Type of action performed during the event"/>
        <formal value="Indicator for type of action performed during the event that generated the audit."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="code"/>
        </type>
        <isModifier value="false"/>
        <binding>
          <name value="SecurityEventAction"/>
          <isExtensible value="false"/>
          <conformance value="required"/>
          <referenceResource>
            <reference value="http://hl7.org/fhir/vs/security-event-action"/>
          </referenceResource>
        </binding>
        <mapping>
          <identity value="rim"/>
          <map value=".code (type, subtype and action are pre-coordinated or sent as translations)"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@EventActionCode"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.event.dateTime"/>
      <definition>
        <short value="Time when the event occurred on source"/>
        <formal value="The time when the event occurred on the source."/>
        <comments value="In a distributed system, some sort of common time base, e.g., an NTP [RFC1305] server,
         is a good implementation tactic."/>
        <min value="1"/>
        <max value="1"/>
        <type>
          <code value="instant"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".effectiveTime"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@EventDateTime"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.event.outcome"/>
      <definition>
        <short value="Whether the event succeeded or failed"/>
        <formal value="Indicates whether the event succeeded or failed."/>
        <comments value="In some cases a &quot;success&quot; may be partial, for example, an incomplete or interrupted
         transfer of a radiological study. For the purpose of establishing accountability, these
         distinctions are not relevant."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="code"/>
        </type>
        <isModifier value="false"/>
        <binding>
          <name value="SecurityEventOutcome"/>
          <isExtensible value="false"/>
          <conformance value="required"/>
          <referenceResource>
            <reference value="http://hl7.org/fhir/vs/security-event-outcome"/>
          </referenceResource>
        </binding>
        <mapping>
          <identity value="rim"/>
          <map value=".actionNegationInd"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@EventOutcomeIndicator"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.event.outcomeDesc"/>
      <definition>
        <short value="Description of the event outcome"/>
        <formal value="A free text description of the outcome of the event."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="string"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".outboundRelationship[typeCode=OUT].target.text"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@EventOutcomeDescription"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant"/>
      <definition>
        <short value="A person, a hardware device or software process"/>
        <formal value="A person, a hardware device or software process."/>
        <comments value="There may be more than one user per event, for example, in cases of actions initiated
         by one user for other users, or in events that involve more than one user, hardware device,
         or system process. However, only one user may be the initiator/requestor for the event."/>
        <min value="1"/>
        <max value="*"/>
        <constraint>
          <key value="3"/>
          <name value="Participant Identification"/>
          <severity value="error"/>
          <human value="Either a userId or a reference, but not both"/>
          <xpath value="exists(f:userId) != exists(f:reference)"/>
        </constraint>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".participation"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="ActiveParticipant"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.extension"/>
      <definition>
        <short value="Additional Content defined by implementations"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource. In order to make the use of extensions safe and manageable, there is
         a strict governance applied to the definition and use of extensions. Though any implementer
         is allowed to define an extension, there is a set of requirements that SHALL be met as
         part of the definition of the extension."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.modifierExtension"/>
      <definition>
        <short value="Extensions that cannot be ignored"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource, and that modifies the understanding of the element that contains it.
         Usually modifier elements provide negation or qualification. In order to make the use
         of extensions safe and manageable, there is a strict governance applied to the definition
         and use of extensions. Though any implementer is allowed to define an extension, there
         is a set of requirements that SHALL be met as part of the definition of the extension.
         Applications processing a resource are required to check for modifier extensions."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.role"/>
      <definition>
        <short value="User roles (e.g. local RBAC codes)"/>
        <formal value="Specification of the role(s) the user plays when performing the event. Usually the codes
         used in this element are local codes defined by the role-based access control security
         system used in the local context."/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="CodeableConcept"/>
        </type>
        <isModifier value="false"/>
        <binding>
          <name value="DICOMRoleId"/>
          <isExtensible value="true"/>
          <conformance value="preferred"/>
          <referenceResource>
            <reference value="http://hl7.org/fhir/vs/dicm-402-roleid"/>
          </referenceResource>
        </binding>
        <mapping>
          <identity value="rim"/>
          <map value=".typeCode and/or .functionCode"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="RoleIdCode"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.reference"/>
      <definition>
        <short value="Direct reference to resource"/>
        <formal value="Direct reference to a resource that identifies the participant."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="ResourceReference"/>
          <profile value="http://hl7.org/fhir/profiles/Practitioner"/>
        </type>
        <type>
          <code value="ResourceReference"/>
          <profile value="http://hl7.org/fhir/profiles/Patient"/>
        </type>
        <type>
          <code value="ResourceReference"/>
          <profile value="http://hl7.org/fhir/profiles/Device"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".role"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.userId"/>
      <definition>
        <short value="Unique identifier for the user"/>
        <formal value="Unique identifier for the user actively participating in the event."/>
        <comments value="a unique value within the Audit Source ID. For node-based authentication -- where only
         the system hardware or process, but not a human user, is identified -- User ID would be
         the node name."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="string"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".id"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@UserId"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.altId"/>
      <definition>
        <short value="Alternative User id e.g. authentication"/>
        <formal value="Alternative Participant Identifier. For a human, this should be a user identifier text
         string from authentication system. This identifier would be one known to a common authentication
         system (e.g., single sign-on), if available."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="string"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".id (distinguish id type by root)"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@AlternativeUserId"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.name"/>
      <definition>
        <short value="Human-meaningful name for the user"/>
        <formal value="Human-meaningful name for the user."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="string"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".name"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@UserName"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.requestor"/>
      <definition>
        <short value="Whether user is initiator"/>
        <formal value="Indicator that the user is or is not the requestor, or initiator, for the event being
         audited."/>
        <comments value="There can only be one initiator. If the initiator is not clear, then do not choose any
         one participant as the initiator."/>
        <min value="1"/>
        <max value="1"/>
        <type>
          <code value="boolean"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value="If participation.typeCode was author, then true"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@UserIsRequestor"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.media"/>
      <definition>
        <short value="Type of media"/>
        <formal value="Type of media involved. Used when the event is about exporting/importing onto media."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="Coding"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".player.description.mediaType"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="MediaType"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.network"/>
      <definition>
        <short value="Logical network location for application activity"/>
        <formal value="Logical network location for application activity, if the activity has a network location."/>
        <min value="0"/>
        <max value="1"/>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".player.description.reference"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.network.extension"/>
      <definition>
        <short value="Additional Content defined by implementations"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource. In order to make the use of extensions safe and manageable, there is
         a strict governance applied to the definition and use of extensions. Though any implementer
         is allowed to define an extension, there is a set of requirements that SHALL be met as
         part of the definition of the extension."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.network.modifierExtension"/>
      <definition>
        <short value="Extensions that cannot be ignored"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource, and that modifies the understanding of the element that contains it.
         Usually modifier elements provide negation or qualification. In order to make the use
         of extensions safe and manageable, there is a strict governance applied to the definition
         and use of extensions. Though any implementer is allowed to define an extension, there
         is a set of requirements that SHALL be met as part of the definition of the extension.
         Applications processing a resource are required to check for modifier extensions."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.network.identifier"/>
      <definition>
        <short value="Identifier for the network access point of the user device"/>
        <formal value="An identifier for the network access point of the user device for the audit event."/>
        <comments value="This could be a device id, IP address or some other identifier associated with a device."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="string"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value="pre-coordinated into URL"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@NetworkAccessPointID"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.participant.network.type"/>
      <definition>
        <short value="The type of network access point"/>
        <formal value="An identifier for the type of network access point that originated the audit event."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="code"/>
        </type>
        <isModifier value="false"/>
        <binding>
          <name value="SecurityEventParticipantNetworkType"/>
          <isExtensible value="false"/>
          <conformance value="required"/>
          <referenceResource>
            <reference value="http://hl7.org/fhir/vs/network-type"/>
          </referenceResource>
        </binding>
        <mapping>
          <identity value="rim"/>
          <map value="pre-coordinated into URL"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@NetworkAccessPointTypeCode"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.source"/>
      <definition>
        <short value="Application systems and processes"/>
        <formal value="Application systems and processes."/>
        <comments value="Since multi-tier, distributed, or composite applications make source identification ambiguous,
         this collection of fields may repeat for each application or process actively involved
         in the event. For example, multiple value-sets can identify participating web servers,
         application processes, and database server threads in an n-tier distributed application.
         Passive event participants, e.g., low-level network transports, need not be identified."/>
        <min value="1"/>
        <max value="1"/>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".participation[typeCode=INF].role[classCode=ASSIGN].player[classCode=DEV, determinerCode=INSTANCE]"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="AuditSourceIdentification"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.source.extension"/>
      <definition>
        <short value="Additional Content defined by implementations"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource. In order to make the use of extensions safe and manageable, there is
         a strict governance applied to the definition and use of extensions. Though any implementer
         is allowed to define an extension, there is a set of requirements that SHALL be met as
         part of the definition of the extension."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.source.modifierExtension"/>
      <definition>
        <short value="Extensions that cannot be ignored"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource, and that modifies the understanding of the element that contains it.
         Usually modifier elements provide negation or qualification. In order to make the use
         of extensions safe and manageable, there is a strict governance applied to the definition
         and use of extensions. Though any implementer is allowed to define an extension, there
         is a set of requirements that SHALL be met as part of the definition of the extension.
         Applications processing a resource are required to check for modifier extensions."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.source.site"/>
      <definition>
        <short value="Logical source location within the enterprise"/>
        <formal value="Logical source location within the healthcare enterprise network."/>
        <comments value="a hospital or other provider location within a multi-entity provider group."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="string"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".scopedRole[classCode=LOCE].player.desc"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@AuditEnterpriseSiteId"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.source.identifier"/>
      <definition>
        <short value="The id of source where event originated"/>
        <formal value="Identifier of the source where the event originated."/>
        <min value="1"/>
        <max value="1"/>
        <type>
          <code value="string"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".id"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@AuditSourceId"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.source.type"/>
      <definition>
        <short value="The type of source where event originated"/>
        <formal value="Code specifying the type of source where event originated."/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Coding"/>
        </type>
        <isModifier value="false"/>
        <binding>
          <name value="SecurityEventSourceType"/>
          <isExtensible value="true"/>
          <conformance value="preferred"/>
          <referenceResource>
            <reference value="http://hl7.org/fhir/vs/security-source-type"/>
          </referenceResource>
        </binding>
        <mapping>
          <identity value="rim"/>
          <map value=".code"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="AuditSourceTypeCode"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object"/>
      <definition>
        <short value="Specific instances of data or objects that have been accessed"/>
        <formal value="Specific instances of data or objects that have been accessed."/>
        <comments value="required unless the values for Event Identification, Active Participant Identification,
         and Audit Source Identification are sufficient to document the entire auditable event.
         Because events may have more than one participant object, this group can be a repeating
         set of values."/>
        <min value="0"/>
        <max value="*"/>
        <constraint>
          <key value="2"/>
          <name value="Object Identification"/>
          <severity value="error"/>
          <human value="Either an identifier or a reference, but not both"/>
          <xpath value="exists(f:identifier) != exists(f:reference)"/>
        </constraint>
        <constraint>
          <key value="1"/>
          <name value="Object Name"/>
          <severity value="error"/>
          <human value="Either a name or a query (or both)"/>
          <xpath value="not(exists(f:name)) or not(exists(f:query))"/>
        </constraint>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".outboundRelationship[typeCode=SUBJ].target  or  .participation[typeCode=SBJ].role"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="ParticipantObjectIdentification"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.extension"/>
      <definition>
        <short value="Additional Content defined by implementations"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource. In order to make the use of extensions safe and manageable, there is
         a strict governance applied to the definition and use of extensions. Though any implementer
         is allowed to define an extension, there is a set of requirements that SHALL be met as
         part of the definition of the extension."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.modifierExtension"/>
      <definition>
        <short value="Extensions that cannot be ignored"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource, and that modifies the understanding of the element that contains it.
         Usually modifier elements provide negation or qualification. In order to make the use
         of extensions safe and manageable, there is a strict governance applied to the definition
         and use of extensions. Though any implementer is allowed to define an extension, there
         is a set of requirements that SHALL be met as part of the definition of the extension.
         Applications processing a resource are required to check for modifier extensions."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.identifier"/>
      <definition>
        <short value="Specific instance of object (e.g. versioned)"/>
        <formal value="Identifies a specific instance of the participant object. The reference should always
         be version specific."/>
        <comments value="Identifier details depends on object type."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="Identifier"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".id.extension"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@ParticipantObjectID"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.reference"/>
      <definition>
        <short value="Specific instance of resource (e.g. versioned)"/>
        <formal value="Identifies a specific instance of the participant object. The reference should always
         be version specific."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="ResourceReference"/>
          <profile value="http://hl7.org/fhir/profiles/Any"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value="[self]"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@ParticipantObjectID"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.type"/>
      <definition>
        <short value="Object type being audited"/>
        <formal value="Object type being audited."/>
        <comments value="This value is distinct from the user's role or any user relationship to the participant
         object."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="code"/>
        </type>
        <isModifier value="false"/>
        <binding>
          <name value="SecurityEventObjectType"/>
          <isExtensible value="false"/>
          <conformance value="required"/>
          <referenceResource>
            <reference value="http://hl7.org/fhir/vs/object-type"/>
          </referenceResource>
        </binding>
        <mapping>
          <identity value="rim"/>
          <map value="[self::Act].code or role.player.code"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@ParticipantObjectTypeCode"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.role"/>
      <definition>
        <short value="Functional application role of Object"/>
        <formal value="Code representing the functional application role of Participant Object being audited."/>
        <comments value="See RFC 3881 for rules concerning matches between role and type."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="code"/>
        </type>
        <isModifier value="false"/>
        <binding>
          <name value="SecurityEventObjectRole"/>
          <isExtensible value="false"/>
          <conformance value="required"/>
          <referenceResource>
            <reference value="http://hl7.org/fhir/vs/object-role"/>
          </referenceResource>
        </binding>
        <mapping>
          <identity value="rim"/>
          <map value="role.code (not sure what this would mean for an Act)"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@ParticipantObjectTypeCodeRole"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.lifecycle"/>
      <definition>
        <short value="Life-cycle stage for the object"/>
        <formal value="Identifier for the data life-cycle stage for the participant object."/>
        <comments value="This can be used to provide an audit trail for data, over time, as it passes through the
         system."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="code"/>
        </type>
        <isModifier value="false"/>
        <binding>
          <name value="SecurityEventObjectLifecycle"/>
          <isExtensible value="false"/>
          <conformance value="required"/>
          <referenceResource>
            <reference value="http://hl7.org/fhir/vs/object-lifecycle"/>
          </referenceResource>
        </binding>
        <mapping>
          <identity value="rim"/>
          <map value="target of ObservationEvent[code=&quot;lifecycle&quot;].value"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@ParticipantObjectDataLifeCycle"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.sensitivity"/>
      <definition>
        <short value="Policy-defined sensitivity for the object"/>
        <formal value="Denotes policy-defined sensitivity for the Participant Object ID such as VIP, HIV status,
         mental health status or similar topics."/>
        <comments value="Values from ATNA are institution- and implementation-defined text strings (in sensitivity.text).
         HL7 defines confidentiality codes for records, documents etc. that can also be used here."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="CodeableConcept"/>
        </type>
        <isModifier value="false"/>
        <binding>
          <name value="SecurityEventObjectSensitivity"/>
          <isExtensible value="true"/>
          <conformance value="example"/>
          <referenceResource>
            <reference value="http://hl7.org/fhir/vs/security-event-sensitivity"/>
          </referenceResource>
        </binding>
        <mapping>
          <identity value="rim"/>
          <map value=".confidentialityCode"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@ParticipantObjectSensitivity"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.name"/>
      <definition>
        <short value="Instance-specific descriptor for Object"/>
        <formal value="An instance-specific descriptor of the Participant Object ID audited, such as a person's
         name."/>
        <comments value="This field may be used in a query/report to identify audit events for a specific person,
         e.g., where multiple synonymous Participant Object IDs (patient number, medical record
         number, encounter number, etc.) have been used."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="string"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".title"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="ParticipantObjectName"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.description"/>
      <definition>
        <short value="Descriptive text"/>
        <formal value="Text that describes the object in more detail."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="string"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".text"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="ParticipantObjectDescription"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.query"/>
      <definition>
        <short value="Actual query for object"/>
        <formal value="The actual query for a query-type participant object."/>
        <min value="0"/>
        <max value="1"/>
        <type>
          <code value="base64Binary"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value="No mapping"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="ParticipantObjectQuery"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.detail"/>
      <definition>
        <short value="Additional Information about the Object"/>
        <formal value="Additional Information about the Object."/>
        <min value="0"/>
        <max value="*"/>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".inboundRelationship[typeCode=SUBJ].target[classCode=OBS, moodCode=EVN]"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="ParticipantObjectDetail"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.detail.extension"/>
      <definition>
        <short value="Additional Content defined by implementations"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource. In order to make the use of extensions safe and manageable, there is
         a strict governance applied to the definition and use of extensions. Though any implementer
         is allowed to define an extension, there is a set of requirements that SHALL be met as
         part of the definition of the extension."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.detail.modifierExtension"/>
      <definition>
        <short value="Extensions that cannot be ignored"/>
        <formal value="May be used to represent additional information that is not part of the basic definition
         of the resource, and that modifies the understanding of the element that contains it.
         Usually modifier elements provide negation or qualification. In order to make the use
         of extensions safe and manageable, there is a strict governance applied to the definition
         and use of extensions. Though any implementer is allowed to define an extension, there
         is a set of requirements that SHALL be met as part of the definition of the extension.
         Applications processing a resource are required to check for modifier extensions."/>
        <comments value="there can be no stigma associated with the use of extensions by any application, project,
         or standard - regardless of the institution or jurisdiction that uses or defines the extensions.
          The use of extensions is what allows the FHIR specification to retain a core simplicity
         for everyone."/>
        <synonym value="extensions"/>
        <synonym value="user content"/>
        <min value="0"/>
        <max value="*"/>
        <type>
          <code value="Extension"/>
        </type>
        <isModifier value="false"/>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.detail.type"/>
      <definition>
        <short value="Name of the property"/>
        <formal value="Name of the property."/>
        <min value="1"/>
        <max value="1"/>
        <type>
          <code value="string"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".code"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@type"/>
        </mapping>
      </definition>
    </element>
    <element>
      <path value="SecurityEvent.object.detail.value"/>
      <definition>
        <short value="Property value"/>
        <formal value="Property value."/>
        <min value="1"/>
        <max value="1"/>
        <type>
          <code value="base64Binary"/>
        </type>
        <isModifier value="false"/>
        <mapping>
          <identity value="rim"/>
          <map value=".value"/>
        </mapping>
        <mapping>
          <identity value="dicom"/>
          <map value="@value"/>
        </mapping>
      </definition>
    </element>
    <searchParam>
      <name value="_id"/>
      <type value="token"/>
      <documentation value="The logical resource id associated with the resource (must be supported by all servers)"/>
    </searchParam>
    <searchParam>
      <name value="_language"/>
      <type value="token"/>
      <documentation value="The language of the resource"/>
    </searchParam>
    <searchParam>
      <name value="action"/>
      <type value="token"/>
      <documentation value="Type of action performed during the event"/>
      <xpath value="f:SecurityEvent/f:event/f:action"/>
    </searchParam>
    <searchParam>
      <name value="address"/>
      <type value="token"/>
      <documentation value="Identifier for the network access point of the user device"/>
      <xpath value="f:SecurityEvent/f:participant/f:network/f:identifier"/>
    </searchParam>
    <searchParam>
      <name value="altid"/>
      <type value="token"/>
      <documentation value="Alternative User id e.g. authentication"/>
      <xpath value="f:SecurityEvent/f:participant/f:altId"/>
    </searchParam>
    <searchParam>
      <name value="date"/>
      <type value="date"/>
      <documentation value="Time when the event occurred on source"/>
      <xpath value="f:SecurityEvent/f:event/f:dateTime"/>
    </searchParam>
    <searchParam>
      <name value="desc"/>
      <type value="string"/>
      <documentation value="Instance-specific descriptor for Object"/>
      <xpath value="f:SecurityEvent/f:object/f:name"/>
    </searchParam>
    <searchParam>
      <name value="identity"/>
      <type value="token"/>
      <documentation value="Specific instance of object (e.g. versioned)"/>
      <xpath value="f:SecurityEvent/f:object/f:identifier"/>
    </searchParam>
    <searchParam>
      <name value="name"/>
      <type value="string"/>
      <documentation value="Human-meaningful name for the user"/>
      <xpath value="f:SecurityEvent/f:participant/f:name"/>
    </searchParam>
    <searchParam>
      <name value="object-type"/>
      <type value="token"/>
      <documentation value="Object type being audited"/>
      <xpath value="f:SecurityEvent/f:object/f:type"/>
    </searchParam>
    <searchParam>
      <name value="patientid"/>
      <type value="token"/>
      <documentation value="The id of the patient (one of multiple kinds of participations)"/>
    </searchParam>
    <searchParam>
      <name value="reference"/>
      <type value="reference"/>
      <documentation value="Specific instance of resource (e.g. versioned)"/>
      <xpath value="f:SecurityEvent/f:object/f:reference"/>
    </searchParam>
    <searchParam>
      <name value="site"/>
      <type value="token"/>
      <documentation value="Logical source location within the enterprise"/>
      <xpath value="f:SecurityEvent/f:source/f:site"/>
    </searchParam>
    <searchParam>
      <name value="source"/>
      <type value="token"/>
      <documentation value="The id of source where event originated"/>
      <xpath value="f:SecurityEvent/f:source/f:identifier"/>
    </searchParam>
    <searchParam>
      <name value="subtype"/>
      <type value="token"/>
      <documentation value="More specific type/id for the event"/>
      <xpath value="f:SecurityEvent/f:event/f:subtype"/>
    </searchParam>
    <searchParam>
      <name value="type"/>
      <type value="token"/>
      <documentation value="Type/identifier of event"/>
      <xpath value="f:SecurityEvent/f:event/f:type"/>
    </searchParam>
    <searchParam>
      <name value="user"/>
      <type value="token"/>
      <documentation value="Unique identifier for the user"/>
      <xpath value="f:SecurityEvent/f:participant/f:userId"/>
    </searchParam>
  </structure>
</Profile>