Upcoming Internal Validator Improvements
March 25, 2024
The Inferno team is rolling out a key update that replaces Inferno’s custom-built validator service with the FHIR® Validator Wrapper. This is being done as part of our effort to simplify Inferno by aligning its internal architecture with broadly used, community-developed components whenever possible.
The updated validator service will be incorporated into the next release of the ONC Certification (g)(10) Standardized API Test Kit, scheduled for release on April 10. We expect that the impact from this change will be minimal, as both the legacy and new validation services use the FHIR Validator to perform validation. However, it is possible that subtle changes to validation may occur due to differences in how Implementation Guide conformance data is loaded for validation.
Preview is Available for Feedback
Given the central role that the validator service plays in Inferno, the Inferno team is providing a pre-release of the ONC Certification (g)(10) Standardized API Test Kit v5.3.0. Users can either download the pre-release, or preview it live on the Inferno on HealthIT.gov QA site.
For users that download and locally run Inferno Test Kits, this change should be completely transparent. The new service will be downloaded by Docker Compose and automatically configured within the running Test Kit instance.
The Inferno team appreciates feedback on this pre-release version to help ensure any potentially disruptive changes are addressed prior to an official release.
Technical Details
A central function of the Inferno Framework is FHIR resource validation, which verifies that instances of FHIR resources provided by systems conform to expectations of the FHIR specification and any applicable FHIR profiles. Within Inferno, this component is implemented by the FHIR Validator, which is a fully-featured FHIR validation tool and is actively maintained by HL7 and authors of the FHIR specification.
Inferno is written using the Ruby programming language, while the FHIR Validator is provided as a Java library. The Inferno team created a service wrapper interface in 2019 for the FHIR Validator to provide Inferno’s Ruby-based tests access to the HL7 FHIR Validator over an HTTP API.
Since then, HL7 has created their own service interface to the FHIR Validator, which fills the same need as the home-grown service interface built for Inferno. The HL7 implementation also includes several features that are missing from the Inferno implementation. Most significantly, the HL7 implementation is capable of isolating conformance data of IGs from one-another, while the legacy Inferno implementation loads all IGs in the same session, which can lead to unwanted IG-to-IG interactions during validation.
As Inferno on HealthIT.gov adds support for additional Test Kits that target more Implementation Guides, this becomes a necessary feature to ensure stability of the platform.
Next month, the Inferno team will transition remaining Test Kits to use the new validator interface, and provide instructions to for other externally-maintained Test Kits. This change does not currently affect the standalone Inferno FHIR Validator app.
Questions and Concerns
Please reach out to the Inferno team if you have any questions or concerns about this update.
Return to News