<?xml version="1.0" encoding="UTF-8"?>

<Requirements xmlns="http://hl7.org/fhir">
  <id value="UtilizeVDHC"/>
  <meta>
    <profile value="http://smart.who.int/base/StructureDefinition/SGRequirements"/>
  </meta>
  <text>
    <status value="generated"/><div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: Requirements UtilizeVDHC</b></p><a name="UtilizeVDHC"> </a><a name="hcUtilizeVDHC"> </a><a name="UtilizeVDHC-en-US"> </a><div style="display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%"><p style="margin-bottom: 0px"/><p style="margin-bottom: 0px">Profile: <a href="https://build.fhir.org/ig/WorldHealthOrganization/smart-base/StructureDefinition-SGRequirements.html">SGRequirements</a></p></div><p>These requirements apply to the actor <a href="ActorDefinition-Receiver.html">Receiver</a></p><table class="grid"><tr><td><b><a name="UtilizeVDHC-reveive"> </a></b>Ingest VDHC</td><td/><td><div><p>A user of a Receiver system receives a Verfiable Digital Health Certificate from a Holder. The user ingests the Verifiable Digital Health Certificate into the Receiver system.  The means of conveyance and how the Verifiable Digital Health Certificate is rendered is depedent on the use context.</p>
</div></td></tr><tr><td><b><a name="UtilizeVDHC-retreive-keys"> </a></b>Retrieve matching keys</td><td/><td><div><p>Retrieve and/or filter from an apporopriate PKI material distribution endpoint the set of public keys that match the key identifier (kid), trust domain code, participant code, and/or key usage code as applicable to the context of use of the Verfiable Digital Health Certificate.</p>
</div></td></tr><tr><td><b><a name="UtilizeVDHC-validate-hash"> </a></b>Compute Hash</td><td/><td><div><p>As appropriate  to the content type of the Verfiable Digtial Health Certificate, compute the hash of the content, and use the retrieved public keys(s) to try to verify the signature against the hashed value.</p>
</div></td></tr><tr><td><b><a name="UtilizeVDHC-display-verified-content"> </a></b>Display verified content</td><td/><td><div><p>Display verified cotent to the user of the Reciever system.</p>
</div></td></tr><tr><td><b><a name="UtilizeVDHC-execute-business-rule"> </a></b>Execute business rules</td><td/><td><div><p>Execute zero or more business rules against the Verifiable Digital Health Certificate that was provided by a Holder.  Results of the execution of the business rules are displayed to the user of the Receiver system.</p>
</div></td></tr></table></div>
  </text>
  <url value="http://smart.who.int/trust/Requirements/UtilizeVDHC"/>
  <version value="1.1.6"/>
  <name value="Utilize VDHC"/>
  <title value="Utilize a Verifiable Digital Health Certificate"/>
  <status value="active"/>
  <experimental value="true"/>
  <date value="2025-05-07T08:17:04+00:00"/>
  <publisher value="WHO"/>
  <contact>
    <name value="WHO"/>
    <telecom>
      <system value="url"/>
      <value value="http://who.int"/>
    </telecom>
  </contact>
  <description value="Utilize a Verifiable Digital Health Certificate that was provided by a Holder"/>
  <jurisdiction>
    <coding>
      <system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>
      <code value="001"/>
    </coding>
  </jurisdiction>
  <actor value="http://smart.who.int/trust/ActorDefinition/Receiver"/>
  <statement>
    <key value="UtilizeVDHC-reveive"/>
    <label value="Ingest VDHC"/>
    <requirement value="A user of a Receiver system receives a Verfiable Digital Health Certificate from a Holder. The user ingests the Verifiable Digital Health Certificate into the Receiver system.  The means of conveyance and how the Verifiable Digital Health Certificate is rendered is depedent on the use context."/>
  </statement>
  <statement>
    <key value="UtilizeVDHC-retreive-keys"/>
    <label value="Retrieve matching keys"/>
    <requirement value="Retrieve and/or filter from an apporopriate PKI material distribution endpoint the set of public keys that match the key identifier (kid), trust domain code, participant code, and/or key usage code as applicable to the context of use of the Verfiable Digital Health Certificate."/>
  </statement>
  <statement>
    <key value="UtilizeVDHC-validate-hash"/>
    <label value="Compute Hash"/>
    <requirement value="As appropriate  to the content type of the Verfiable Digtial Health Certificate, compute the hash of the content, and use the retrieved public keys(s) to try to verify the signature against the hashed value."/>
  </statement>
  <statement>
    <key value="UtilizeVDHC-display-verified-content"/>
    <label value="Display verified content"/>
    <requirement value="Display verified cotent to the user of the Reciever system."/>
  </statement>
  <statement>
    <key value="UtilizeVDHC-execute-business-rule"/>
    <label value="Execute business rules"/>
    <requirement value="Execute zero or more business rules against the Verifiable Digital Health Certificate that was provided by a Holder.  Results of the execution of the business rules are displayed to the user of the Receiver system."/>
  </statement>
</Requirements>