This page is part of the HL7 Tools Extension IG (v0.8.0: Release - Informative) based on FHIR (HL7® FHIR® Standard) v5.0.0. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
| Official URL: http://hl7.org/fhir/tools/StructureDefinition/CDSHooksRequest | Version: 0.8.0 | |||
| Standards status: Informative | Maturity Level: 1 | Computable Name: CDSHooksRequest | ||
| Other Identifiers: OID:2.16.840.1.113883.4.642.40.1.42.6 | ||||
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
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints    Filter:   | 
|---|---|---|---|---|
|   CDSHooksRequest | C | 0..* | CDSHooksElement | Elements defined in Ancestors:extension A request for decision support Constraints: cds-r-1 | 
|    extension | 0..1 | CDSHooksExtensions | Object that has Named Extension Properties | |
|    hook | 1..1 | code | The hook that triggered this CDS Service call | |
|    hookInstance | 1..1 | uuid | A UUID for this particular hook call When this element is read urn:uuid:is prefixed to the value before validation | |
|    fhirServer | 0..1 | url | The base URL of the CDS Client's FHIR server | |
|    fhirAuthorization | C | 0..1 | CDSHooksElement | Authorization info for service to use when querying Constraints: cds-r-2 | 
|     extension | 0..1 | CDSHooksExtensions | Object that has Named Extension Properties | |
|     accessToken | 1..1 | string | OAuth 2.0 access token giving access to FHIR server JSON Property Name: access_token | |
|     tokenType | 1..1 | code | Bearer JSON Property Name: token_type Fixed Value: Bearer | |
|     expiresIn | 1..1 | integer | The lifetime in seconds of the access token JSON Property Name: expires_in | |
|     scope | 1..1 | string | Scopes granted by access token | |
|     subject | 1..1 | string | OAuth 2.0 client identifier of the CDS Service | |
|     patient | 0..1 | id | OAuth 2.0 client identifier of the CDS Service | |
|    context | 1..1 | CDSHookContext | Contextual data always needed for this hook type JSON: If %resource.hook = 'appointment-book'then the type is CDSHookAppointmentBookContextJSON: If %resource.hook = 'encounter-start'then the type is CDSHookEncounterStartContextJSON: If %resource.hook = 'encounter-discharge'then the type is CDSHookEncounterDischargeContextJSON: If %resource.hook = 'patient-view'then the type is CDSHookPatientViewContextJSON: If %resource.hook = 'order-dispatch'then the type is CDSHookOrderDispatchContextJSON: If %resource.hook = 'order-sign'then the type is CDSHookOrderSignContextJSON: If %resource.hook = 'order-select'then the type is CDSHookOrderSelectContext | |
|    prefetch | 0..* | Base | Additional information requested by service for this hook type JSON: Represented as a single JSON Object with named properties using the value of the key child as the key | |
|     key | 1..1 | code | Key of FHIR query | |
|     value | 1..1 | Resource | Results of query/read Id may or not be present (this is the default for elements but not resources) JSON: This object can be represented as null in the JSON structure (which counts as 'present' for cardinality purposes) | |
|  Documentation for this format | ||||
| Id | Grade | Path(s) | Details | Requirements | 
| cds-r-1 | error | CDSHooksRequest | if fhirAuthorization details are provided, a fhirServer SHALL be specified : fhirAuthorization.exists() implies fhirServer.exists() | |
| cds-r-2 | error | CDSHooksRequest.fhirAuthorization | 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. : scope.contains('Patient/') implies patient.exists() | 
This structure is derived from CDSHooksElement
| Name | Flags | Card. | Type | Description & Constraints    Filter:   | 
|---|---|---|---|---|
|   CDSHooksRequest | C | 0..* | CDSHooksElement | Elements defined in Ancestors:extension A request for decision support Constraints: cds-r-1 | 
|    hook | 1..1 | code | The hook that triggered this CDS Service call | |
|    hookInstance | 1..1 | uuid | A UUID for this particular hook call When this element is read urn:uuid:is prefixed to the value before validation | |
|    fhirServer | 0..1 | url | The base URL of the CDS Client's FHIR server | |
|    fhirAuthorization | C | 0..1 | CDSHooksElement | Authorization info for service to use when querying Constraints: cds-r-2 | 
|     accessToken | 1..1 | string | OAuth 2.0 access token giving access to FHIR server JSON Property Name: access_token | |
|     tokenType | 1..1 | code | Bearer JSON Property Name: token_type Fixed Value: Bearer | |
|     expiresIn | 1..1 | integer | The lifetime in seconds of the access token JSON Property Name: expires_in | |
|     scope | 1..1 | string | Scopes granted by access token | |
|     subject | 1..1 | string | OAuth 2.0 client identifier of the CDS Service | |
|     patient | 0..1 | id | OAuth 2.0 client identifier of the CDS Service | |
|    context | 1..1 | CDSHookContext | Contextual data always needed for this hook type JSON: If %resource.hook = 'appointment-book'then the type is CDSHookAppointmentBookContextJSON: If %resource.hook = 'encounter-start'then the type is CDSHookEncounterStartContextJSON: If %resource.hook = 'encounter-discharge'then the type is CDSHookEncounterDischargeContextJSON: If %resource.hook = 'patient-view'then the type is CDSHookPatientViewContextJSON: If %resource.hook = 'order-dispatch'then the type is CDSHookOrderDispatchContextJSON: If %resource.hook = 'order-sign'then the type is CDSHookOrderSignContextJSON: If %resource.hook = 'order-select'then the type is CDSHookOrderSelectContext | |
|    prefetch | 0..* | Base | Additional information requested by service for this hook type JSON: Represented as a single JSON Object with named properties using the value of the key child as the key | |
|     key | 1..1 | code | Key of FHIR query | |
|     value | 1..1 | Resource | Results of query/read Id may or not be present (this is the default for elements but not resources) JSON: This object can be represented as null in the JSON structure (which counts as 'present' for cardinality purposes) | |
|  Documentation for this format | ||||
| Id | Grade | Path(s) | Details | Requirements | 
| cds-r-1 | error | CDSHooksRequest | if fhirAuthorization details are provided, a fhirServer SHALL be specified : fhirAuthorization.exists() implies fhirServer.exists() | |
| cds-r-2 | error | CDSHooksRequest.fhirAuthorization | 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. : scope.contains('Patient/') implies patient.exists() | 
| Name | Flags | Card. | Type | Description & Constraints    Filter:   | 
|---|---|---|---|---|
|   CDSHooksRequest | C | 0..* | CDSHooksElement | Elements defined in Ancestors:extension A request for decision support Constraints: cds-r-1 | 
|    extension | 0..1 | CDSHooksExtensions | Object that has Named Extension Properties | |
|    hook | 1..1 | code | The hook that triggered this CDS Service call | |
|    hookInstance | 1..1 | uuid | A UUID for this particular hook call When this element is read urn:uuid:is prefixed to the value before validation | |
|    fhirServer | 0..1 | url | The base URL of the CDS Client's FHIR server | |
|    fhirAuthorization | C | 0..1 | CDSHooksElement | Authorization info for service to use when querying Constraints: cds-r-2 | 
|     extension | 0..1 | CDSHooksExtensions | Object that has Named Extension Properties | |
|     accessToken | 1..1 | string | OAuth 2.0 access token giving access to FHIR server JSON Property Name: access_token | |
|     tokenType | 1..1 | code | Bearer JSON Property Name: token_type Fixed Value: Bearer | |
|     expiresIn | 1..1 | integer | The lifetime in seconds of the access token JSON Property Name: expires_in | |
|     scope | 1..1 | string | Scopes granted by access token | |
|     subject | 1..1 | string | OAuth 2.0 client identifier of the CDS Service | |
|     patient | 0..1 | id | OAuth 2.0 client identifier of the CDS Service | |
|    context | 1..1 | CDSHookContext | Contextual data always needed for this hook type JSON: If %resource.hook = 'appointment-book'then the type is CDSHookAppointmentBookContextJSON: If %resource.hook = 'encounter-start'then the type is CDSHookEncounterStartContextJSON: If %resource.hook = 'encounter-discharge'then the type is CDSHookEncounterDischargeContextJSON: If %resource.hook = 'patient-view'then the type is CDSHookPatientViewContextJSON: If %resource.hook = 'order-dispatch'then the type is CDSHookOrderDispatchContextJSON: If %resource.hook = 'order-sign'then the type is CDSHookOrderSignContextJSON: If %resource.hook = 'order-select'then the type is CDSHookOrderSelectContext | |
|    prefetch | 0..* | Base | Additional information requested by service for this hook type JSON: Represented as a single JSON Object with named properties using the value of the key child as the key | |
|     key | 1..1 | code | Key of FHIR query | |
|     value | 1..1 | Resource | Results of query/read Id may or not be present (this is the default for elements but not resources) JSON: This object can be represented as null in the JSON structure (which counts as 'present' for cardinality purposes) | |
|  Documentation for this format | ||||
| Id | Grade | Path(s) | Details | Requirements | 
| cds-r-1 | error | CDSHooksRequest | if fhirAuthorization details are provided, a fhirServer SHALL be specified : fhirAuthorization.exists() implies fhirServer.exists() | |
| cds-r-2 | error | CDSHooksRequest.fhirAuthorization | 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. : scope.contains('Patient/') implies patient.exists() | 
This structure is derived from CDSHooksElement
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints    Filter:   | 
|---|---|---|---|---|
|   CDSHooksRequest | C | 0..* | CDSHooksElement | Elements defined in Ancestors:extension A request for decision support Constraints: cds-r-1 | 
|    extension | 0..1 | CDSHooksExtensions | Object that has Named Extension Properties | |
|    hook | 1..1 | code | The hook that triggered this CDS Service call | |
|    hookInstance | 1..1 | uuid | A UUID for this particular hook call When this element is read urn:uuid:is prefixed to the value before validation | |
|    fhirServer | 0..1 | url | The base URL of the CDS Client's FHIR server | |
|    fhirAuthorization | C | 0..1 | CDSHooksElement | Authorization info for service to use when querying Constraints: cds-r-2 | 
|     extension | 0..1 | CDSHooksExtensions | Object that has Named Extension Properties | |
|     accessToken | 1..1 | string | OAuth 2.0 access token giving access to FHIR server JSON Property Name: access_token | |
|     tokenType | 1..1 | code | Bearer JSON Property Name: token_type Fixed Value: Bearer | |
|     expiresIn | 1..1 | integer | The lifetime in seconds of the access token JSON Property Name: expires_in | |
|     scope | 1..1 | string | Scopes granted by access token | |
|     subject | 1..1 | string | OAuth 2.0 client identifier of the CDS Service | |
|     patient | 0..1 | id | OAuth 2.0 client identifier of the CDS Service | |
|    context | 1..1 | CDSHookContext | Contextual data always needed for this hook type JSON: If %resource.hook = 'appointment-book'then the type is CDSHookAppointmentBookContextJSON: If %resource.hook = 'encounter-start'then the type is CDSHookEncounterStartContextJSON: If %resource.hook = 'encounter-discharge'then the type is CDSHookEncounterDischargeContextJSON: If %resource.hook = 'patient-view'then the type is CDSHookPatientViewContextJSON: If %resource.hook = 'order-dispatch'then the type is CDSHookOrderDispatchContextJSON: If %resource.hook = 'order-sign'then the type is CDSHookOrderSignContextJSON: If %resource.hook = 'order-select'then the type is CDSHookOrderSelectContext | |
|    prefetch | 0..* | Base | Additional information requested by service for this hook type JSON: Represented as a single JSON Object with named properties using the value of the key child as the key | |
|     key | 1..1 | code | Key of FHIR query | |
|     value | 1..1 | Resource | Results of query/read Id may or not be present (this is the default for elements but not resources) JSON: This object can be represented as null in the JSON structure (which counts as 'present' for cardinality purposes) | |
|  Documentation for this format | ||||
| Id | Grade | Path(s) | Details | Requirements | 
| cds-r-1 | error | CDSHooksRequest | if fhirAuthorization details are provided, a fhirServer SHALL be specified : fhirAuthorization.exists() implies fhirServer.exists() | |
| cds-r-2 | error | CDSHooksRequest.fhirAuthorization | 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. : scope.contains('Patient/') implies patient.exists() | 
Differential View
This structure is derived from CDSHooksElement
| Name | Flags | Card. | Type | Description & Constraints    Filter:   | 
|---|---|---|---|---|
|   CDSHooksRequest | C | 0..* | CDSHooksElement | Elements defined in Ancestors:extension A request for decision support Constraints: cds-r-1 | 
|    hook | 1..1 | code | The hook that triggered this CDS Service call | |
|    hookInstance | 1..1 | uuid | A UUID for this particular hook call When this element is read urn:uuid:is prefixed to the value before validation | |
|    fhirServer | 0..1 | url | The base URL of the CDS Client's FHIR server | |
|    fhirAuthorization | C | 0..1 | CDSHooksElement | Authorization info for service to use when querying Constraints: cds-r-2 | 
|     accessToken | 1..1 | string | OAuth 2.0 access token giving access to FHIR server JSON Property Name: access_token | |
|     tokenType | 1..1 | code | Bearer JSON Property Name: token_type Fixed Value: Bearer | |
|     expiresIn | 1..1 | integer | The lifetime in seconds of the access token JSON Property Name: expires_in | |
|     scope | 1..1 | string | Scopes granted by access token | |
|     subject | 1..1 | string | OAuth 2.0 client identifier of the CDS Service | |
|     patient | 0..1 | id | OAuth 2.0 client identifier of the CDS Service | |
|    context | 1..1 | CDSHookContext | Contextual data always needed for this hook type JSON: If %resource.hook = 'appointment-book'then the type is CDSHookAppointmentBookContextJSON: If %resource.hook = 'encounter-start'then the type is CDSHookEncounterStartContextJSON: If %resource.hook = 'encounter-discharge'then the type is CDSHookEncounterDischargeContextJSON: If %resource.hook = 'patient-view'then the type is CDSHookPatientViewContextJSON: If %resource.hook = 'order-dispatch'then the type is CDSHookOrderDispatchContextJSON: If %resource.hook = 'order-sign'then the type is CDSHookOrderSignContextJSON: If %resource.hook = 'order-select'then the type is CDSHookOrderSelectContext | |
|    prefetch | 0..* | Base | Additional information requested by service for this hook type JSON: Represented as a single JSON Object with named properties using the value of the key child as the key | |
|     key | 1..1 | code | Key of FHIR query | |
|     value | 1..1 | Resource | Results of query/read Id may or not be present (this is the default for elements but not resources) JSON: This object can be represented as null in the JSON structure (which counts as 'present' for cardinality purposes) | |
|  Documentation for this format | ||||
| Id | Grade | Path(s) | Details | Requirements | 
| cds-r-1 | error | CDSHooksRequest | if fhirAuthorization details are provided, a fhirServer SHALL be specified : fhirAuthorization.exists() implies fhirServer.exists() | |
| cds-r-2 | error | CDSHooksRequest.fhirAuthorization | 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. : scope.contains('Patient/') implies patient.exists() | 
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints    Filter:   | 
|---|---|---|---|---|
|   CDSHooksRequest | C | 0..* | CDSHooksElement | Elements defined in Ancestors:extension A request for decision support Constraints: cds-r-1 | 
|    extension | 0..1 | CDSHooksExtensions | Object that has Named Extension Properties | |
|    hook | 1..1 | code | The hook that triggered this CDS Service call | |
|    hookInstance | 1..1 | uuid | A UUID for this particular hook call When this element is read urn:uuid:is prefixed to the value before validation | |
|    fhirServer | 0..1 | url | The base URL of the CDS Client's FHIR server | |
|    fhirAuthorization | C | 0..1 | CDSHooksElement | Authorization info for service to use when querying Constraints: cds-r-2 | 
|     extension | 0..1 | CDSHooksExtensions | Object that has Named Extension Properties | |
|     accessToken | 1..1 | string | OAuth 2.0 access token giving access to FHIR server JSON Property Name: access_token | |
|     tokenType | 1..1 | code | Bearer JSON Property Name: token_type Fixed Value: Bearer | |
|     expiresIn | 1..1 | integer | The lifetime in seconds of the access token JSON Property Name: expires_in | |
|     scope | 1..1 | string | Scopes granted by access token | |
|     subject | 1..1 | string | OAuth 2.0 client identifier of the CDS Service | |
|     patient | 0..1 | id | OAuth 2.0 client identifier of the CDS Service | |
|    context | 1..1 | CDSHookContext | Contextual data always needed for this hook type JSON: If %resource.hook = 'appointment-book'then the type is CDSHookAppointmentBookContextJSON: If %resource.hook = 'encounter-start'then the type is CDSHookEncounterStartContextJSON: If %resource.hook = 'encounter-discharge'then the type is CDSHookEncounterDischargeContextJSON: If %resource.hook = 'patient-view'then the type is CDSHookPatientViewContextJSON: If %resource.hook = 'order-dispatch'then the type is CDSHookOrderDispatchContextJSON: If %resource.hook = 'order-sign'then the type is CDSHookOrderSignContextJSON: If %resource.hook = 'order-select'then the type is CDSHookOrderSelectContext | |
|    prefetch | 0..* | Base | Additional information requested by service for this hook type JSON: Represented as a single JSON Object with named properties using the value of the key child as the key | |
|     key | 1..1 | code | Key of FHIR query | |
|     value | 1..1 | Resource | Results of query/read Id may or not be present (this is the default for elements but not resources) JSON: This object can be represented as null in the JSON structure (which counts as 'present' for cardinality purposes) | |
|  Documentation for this format | ||||
| Id | Grade | Path(s) | Details | Requirements | 
| cds-r-1 | error | CDSHooksRequest | if fhirAuthorization details are provided, a fhirServer SHALL be specified : fhirAuthorization.exists() implies fhirServer.exists() | |
| cds-r-2 | error | CDSHooksRequest.fhirAuthorization | 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. : scope.contains('Patient/') implies patient.exists() | 
This structure is derived from CDSHooksElement