Forge is the official HL7 FHIR Profile & Conformance editor.
Forge R4 is a brand new major release that is compatible with FHIR Release 4.
This new release provides the same familiar feature set as earlier releases, updated to support FHIR R4.
We publish separate Forge releases for FHIR DSTU2, STU3 and R4. Each release only supports a single FHIR version and is updated separately. Different releases can be installed side-by-side on the same machine.
Visit simplifier.net to download the latest versions.
Forge now requires the .NET Framework 4.7.2 (updated from 4.6).
The .NET Framework 4.7.2 is fully .NET Standard 2.0 compliant, without any additional dependencies.
Update to FHIR R4 .NET API 1.3.0 (custom release)
Simplifier connectivity for FHIR R4 is almost, but not yet ready and will be made available soon. You can manually upload R4 resources to Simplifier by visiting the Simplifier website. Enable snapshot generation in Forge to ensure that Simplifier can render the full profile. Once Simplifier connectivity for FHIR R4 is available, we will publish an announcement and possibly also a minor update to enable the Simplifier integration features.
FHIR NPM Package Manager
Forge provides a package manager for managing and installing FHIR NPM packages from Simplifier. Currently, the package manager does not indicate which FHIR version(s) each package supports. To find detailed information about each package, visit the Simplifier website. In a future Forge update, we will improve the package manager to display and filter by supported FHIR version.
This release does not support authoring and editing R4 ImplementationGuide resources.
FHIR R4 introduces a new datatype
Canonical that represents a reference to a conformance resource.
The new datatype is used in many places, e.g. for specifying element type profile constraints.
This Forge release supports manual input and editing of canonical urls.
An updated UI for visually selecting a target resource is planned for a future update.
FHIR R4 introduces a breaking change in the way element types are specified. In FHIR STU3, an element definition can specify a list of type components. Each type component specifies a type code and an optional type profile and/or target profile (for references). In FHIR R4, type constraints are grouped by type code; duplicate codes are no longer allowed. Each type component can specify 0...* profiles and/or 0...* target profiles (for references).
Because of this, Forge R4 provides a new UI component for editing element types. It is no longer possible to represent element types in a flattened list, as in Forge for STU3. Instead, each type component now provides an editable child collection of type profile constraints. An improved UI for managing type profile constraints is planned for a future update.
FHIR R4 introduces some changes with respect to type slicing. This Forge release fully supports the new R4 type slicing behavior. However the UI is a bit crude and may be improved in a future release. We will look into improving the UI to facilitate type slicing in a future update.
In FHIR STU3, when a choice type element is constrained to a single type, the element is renamed.
The type constraint also implies a restriction and any other datatypes are not allowed.
In FHIR R4, a profile may introduce multiple renamed elements constrained to a single type.
Each renamed element represents a constraint for a specific datatype.
The original choice type element (with
[x] suffix) specifies/constrains the list of allowed datatypes.
The default type slicing discriminator is implied and may be omitted from the differential
Forge currently supports both single-type and multi-type constraints.
To specify a single type constraint, restrict the choice type to a single datatype.
Forge will rename the choice type element.
Note that a renamed element does NOT restrict the list of allowed types, as it would in FHIR STU3.
To restrict the list of allowed types and specify one or more type constraints,
first toggle the choice type element into slicing mode,
then manually add named slices constrained to a specific datatype.
The FHIR core datatypes and resources define a set of validation constraints (via fhirpath expressions). Forge implements validation support for most of the (applicable) constraints defined by FHIR, and also performs some additional sanity checks. FHIR R4 introduces severity levels for validation constraints. This initial Forge R4 release still reports all validation conflicts as warnings. In a future update, we will update (bump) the severity level of the core validation constraints, according to the specification.
We love to hear from you! If you want to submit a comment or report an issue, please don't hesitate to contact us at firstname.lastname@example.org.