WHO SMART Trust
1.1.6 - CI Build

WHO SMART Trust, published by WHO. This guide is not an authorized publication; it is the continuous build for version 1.1.6 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/VHLPayload and changes regularly. See the Directory of published versions

## Logical Model: SMARTHealthLinkPayload - XML Profile

Draft as of 2025-02-21

XML representation of the SMARTHealthLinkPayload logical model.

Raw xml | Download

    <StructureDefinition xmlns="http://hl7.org/fhir">
      <id value="SMARTHealthLinkPayload"/>
      <text>
        <status value="extensions"/>
        <div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: StructureDefinition SMARTHealthLinkPayload</b></p><a name="SMARTHealthLinkPayload"> </a><a name="hcSMARTHealthLinkPayload"> </a><a name="SMARTHealthLinkPayload-en-US"> </a><table border="0" cellpadding="0" cellspacing="0" style="border: 0px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top;"><tr style="border: 1px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top"><th style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="The logical name of the element">Name</a></th><th style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Information about the use of the element">Flags</a></th><th style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Minimum and Maximum # of times the element can appear in the instance">Card.</a></th><th style="width: 100px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Reference to the type of the element">Type</a></th><th style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Additional information about the element">Description &amp; Constraints</a><span style="float: right"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Legend for this format"><img src="data:image/png;base64, " alt="doco" style="background-color: inherit"/></a></span></th></tr><tr style="border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white"><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck1.png)" class="hierarchy"><img src="tbl_spacer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="icon_element.gif" alt="." style="background-color: white; background-color: inherit" title="Element" class="hierarchy"/> <a href="StructureDefinition-SMARTHealthLinkPayload-definitions.html#SMARTHealthLinkPayload" title="SMART Health Link Payload (DRAFT)

    This logical model constrains the Health Link Payload for a SMART Health Link

    A SMART Health Link URI is generated from this payload according to the algorithm documented [here](https://build.fhir.org/ig/HL7/smart-health-cards-and-links/links-specification.html#smart-health-links-sharing-application-generates-a-smart-health-link-uri)

    ">SMARTHealthLinkPayload</a><a name="SMARTHealthLinkPayload"> </a></td><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><span style="opacity: 0.5">0</span><span style="opacity: 0.5">..</span><span style="opacity: 0.5">*</span></td><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="StructureDefinition-HealthLinkPayload.html">HealthLinkPayload</a></td><td style="vertical-align: top; text-align : left; background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><br/>Elements defined in Ancestors:<a href="StructureDefinition-HealthLinkPayload.html" title="Manifest URL for this Health Link">url</a>, <a href="StructureDefinition-HealthLinkPayload.html" title="Decryption key for processing files returned in the manifest. 43 characters, consisting of 32 random bytes base64urlencoded.">key</a>, <a href="StructureDefinition-HealthLinkPayload.html" title="Optional. Number representing expiration time in Epoch seconds, as a hint to help the Health Link Receiving Application determine if this QR is stale. (Note: epoch times should be parsed into 64-bit numeric types.)">exp</a>, <a href="StructureDefinition-HealthLinkPayload.html" title="Optional. String created by concatenating single-character flags in alphabetical order:
    'L' indicates the Health Link is intended for long-term use and manifest content can evolve over time;
    'P' indicates the Health Link requires a Passcode to resolves; and 'U' indicates the Health Link's url resolves to a single encrypted file accessible via GET, bypassing the manifest and SHALL NOT be used in combination with P.
    &lt;/ul&gt;
      ">flag</a>, <a href="StructureDefinition-HealthLinkPayload.html" title="Optional. String no longer than 80 characters that provides a short description of the data behind the Health Link.">label</a>, <a href="StructureDefinition-HealthLinkPayload.html" title="Optional. Integer representing the Health Links protocol version this Health Link conforms to. MAY be omitted when the default value (1) applies.">v</a>, <a href="StructureDefinition-HealthLinkPayload.html" title="Classifying type code to distinguish different types of health links.  If not present then the Health Link is a SMART Health Link.">type</a><br/>SMART Health Link Payload (DRAFT)<br/><span style="font-weight:bold">Instances of this logical model can be the target of a Reference</span></td></tr>
    <tr style="border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: #F7F7F7"><td style="vertical-align: top; text-align : left; background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck00.png)" class="hierarchy"><img src="tbl_spacer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="tbl_vjoin_end.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="icon_element.gif" alt="." style="background-color: #F7F7F7; background-color: inherit" title="Element" class="hierarchy"/> <span style="text-decoration:line-through">type</span><a name="SMARTHealthLinkPayload.type"> </a></td><td style="vertical-align: top; text-align : left; background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/><td style="vertical-align: top; text-align : left; background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><span style="text-decoration:line-through"/><span style="text-decoration:line-through">0</span><span style="text-decoration:line-through">..</span><span style="text-decoration:line-through">0</span></td><td style="vertical-align: top; text-align : left; background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/><td style="vertical-align: top; text-align : left; background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/></tr>
    <tr><td colspan="5" class="hierarchy"><br/><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Legend for this format"><img src="data:image/png;base64, " alt="doco" style="background-color: inherit"/> Documentation for this format</a></td></tr></table></div>
      </text>
      <extension
                 url="http://hl7.org/fhir/StructureDefinition/structuredefinition-type-characteristics">
        <valueCode value="can-be-target"/>
      </extension>
      <url
           value="http://hl7.org/fhir/uv/smart-health-cards-and-links/StructureDefinition/SMARTHealthLinkPayload"/>
      <version value="1.1.6"/>
      <name value="SMARTHealthLinkPayload"/>
      <title value="SMART Health Link Payload (DRAFT)"/>
      <status value="draft"/>
      <date value="2025-02-21T10:09:05+00:00"/>
      <publisher value="WHO"/>
      <contact>
        <name value="WHO"/>
        <telecom>
          <system value="url"/>
          <value value="http://who.int"/>
        </telecom>
      </contact>
      <description
                   value="SMART Health Link Payload (DRAFT)

    This logical model constrains the Health Link Payload for a SMART Health Link

    A SMART Health Link URI is generated from this payload according to the algorithm documented [here](https://build.fhir.org/ig/HL7/smart-health-cards-and-links/links-specification.html#smart-health-links-sharing-application-generates-a-smart-health-link-uri)

    "/>
      <jurisdiction>
        <coding>
          <system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>
          <code value="001"/>
        </coding>
      </jurisdiction>
      <fhirVersion value="4.0.1"/>
      <kind value="logical"/>
      <abstract value="false"/>
      <type
            value="http://hl7.org/fhir/uv/smart-health-cards-and-links/StructureDefinition/SMARTHealthLinkPayload"/>
      <baseDefinition
                      value="http://hl7.org/fhir/uv/smart-health-cards-and-links/StructureDefinition/HealthLinkPayload"/>
      <derivation value="specialization"/>
      <snapshot>
        <extension
                   url="http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version">
          <valueString value="1.1.6"/>
        </extension>
        <element id="SMARTHealthLinkPayload">
          <path value="SMARTHealthLinkPayload"/>
          <short value="SMART Health Link Payload (DRAFT)"/>
          <definition
                      value="SMART Health Link Payload (DRAFT)

    This logical model constrains the Health Link Payload for a SMART Health Link

    A SMART Health Link URI is generated from this payload according to the algorithm documented [here](https://build.fhir.org/ig/HL7/smart-health-cards-and-links/links-specification.html#smart-health-links-sharing-application-generates-a-smart-health-link-uri)

    "/>
          <min value="0"/>
          <max value="*"/>
          <base>
            <path value="Base"/>
            <min value="0"/>
            <max value="*"/>
          </base>
          <isModifier value="false"/>
        </element>
        <element id="SMARTHealthLinkPayload.url">
          <path value="SMARTHealthLinkPayload.url"/>
          <short value="url"/>
          <definition value="Manifest URL for this Health Link"/>
          <min value="1"/>
          <max value="1"/>
          <base>
            <path value="HealthLinkPayload.url"/>
            <min value="1"/>
            <max value="1"/>
          </base>
          <type>
            <code value="string"/>
          </type>
        </element>
        <element id="SMARTHealthLinkPayload.key">
          <path value="SMARTHealthLinkPayload.key"/>
          <short
                 value="Decryption key for processing files returned in the manifest. 43 characters, consisting of 32 random bytes base64urlencoded."/>
          <definition
                      value="Decryption key for processing files returned in the manifest. 43 characters, consisting of 32 random bytes base64urlencoded."/>
          <min value="1"/>
          <max value="1"/>
          <base>
            <path value="HealthLinkPayload.key"/>
            <min value="1"/>
            <max value="1"/>
          </base>
          <type>
            <code value="string"/>
          </type>
        </element>
        <element id="SMARTHealthLinkPayload.exp">
          <path value="SMARTHealthLinkPayload.exp"/>
          <short
                 value="Optional. Number representing expiration time in Epoch seconds, as a hint to help the Health Link Receiving Application determine if this QR is stale. (Note: epoch times should be parsed into 64-bit numeric types.)"/>
          <definition
                      value="Optional. Number representing expiration time in Epoch seconds, as a hint to help the Health Link Receiving Application determine if this QR is stale. (Note: epoch times should be parsed into 64-bit numeric types.)"/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="HealthLinkPayload.exp"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <code value="string"/>
          </type>
        </element>
        <element id="SMARTHealthLinkPayload.flag">
          <path value="SMARTHealthLinkPayload.flag"/>
          <short
                 value="Optional. String created by concatenating single-character flags in alphabetical order:
    'L' indicates the Health Link is intended for long-term use and manifest content can evolve over time;
    'P' indicates the Health Link requires a Passcode to resolves; and 'U' indicates the Health Link's url resolves to a single encrypted file accessible via GET, bypassing the manifest and SHALL NOT be used in combination with P.
    &lt;/ul&gt;
      "/>
          <definition
                      value="Optional. String created by concatenating single-character flags in alphabetical order:
    'L' indicates the Health Link is intended for long-term use and manifest content can evolve over time;
    'P' indicates the Health Link requires a Passcode to resolves; and 'U' indicates the Health Link's url resolves to a single encrypted file accessible via GET, bypassing the manifest and SHALL NOT be used in combination with P.
    &lt;/ul&gt;"/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="HealthLinkPayload.flag"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <code value="string"/>
          </type>
        </element>
        <element id="SMARTHealthLinkPayload.label">
          <path value="SMARTHealthLinkPayload.label"/>
          <short
                 value="Optional. String no longer than 80 characters that provides a short description of the data behind the Health Link."/>
          <definition
                      value="Optional. String no longer than 80 characters that provides a short description of the data behind the Health Link."/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="HealthLinkPayload.label"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <code value="string"/>
          </type>
        </element>
        <element id="SMARTHealthLinkPayload.v">
          <path value="SMARTHealthLinkPayload.v"/>
          <short
                 value="Optional. Integer representing the Health Links protocol version this Health Link conforms to. MAY be omitted when the default value (1) applies."/>
          <definition
                      value="Optional. Integer representing the Health Links protocol version this Health Link conforms to. MAY be omitted when the default value (1) applies."/>
          <min value="0"/>
          <max value="1"/>
          <base>
            <path value="HealthLinkPayload.v"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <code value="string"/>
          </type>
        </element>
        <element id="SMARTHealthLinkPayload.type">
          <path value="SMARTHealthLinkPayload.type"/>
          <short
                 value="Classifying type code to distinguish different types of health links.  If not present then the Health Link is a SMART Health Link."/>
          <definition
                      value="Classifying type code to distinguish different types of health links.  If not present then the Health Link is a SMART Health Link."/>
          <min value="0"/>
          <max value="0"/>
          <base>
            <path value="HealthLinkPayload.type"/>
            <min value="0"/>
            <max value="1"/>
          </base>
          <type>
            <code value="code"/>
          </type>
        </element>
      </snapshot>
      <differential>
        <element id="SMARTHealthLinkPayload">
          <path value="SMARTHealthLinkPayload"/>
          <short value="SMART Health Link Payload (DRAFT)"/>
          <definition
                      value="SMART Health Link Payload (DRAFT)

    This logical model constrains the Health Link Payload for a SMART Health Link

    A SMART Health Link URI is generated from this payload according to the algorithm documented [here](https://build.fhir.org/ig/HL7/smart-health-cards-and-links/links-specification.html#smart-health-links-sharing-application-generates-a-smart-health-link-uri)

    "/>
        </element>
        <element id="SMARTHealthLinkPayload.type">
          <path value="SMARTHealthLinkPayload.type"/>
          <max value="0"/>
        </element>
      </differential>
    </StructureDefinition>