PackagesCanonicalsLogsProblems
    Packages
    ihe.iti.balp@1.1.2
    https://profiles.ihe.net/ITI/BALP/StructureDefinition/IHE.IUA.71
description: Defines constraints on the AuditEvent Resource to record when a ITI-71 - Get Access Token succeeds\n\nThis AuditEvent is recorded by Authorization Client and/or Authorization Server that are grouped with ATNA Secure Node or Secure Application.\n- User Authenticated event\n- ITI-71 subtype\n- 2 or 3 agents\n  - client - \n  - auth-server\n  - user user\n- 1 entity  \n  - the access token request
package_name: ihe.iti.balp
derivation: constraint
name: AuditIUAgetAccessToken
type: AuditEvent
elements:
  type:
    pattern:
      type: Coding
      value: {code: '110114', system: 'http://dicom.nema.org/resources/ontology/DCM'}
    index: 0
  subtype:
    pattern:
      type: Coding
      value: {code: ITI-71, system: 'urn:ihe:event-type-code'}
    index: 1
  action:
    pattern: {type: Code, value: E}
    index: 2
  outcome:
    pattern: {type: Code, value: '0'}
    index: 3
  agent:
    array: true
    min: 2
    max: 3
    index: 4
    slicing:
      rules: closed
      discriminator:
      - {path: type, type: pattern}
      min: 2
      max: 3
      slices:
        client:
          match:
            type:
              coding:
              - {code: '110150', system: 'http://dicom.nema.org/resources/ontology/DCM'}
          schema:
            _required: true
            index: 5
            elements:
              type:
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: '110150', system: 'http://dicom.nema.org/resources/ontology/DCM'}
                index: 6
              who: {index: 7}
              media: {index: 8}
              network: {index: 9}
            required: [who, network, type]
        auth-server:
          match:
            type:
              coding:
              - {code: AuthzOauthService, system: 'https://profiles.ihe.net/ITI/BALP/CodeSystem/UserAgentTypes'}
          schema:
            _required: true
            index: 10
            elements:
              type:
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: AuthzOauthService, system: 'https://profiles.ihe.net/ITI/BALP/CodeSystem/UserAgentTypes'}
                index: 11
              who: {index: 12}
              media: {index: 13}
              network: {index: 14}
            required: [who, network, type]
        user:
          match:
            type:
              coding:
              - {code: IRCP, system: 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType'}
          schema:
            index: 15
            elements:
              role: {mustSupport: true, index: 17}
              requestor:
                pattern: {type: Boolean, value: true}
                index: 21
              who: {index: 18}
              altId: {index: 19}
              name: {mustSupport: true, index: 20}
              type:
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: IRCP, system: 'http://terminology.hl7.org/CodeSystem/v3-ParticipationType'}
                index: 16
              purposeOfUse: {mustSupport: true, index: 24}
              network: {index: 23}
              media: {index: 22}
            required: [who, type]
  source: {mustSupport: true, index: 25}
  entity:
    index: 26
    slicing:
      rules: closed
      discriminator:
      - {path: role, type: pattern}
      min: 1
      max: 1
      slices:
        token-request:
          match:
            role: {code: '24', system: 'http://terminology.hl7.org/CodeSystem/object-role'}
          schema:
            _required: true
            index: 27
            elements:
              what: {index: 28}
              type:
                pattern:
                  type: Coding
                  value: {code: '2', system: 'http://terminology.hl7.org/CodeSystem/audit-entity-type'}
                index: 29
              role:
                pattern:
                  type: Coding
                  value: {code: '24', system: 'http://terminology.hl7.org/CodeSystem/object-role'}
                index: 30
              query: {short: 'contains the http request in raw form, without the code_verifier value', index: 31}
            required: [role, query]
        token-response:
          match:
            role: {code: '13', system: 'http://terminology.hl7.org/CodeSystem/object-role'}
          schema:
            index: 32
            elements:
              what: {short: holds the token id issued, index: 33}
              type:
                pattern:
                  type: Coding
                  value: {code: '2', system: 'http://terminology.hl7.org/CodeSystem/audit-entity-type'}
                index: 34
              role:
                pattern:
                  type: Coding
                  value: {code: '13', system: 'http://terminology.hl7.org/CodeSystem/object-role'}
                index: 35
              detail: {short: holds the key values from the response, index: 36}
            required: [role, detail, what]
package_version: 1.1.2
class: profile
kind: resource
url: https://profiles.ihe.net/ITI/BALP/StructureDefinition/IHE.IUA.71
base: http://hl7.org/fhir/StructureDefinition/AuditEvent
version: 1.1.2
required: [subtype, entity]