FHIR Tooling

There are many tools available to support FHIR implementation, including open source implementations, reference implementations, test servers,schemas, automated test tools, etc. For a relatively complete list of what's available, consult the following:

FHIR R4.0.1. FHIR downloads FHIR Tools Registry List of public FHIR test servers



Schemas

The HL7 v4.0.1 specification includes two separate zip files that contain a mixture of schemas and schematrons for use in validating FHIR instances for that version of the specification. All FHIR XML instances must be validated against those schemas and schematron validation processes, though there's no need to make use of those specific validation files in any production system. The first is a set of fully documented schemas with embedded schema annotations with human-readable documentation. The second is intended for Code generation, though that's not necessarily the best way to approach FHIR implementation.

​​FHIR has a principle of "one schema for all FHIR instances". Because of this, and how the FHIR XML syntax is designed, there are no eClaims-specific schemas. However, for convenience, a minimalist set of schemas that can be used to validate instances as part of testing is provided here. The FHIR validator also performs schema validation as part of its validation process.


FHIR Validator

Implementers can use the Validator tool for inline validation of message instances prior to conformance testing. The validator ensures adherence to the formal constraints that have been defined within this specification. The validator may also be utlized to validate message instances in real time.

Schemas are limited in their ability to completely validate FHIR instances. Schemas cannot perform full vocabulary validation and have no ability to validate FHIR content against profiles. The FHIR validator addresses these limitations by providing complete validation of FHIR instances, including terminology, invariants, and profiles.

Simplifier for Validating Message Instances

**to do - validate, and provide instructions once available after spec is complete and message examples are validated.