Verifiable Health Link
0.0.2-current - ci-build International flag

Verifiable Health Link, published by IHE IT Infrastructure Technical Committee. This guide is not an authorized publication; it is the continuous build for version 0.0.2-current built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/IHE/ITI.VHL/ and changes regularly. See the Directory of published versions

: Test Plan – Trust Anchor - JSON Representation

Active as of 2026-03-13

Raw json | Download

{
  "resourceType" : "TestPlan",
  "id" : "TestPlan-TrustAnchor",
  "url" : "https://profiles.ihe.net/ITI/VHL/TestPlan/TestPlan-TrustAnchor",
  "version" : "0.0.2-current",
  "name" : "TestPlan_TrustAnchor",
  "title" : "Test Plan – Trust Anchor",
  "status" : "active",
  "date" : "2026-03-13T13:59:49+00:00",
  "publisher" : "IHE IT Infrastructure Technical Committee",
  "contact" : [
    {
      "telecom" : [
        {
          "system" : "url",
          "value" : "https://www.ihe.net/ihe_domains/it_infrastructure/"
        }
      ]
    },
    {
      "telecom" : [
        {
          "system" : "email",
          "value" : "iti@ihe.net"
        }
      ]
    },
    {
      "name" : "IHE IT Infrastructure Technical Committee",
      "telecom" : [
        {
          "system" : "email",
          "value" : "iti@ihe.net"
        }
      ]
    }
  ],
  "description" : "Unit test plan for the **Trust Anchor** actor of the IHE ITI Verifiable Health Links (VHL) profile.\n\nScope: validates all behaviour expected of a Trust Anchor as described in ITI-YY1 (responder)\nand ITI-YY2 (responder). Each test suite (testCase) corresponds to one transaction and exercises\nthree atomic feature files: message semantics (shared), responder expected actions, and security\nconsiderations.",
  "jurisdiction" : [
    {
      "coding" : [
        {
          "system" : "http://unstats.un.org/unsd/methods/m49/m49.htm",
          "code" : "001"
        }
      ]
    }
  ],
  "scope" : [
    {
      🔗 "reference" : "ActorDefinition/TrustAnchor"
    }
  ],
  "testCase" : [
    {
      "sequence" : 1,
      "testRun" : [
        {
          "narrative" : "**ITI-YY1 Message Semantics** – Verifies the DID Document message format that the Trust Anchor\nmust validate: mandatory @context / id / verificationMethod fields, verification method structure,\npublic key format (JWK/RFC 7517), private key exclusion, accepted cryptographic suites, key\nstrength (P-256+), and HTTP POST / Content-Type requirements.\nSource: section 2:3.YY1.4.1.2 (Message Semantics).",
          "script" : {
            "language" : {
              "coding" : [
                {
                  "system" : "urn:ietf:bcp:13",
                  "code" : "text/x-gherkin"
                }
              ],
              "text" : "Gherkin"
            },
            "sourceReference" : {
              "reference" : "https://build.fhir.org/ig/IHE/ITI.VHL/ITI-YY1-submit-pki-material-message.feature",
              "display" : "ITI-YY1 Submit PKI Material – Message Semantics"
            }
          }
        },
        {
          "narrative" : "**ITI-YY1 Trust Anchor Expected Actions** – Verifies structural and cryptographic validation,\nidentity authentication and authorisation, cataloguing, rejection criteria, revocation and\nupdate support, and correct HTTP response codes (201 / 400 / 401 / 403 / 422).\nSource: sections 2:3.YY1.4.1.3 (Responder) and 2:3.YY1.4.2 (Response Message).",
          "script" : {
            "language" : {
              "coding" : [
                {
                  "system" : "urn:ietf:bcp:13",
                  "code" : "text/x-gherkin"
                }
              ],
              "text" : "Gherkin"
            },
            "sourceReference" : {
              "reference" : "https://build.fhir.org/ig/IHE/ITI.VHL/ITI-YY1-submit-pki-material-responder.feature",
              "display" : "ITI-YY1 Submit PKI Material – Trust Anchor Expected Actions"
            }
          }
        },
        {
          "narrative" : "**ITI-YY1 Security Considerations** – Verifies §2:3.YY1.5 requirements: DID Document integrity\n(signed submissions), key material security (private key exclusion, minimum strength), identity\nverification (TLS, authentication mechanisms), DID Document validation (approved algorithms,\nusage arrays), and revocation distribution controls.",
          "script" : {
            "language" : {
              "coding" : [
                {
                  "system" : "urn:ietf:bcp:13",
                  "code" : "text/x-gherkin"
                }
              ],
              "text" : "Gherkin"
            },
            "sourceReference" : {
              "reference" : "https://build.fhir.org/ig/IHE/ITI.VHL/ITI-YY1-submit-pki-material-security.feature",
              "display" : "ITI-YY1 Submit PKI Material – Security Considerations"
            }
          }
        }
      ]
    },
    {
      "sequence" : 2,
      "testRun" : [
        {
          "narrative" : "**ITI-YY2 Message Semantics** – Verifies the request message options (single-DID GET,\nbulk GET, mCSD query, URL encoding, optional query parameters) and response message\nformats (single DID Document, collection, mCSD searchset Bundle, returned DID Document\ncontent requirements).\nSource: section 2:3.YY2.4 (Request and Response Messages).",
          "script" : {
            "language" : {
              "coding" : [
                {
                  "system" : "urn:ietf:bcp:13",
                  "code" : "text/x-gherkin"
                }
              ],
              "text" : "Gherkin"
            },
            "sourceReference" : {
              "reference" : "https://build.fhir.org/ig/IHE/ITI.VHL/ITI-YY2-retrieve-trust-list-message.feature",
              "display" : "ITI-YY2 Retrieve Trust List – Message Semantics"
            }
          }
        },
        {
          "narrative" : "**ITI-YY2 Trust Anchor Expected Actions** – Verifies active-document-only filtering (no\nrevoked/expired DID Documents), authentication and authorisation enforcement (401/403),\n404 handling for unknown DIDs, and optional response signing.\nSource: sections 2:3.YY2.4.2 (Response Message) and 2:3.YY2.5 (Security Considerations).",
          "script" : {
            "language" : {
              "coding" : [
                {
                  "system" : "urn:ietf:bcp:13",
                  "code" : "text/x-gherkin"
                }
              ],
              "text" : "Gherkin"
            },
            "sourceReference" : {
              "reference" : "https://build.fhir.org/ig/IHE/ITI.VHL/ITI-YY2-retrieve-trust-list-responder.feature",
              "display" : "ITI-YY2 Retrieve Trust List – Trust Anchor Expected Actions"
            }
          }
        },
        {
          "narrative" : "**ITI-YY2 Security Considerations** – Verifies TLS enforcement, response integrity\nverification, access control restrictions, and revocation propagation requirements.",
          "script" : {
            "language" : {
              "coding" : [
                {
                  "system" : "urn:ietf:bcp:13",
                  "code" : "text/x-gherkin"
                }
              ],
              "text" : "Gherkin"
            },
            "sourceReference" : {
              "reference" : "https://build.fhir.org/ig/IHE/ITI.VHL/ITI-YY2-retrieve-trust-list-security.feature",
              "display" : "ITI-YY2 Retrieve Trust List – Security Considerations"
            }
          }
        }
      ]
    }
  ]
}