VhDir Implementation Guide CI Build: STU2 Ballot

This page is part of the Validated Healthcare Directory FHIR IG (v0.2.0: STU 1 Ballot 2) based on FHIR v3.5.0. . For a full list of available versions, see the Directory of published versions

StructureDefinition-vhdir-validation

This profile sets minimum expectations for searching for and fetching information associated with validation. It identifies which core elements, extensions, vocabularies and value sets SHALL be present in the VerificationResult resource when using this profile.

Background & Scope

This implementation guide was developed to support the need for validated provider data in many different healthcare workflows. It profiles the verificationResult resource to convey information about the validation status of any data in a validated healthcare directory, including how it was validated, who validated it, and where the data came from.

This profile modifies the base VerificationResult resource in the following manner:

  • Constrains the cardinality of VerificationResult.target (1..), verificationResult.need (1..1), verificationResult.statusDate (1..1), verificationResult.validationType (1..1), verificationResult.validationProcess (1..), verificationResult.failureAction (1..1), verificationResult.primarySource.type (1..*), verificationResult.attestation.method (1..1), verificationResult.attestation.date (1..1)

  • All references SHALL conform to the appropriate Validated Healthcare Directory Implementation Guide profile

  • Adds new value sets/updates value set bindings:

TBD

Examples:

The following are example uses for the vhdir-validation profile:

Mandatory Data Elements

The following data-elements are mandatory (i.e data MUST be present). These are presented below in a simple human-readable explanation. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.

Each VerificationResult resource must have:

  1. At least one target in verificationResult.target
  2. A coded representation of how often the target is validated in verificationResult.need
  3. A coded representation of the target’s current validation status in verificationResult.status
  4. A date/time when the target’s validation status was last updated in verificationResult.statusDate
  5. A coded representation of whether the target is validated against a primary source(s) in verificationResult.validationType
  6. At least one coded/text representation of the process by which the target was validated in verificationResult.validationProcess
  7. A coded representation of what happens if validation of the target fails in verificationResult.failureAction
  8. For each primary source described:
    1. At least one coded/text representation of the type of primary source in verificationResult.primarySource.type
  9. Information about the source of the attested information in VerificationResult.attestation, including a reference to a Practitioner or Organization resource representing the source of the information in VerificationResult.attestation.source
  10. For each validator described:
    1. One reference to the Organization resource for the validator in verificationResult.validator.organization

Profile specific implementation guidance:

The core of the verificationResult resource includes basic information about how data was validated:

  • verificationResult.target and verificationResult.targetLocation provide a means to describe the specific data that has been validated. The target is a reference to any resource, and the targetLocation is a FHIRpath expression indicating which specific element(s) in that resource have been validated.
  • verificationResult.need and verificationResult.frequency describe when the target should be validated, and how often it must be revalidated
  • verificationResult.status describes the current status of validation for the target. verificationResult.statusDate indicates when the validation status was last updated.
  • verificationResult.validationType describes what the target is validated against (i.e. whether it is validated against a single primary source, whether it is validated against multiple sources, or whether it wasn’t validated because attested information is sufficient)
  • verificationResult.validationProcess describes the validation processes for validating the target
  • verificationResult.lastPerformed and verificationResult.nextScheduled describe the last completed and next scheduled dates of validation for the target
  • verificationResult.failureAction describes what happens if validation of the target fails

The resource also provides information about entities involved in the validation process:

verificationResult.primarySource provides information about the primary source(s) the target was validated against

  • organization identifies the primary source, and type indicates what the primary source is
  • validationProcess indicates how an entity can communicate with the primary source
  • validationStatus, and validationDate describe the status of the validation of the target against the primary source
  • canPushUpdates and pushTypeAvailable indicate whether a primary source can push updates or alerts (e.g. alerting the validated healthcare directory if a license board suspends a practitioner’s license)

verificationResult.attestation provides information about who attested to the information being validated

  • source identifies the source of the attested information (a practitioner or organization), organization identifies an organization attesting to the target. If a value is present in organization, there should also be a value in source (because an individual typically attests on behalf of an organization).
  • method indicates who is providing the attested information. Often, an individual will attest to their own information. However, another entity may submit attested information on an individual’s behalf (e.g. a practice manager attests to information on behalf of all providers in a group practice).
  • date indicates when the information was attested to
  • sourceIdentityCertificate and proxyIdentityCertificate assert the identity of the individual attesting to information and any proxy providing attested information on their behalf.
  • signedSourceAttestation and signedProxyRight assert that information was attested to/provided by the entity with the right to do so.–>

verificationResult.validator provides information about the entity performing the validation of the target

  • organization identifies the validating organization, and identityCertificate asserts their identity

Formal Views of Profile Content

Description of Profiles, Differentials, and Snapshots.

The official URL for this profile is: http://hl7.org/fhir/uv/vhdir/StructureDefinition/vhdir-validation

Published on Mon Dec 11 03:42:47 AEST 2017 as a active by .

This profile builds on VerificationResult


Complete Summary of the Mandatory Requirements

  1. At least one target in verificationResult.target
  2. A coded representation of how often the target is validated in verificationResult.need
  3. A coded representation of the target’s current validation status in verificationResult.status
  4. A date/time when the target’s validation status was last updated in verificationResult.statusDate
  5. A coded representation of whether the target is validated against a primary source(s) in verificationResult.validationType
  6. At least one coded/text representation of the process by which the target was validated in verificationResult.validationProcess
  7. A coded representation of what happens if validation of the target fails in verificationResult.failureAction
  8. For each primary source described:
    1. At least one coded/text representation of the type of primary source in verificationResult.primarySource.type
  9. Information about the source of the attested information in VerificationResult.attestation, including a reference to a Practitioner or Organization resource representing the source of the information in VerificationResult.attestation.source
  10. For each validator described:
    1. One reference to the Organization resource for the validator in verificationResult.validator.organization
NameFlagsCard.TypeDescription & Constraintsdoco
.. VerificationResult I0..*Validation
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (preferred)
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... target Σ1..*Reference(Resource)A resource that was validated
... targetLocation Σ0..*stringThe fhirpath location(s) within the resource that was validated
... need Σ1..1CodeableConceptnone | initial | periodic
Binding: need (preferred)
... status Σ1..1codeattested | validated | in-process | req-revalid | val-fail | reval-fail
Binding: status (required)
... statusDate Σ1..1dateTimeWhen the validation status was updated
... validationType Σ1..1CodeableConceptnothing|single|multiple
Binding: VhDir External Validation Type Value Set (example)
... validationProcess Σ1..*CodeableConceptThe process(es) by which the target is validated
Binding: VhDir Validation Process (example)
... frequency 0..1TimingFrequency of revalidation
... lastPerformed 0..1dateTimeThe date/time validation was last completed (incl. failed validations)
... nextScheduled 0..1dateThe date when target is next validated, if appropriate
... failureAction Σ1..1CodeableConceptfatal | warn | rec-only | none
Binding: failure-action (preferred)
... primarySource I0..*BackboneElementInformation about the primary source(s) involved in validation
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... organization 0..1Reference(VhDir Organization | VhDir Practitioner)Reference to the primary source
.... type Σ1..*CodeableConceptType of primary source
Binding: VhDir Primary Source Validation Type (example)
.... validationProcess Σ0..*CodeableConceptThe process(es) by which the target is validated
Binding: VhDir Primary Source Validation Process (example)
.... validationStatus 0..1CodeableConceptsuccessful | failed | unknown
Binding: validation-status (preferred)
.... validationDate 0..1dateTimeWhen the target was validated against the primary source
.... canPushUpdates Σ0..1CodeableConceptyes | no | undetermined
Binding: can-push-updates (preferred)
.... pushTypeAvailable 0..*CodeableConceptspecific | any | source
Binding: push-type-available (preferred)
... attestation I1..1BackboneElementInformation about the entity attesting to information
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... source Σ1..1Reference(VhDir Practitioner | VhDir Organization)Attestation source
.... organization Σ0..1Reference(VhDir Practitioner)Proxy for attested information
.... method Σ1..1CodeableConceptAttestation process
Binding: VhDir Primary Source Validation Process (example)
.... date Σ1..1dateThe date the information was attested to
.... sourceIdentityCertificate 0..1stringA digital identity certificate associated with the attestation source
.... proxyIdentityCertificate 0..1stringA digital identity certificate associated with the proxy entity submitting attested information on behalf of the attestation source
.... signedProxyRight[x] 0..1string, uriProxy signature
.... signedSourceAttestation[x] 0..1string, uriAttester signature
... validator I0..*BackboneElementInformation about the entity validating information
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... organization 1..1Reference(VhDir Organization)Reference to the organization validating information
.... identityCertificate 0..1stringA digital identity certificate associated with the validator
.... signedValidatorAttestation[x] 0..1string, uriValidator signature

doco Documentation for this format

Summary

Mandatory: 11 elements (1 nested mandatory element)

Structures

This structure refers to these other structures:

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. VerificationResult I0..*Validation
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (preferred)
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... target Σ1..*Reference(Resource)A resource that was validated
... targetLocation Σ0..*stringThe fhirpath location(s) within the resource that was validated
... need Σ1..1CodeableConceptnone | initial | periodic
Binding: need (preferred)
... status Σ1..1codeattested | validated | in-process | req-revalid | val-fail | reval-fail
Binding: status (required)
... statusDate Σ1..1dateTimeWhen the validation status was updated
... validationType Σ1..1CodeableConceptnothing|single|multiple
Binding: VhDir External Validation Type Value Set (example)
... validationProcess Σ1..*CodeableConceptThe process(es) by which the target is validated
Binding: VhDir Validation Process (example)
... frequency 0..1TimingFrequency of revalidation
... lastPerformed 0..1dateTimeThe date/time validation was last completed (incl. failed validations)
... nextScheduled 0..1dateThe date when target is next validated, if appropriate
... failureAction Σ1..1CodeableConceptfatal | warn | rec-only | none
Binding: failure-action (preferred)
... primarySource I0..*BackboneElementInformation about the primary source(s) involved in validation
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... organization 0..1Reference(VhDir Organization | VhDir Practitioner)Reference to the primary source
.... type Σ1..*CodeableConceptType of primary source
Binding: VhDir Primary Source Validation Type (example)
.... validationProcess Σ0..*CodeableConceptThe process(es) by which the target is validated
Binding: VhDir Primary Source Validation Process (example)
.... validationStatus 0..1CodeableConceptsuccessful | failed | unknown
Binding: validation-status (preferred)
.... validationDate 0..1dateTimeWhen the target was validated against the primary source
.... canPushUpdates Σ0..1CodeableConceptyes | no | undetermined
Binding: can-push-updates (preferred)
.... pushTypeAvailable 0..*CodeableConceptspecific | any | source
Binding: push-type-available (preferred)
... attestation I1..1BackboneElementInformation about the entity attesting to information
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... source Σ1..1Reference(VhDir Practitioner | VhDir Organization)Attestation source
.... organization Σ0..1Reference(VhDir Practitioner)Proxy for attested information
.... method Σ1..1CodeableConceptAttestation process
Binding: VhDir Primary Source Validation Process (example)
.... date Σ1..1dateThe date the information was attested to
.... sourceIdentityCertificate 0..1stringA digital identity certificate associated with the attestation source
.... proxyIdentityCertificate 0..1stringA digital identity certificate associated with the proxy entity submitting attested information on behalf of the attestation source
.... signedProxyRight[x] 0..1string, uriProxy signature
.... signedSourceAttestation[x] 0..1string, uriAttester signature
... validator I0..*BackboneElementInformation about the entity validating information
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... organization 1..1Reference(VhDir Organization)Reference to the organization validating information
.... identityCertificate 0..1stringA digital identity certificate associated with the validator
.... signedValidatorAttestation[x] 0..1string, uriValidator signature

doco Documentation for this format

Downloads: StructureDefinition: (XML, JSON), Schema: XML Schematron


Quick Start

Below is an overview of the required set of RESTful FHIR interactions - for example, search and read operations - for this profile. See the Conformance requirements for a complete list of supported RESTful interactions for this IG.

Supported Searches

  1. GET [base]/VerificationResult?verificationresult-attestation-attester=[id]

    Support: SHALL support search by the verificationresult-attestation-attester parameter

    • with a target type: Practitioner, Organization
    • including the modifiers: type
    • including these search paramaters which may be chained: organization-identifier, organization-address, organization-name, organization-partof, practitioner-identifier, practitioner-name

  1. GET [base]/VerificationResult?verificationresult-attestation-method=[code]

    Support: SHOULD support search by the verificationresult-attestation-method parameter

    • including the modifiers: text

  1. GET [base]/VerificationResult?verificationresult-attestation-proxy=[id]

    Support: SHALL support search by the verificationresult-attestation-proxy parameter

    • with a target type: Practitioner
    • including these search paramaters which may be chained: practitioner-identifier, practitioner-name

  1. GET [base]/VerificationResult?verificationresult-primarysource-date=[dateTime]

    Support: SHOULD support search by the verificationresult-primarysource-date parameter

    • including the comparators: eq, gt, lt, ge, le, sa, eb

  1. GET [base]/VerificationResult?verificationresult-primarysource-organization=[id]

    Support: SHALL support search by the verificationresult-primarysource-organization parameter

    • with a target type: Organization
    • including the modifiers: above, below
    • including these search paramaters which may be chained: organization-identifier, organization-name

  1. GET [base]/VerificationResult?verificationresult-primarysource-type=[code]

    Support: SHOULD support search by the verificationresult-primarysource-type parameter

    • including the modifiers: text

  1. GET [base]/VerificationResult?verificationresult-status-date=[dateTime]

    Support: SHOULD support search by the verificationresult-status-date parameter

    • including the comparators: eq, gt, lt, ge, le, sa, eb

  1. GET [base]/VerificationResult?verificationresult-target=[id]

    Support: SHALL support search by the verificationresult-target parameter

    • with a target type: Any
    • including the modifier: type

  1. GET [base]/VerificationResult?verificationresult-target-location=[string]

    Support: SHALL support search by the verificationresult-target-location parameter

    • including the modifiers: exact, contains

  1. GET [base]/VerificationResult?verificationresult-status=[code]

    Support: SHALL support search by the verificationresult-validation-status parameter


  1. GET [base]/VerificationResult?verificationresult-validator-organization=[id]

    Support: SHALL support search by the verificationresult-validator-organization parameter

    • with a target type: Organization
    • including the modifiers: above, below
    • including these search paramaters which may be chained: organization-identifier, organization-name