PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.uv.tools.r5@0.4.0
    http://hl7.org/fhir/tools/StructureDefinition/CDSHooksRequest
description: 'This structure is defined to allow the FHIR Validator to validate a CDSHooks Request Body. TODO: This content will be moved to the CDS Hooks specification in the future'
package_name: hl7.fhir.uv.tools.r5
derivation: specialization
name: CDSHooksRequest
type: http://hl7.org/fhir/tools/StructureDefinition/CDSHooksRequest
elements:
  hook: {type: code, short: The hook that triggered this CDS Service call, index: 0}
  hookInstance: {short: A universally unique identifier (UUID) for this particular hook call, type: uuid, index: 1}
  fhirServer: {type: url, short: The base URL of the CDS Client's FHIR server, index: 2}
  fhirAuthorization:
    type: http://hl7.org/fhir/tools/StructureDefinition/CDSHooksElement
    short: A structure holding an OAuth 2.0 bearer access token granting the CDS Service access to FHIR resources, along with supplemental information relating to the token
    constraint:
      cds-r-2: {human: 'If the granted SMART scopes include patient scopes (i.e. ''patient/''), the patient field SHOULD be populated to identify the FHIR id of that patient.', severity: error, expression: scope.contains('Patient/') implies patient.exists()}
    index: 3
    elements:
      accessToken: {type: string, short: This is the OAuth 2.0 access token that provides access to the FHIR server, index: 4}
      tokenType:
        pattern: {type: Code, value: Bearer}
        short: 'Fixed value: Bearer'
        type: code
        index: 5
      expiresIn: {type: integer, short: The lifetime in seconds of the access token., index: 6}
      scope: {type: string, short: The scopes the access token grants the CDS Service, index: 7}
      subject: {type: string, short: 'The OAuth 2.0 client identifier of the CDS Service, as registered with the CDS Client''s authorization server', index: 8}
      patient: {type: id, short: 'The OAuth 2.0 client identifier of the CDS Service, as registered with the CDS Client''s authorization server', index: 9}
    required: [tokenType, accessToken, scope, subject, expiresIn]
  context: {type: 'http://hl7.org/fhir/tools/StructureDefinition/CDSHookContext', short: Hook-specific contextual data that the CDS service will need, index: 10}
  prefetch:
    type: Base
    short: Key/value pairs of FHIR queries the CDS Client provides on each call
    array: true
    index: 11
    elements:
      key: {type: code, short: Key of FHIR query - name for client to use when sending to Request, index: 12}
      value: {type: Resource, short: Value of FHIR query - FHIR Query for client to perform, index: 13}
    required: [key, value]
package_version: 0.4.0
class: logical
kind: logical
url: http://hl7.org/fhir/tools/StructureDefinition/CDSHooksRequest
base: http://hl7.org/fhir/tools/StructureDefinition/CDSHooksElement
version: 0.4.0
required: [hookInstance, context, hook]