WHO SMART Trust
1.1.5 - CI Build

WHO SMART Trust, published by WHO. This guide is not an authorized publication; it is the continuous build for version 1.1.5 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/smart-trust/tree/did-updates and changes regularly. See the Directory of published versions

## Logical Model: SmartHealthLinkPayload - Detailed Descriptions

Draft as of 2024-12-11

Definitions for the SmartHealthLinkPayload logical model.

- Differential Elements Table
- Key Elements Table
- Snapshot Elements Table

Guidance on how to interpret the contents of this table can be found here

0. SmartHealthLinkPayload
Definition | Smart Health Link Payload (DRAFT) This logical model was taken from the SMART Health Link documentation https://docs.smarthealthit.org/smart-health-links/spec#construct-a-shlink-payload as if 30 November 2023. A [[ SMART Health Link]] is generated from this payload according to the algorithm documented here https://docs.smarthealthit.org/smart-health-links/spec#example-shlink-generation to create a It is generated
Short | Smart Health Link Payload (DRAFT)
Logical Model | Instances of this logical model are not marked to be the target of a Reference
2. SmartHealthLinkPayload.url
Definition | Manifest URL for this SHLink
Short | url
Control | 1..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
4. SmartHealthLinkPayload.key
Definition | Decryption key for processing files returned in the manifest. 43 characters, consisting of 32 random bytes base64urlencoded.
Short | Decryption key for processing files returned in the manifest. 43 characters, consisting of 32 random bytes base64urlencoded.
Control | 1..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
6. SmartHealthLinkPayload.exp
Definition | Optional. Number representing expiration time in Epoch seconds, as a hint to help the SHL Receiving Application determine if this QR is stale. (Note: epoch times should be parsed into 64-bit numeric types.)
Short | Optional. Number representing expiration time in Epoch seconds, as a hint to help the SHL Receiving Application determine if this QR is stale. (Note: epoch times should be parsed into 64-bit numeric types.)
Control | 0..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
8. SmartHealthLinkPayload.flag
Definition | Optional. String created by concatenating single-character flags in alphabetical order L Indicates the SHLink is intended for long-term use and manifest content can evolve over time P Indicates the SHLink requires a Passcode to resolves U Indicates the SHLink's url resolves to a single encrypted file accessible via GET, bypassing the manifest. SHALL NOT be used in combination with P.
Short | Optional. String created by concatenating single-character flags in alphabetical order L Indicates the SHLink is intended for long-term use and manifest content can evolve over time P Indicates the SHLink requires a Passcode to resolves U Indicates the SHLink's url resolves to a single encrypted file accessible via GET, bypassing the manifest. SHALL NOT be used in combination with P.
Control | 0..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
10. SmartHealthLinkPayload.label
Definition | Optional. String no longer than 80 characters that provides a short description of the data behind the SHLink.
Short | Optional. String no longer than 80 characters that provides a short description of the data behind the SHLink.
Control | 0..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
12. SmartHealthLinkPayload.v
Definition | Optional. Integer representing the SHLinks protocol version this SHLink conforms to. MAY be omitted when the default value (1) applies.
Short | Optional. Integer representing the SHLinks protocol version this SHLink conforms to. MAY be omitted when the default value (1) applies.
Control | 0..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension

Guidance on how to interpret the contents of this table can be found here

0. SmartHealthLinkPayload
Definition | Smart Health Link Payload (DRAFT) This logical model was taken from the SMART Health Link documentation https://docs.smarthealthit.org/smart-health-links/spec#construct-a-shlink-payload as if 30 November 2023. A [[ SMART Health Link]] is generated from this payload according to the algorithm documented here https://docs.smarthealthit.org/smart-health-links/spec#example-shlink-generation to create a It is generated
Short | Smart Health Link Payload (DRAFT)
Control | 0..*
Is Modifier | false
Logical Model | Instances of this logical model are not marked to be the target of a Reference
2. SmartHealthLinkPayload.url
Definition | Manifest URL for this SHLink
Short | url
Control | 1..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
4. SmartHealthLinkPayload.key
Definition | Decryption key for processing files returned in the manifest. 43 characters, consisting of 32 random bytes base64urlencoded.
Short | Decryption key for processing files returned in the manifest. 43 characters, consisting of 32 random bytes base64urlencoded.
Control | 1..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
6. SmartHealthLinkPayload.exp
Definition | Optional. Number representing expiration time in Epoch seconds, as a hint to help the SHL Receiving Application determine if this QR is stale. (Note: epoch times should be parsed into 64-bit numeric types.)
Short | Optional. Number representing expiration time in Epoch seconds, as a hint to help the SHL Receiving Application determine if this QR is stale. (Note: epoch times should be parsed into 64-bit numeric types.)
Control | 0..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
8. SmartHealthLinkPayload.flag
Definition | Optional. String created by concatenating single-character flags in alphabetical order L Indicates the SHLink is intended for long-term use and manifest content can evolve over time P Indicates the SHLink requires a Passcode to resolves U Indicates the SHLink's url resolves to a single encrypted file accessible via GET, bypassing the manifest. SHALL NOT be used in combination with P.
Short | Optional. String created by concatenating single-character flags in alphabetical order L Indicates the SHLink is intended for long-term use and manifest content can evolve over time P Indicates the SHLink requires a Passcode to resolves U Indicates the SHLink's url resolves to a single encrypted file accessible via GET, bypassing the manifest. SHALL NOT be used in combination with P.
Control | 0..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
10. SmartHealthLinkPayload.label
Definition | Optional. String no longer than 80 characters that provides a short description of the data behind the SHLink.
Short | Optional. String no longer than 80 characters that provides a short description of the data behind the SHLink.
Control | 0..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
12. SmartHealthLinkPayload.v
Definition | Optional. Integer representing the SHLinks protocol version this SHLink conforms to. MAY be omitted when the default value (1) applies.
Short | Optional. Integer representing the SHLinks protocol version this SHLink conforms to. MAY be omitted when the default value (1) applies.
Control | 0..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension

Guidance on how to interpret the contents of this table can be found here

0. SmartHealthLinkPayload
Definition | Smart Health Link Payload (DRAFT) This logical model was taken from the SMART Health Link documentation https://docs.smarthealthit.org/smart-health-links/spec#construct-a-shlink-payload as if 30 November 2023. A [[ SMART Health Link]] is generated from this payload according to the algorithm documented here https://docs.smarthealthit.org/smart-health-links/spec#example-shlink-generation to create a It is generated
Short | Smart Health Link Payload (DRAFT)
Control | 0..*
Is Modifier | false
Logical Model | Instances of this logical model are not marked to be the target of a Reference
2. SmartHealthLinkPayload.url
Definition | Manifest URL for this SHLink
Short | url
Control | 1..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
4. SmartHealthLinkPayload.key
Definition | Decryption key for processing files returned in the manifest. 43 characters, consisting of 32 random bytes base64urlencoded.
Short | Decryption key for processing files returned in the manifest. 43 characters, consisting of 32 random bytes base64urlencoded.
Control | 1..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
6. SmartHealthLinkPayload.exp
Definition | Optional. Number representing expiration time in Epoch seconds, as a hint to help the SHL Receiving Application determine if this QR is stale. (Note: epoch times should be parsed into 64-bit numeric types.)
Short | Optional. Number representing expiration time in Epoch seconds, as a hint to help the SHL Receiving Application determine if this QR is stale. (Note: epoch times should be parsed into 64-bit numeric types.)
Control | 0..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
8. SmartHealthLinkPayload.flag
Definition | Optional. String created by concatenating single-character flags in alphabetical order L Indicates the SHLink is intended for long-term use and manifest content can evolve over time P Indicates the SHLink requires a Passcode to resolves U Indicates the SHLink's url resolves to a single encrypted file accessible via GET, bypassing the manifest. SHALL NOT be used in combination with P.
Short | Optional. String created by concatenating single-character flags in alphabetical order L Indicates the SHLink is intended for long-term use and manifest content can evolve over time P Indicates the SHLink requires a Passcode to resolves U Indicates the SHLink's url resolves to a single encrypted file accessible via GET, bypassing the manifest. SHALL NOT be used in combination with P.
Control | 0..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
10. SmartHealthLinkPayload.label
Definition | Optional. String no longer than 80 characters that provides a short description of the data behind the SHLink.
Short | Optional. String no longer than 80 characters that provides a short description of the data behind the SHLink.
Control | 0..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension
12. SmartHealthLinkPayload.v
Definition | Optional. Integer representing the SHLinks protocol version this SHLink conforms to. MAY be omitted when the default value (1) applies.
Short | Optional. Integer representing the SHLinks protocol version this SHLink conforms to. MAY be omitted when the default value (1) applies.
Control | 0..1
Type | string
Primitive Value | This primitive element may be present, or absent, or replaced by an extension