avatar   MichelR  

Introduction

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.

Release information

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.

Dependencies

  • .NET Framework
    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.

  • FHIR API
    Update to FHIR R4 .NET API 1.3.0 (custom release)

Known limitations

  • Simplifier integration
    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.

  • Implementation Guides
    This release does not support authoring and editing R4 ImplementationGuide resources.

Important changes

  • Canonical urls
    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.

  • Type profiles
    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.

  • Type slicing
    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.

  • Validation
    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.

Feedback

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 forge@fire.ly.

Happy profiling!

Other news from Firely
Ward Weistra 🔥
We just dropped a game-changing suite of tools for FHIR developers, including private package feeds and a zero-install FHIR Shorthand editor that promises to make FHIR modeling a breeze. Whether you're a seasoned FHIR expert or just getting started, these powerful new features might just revolutionize your healthcare data modeling workflow - read on to discover how.
Ward Weistra 🔥
And changes to installing and publishing private packages via Firely Terminal
Ward Weistra 🔥
Learn how the Dutch centralized cancer registry is using FHIR and Simplifier.net
Ward Weistra 🔥
Learn from Dutch and German cancer registries how they streamline data collection from EHRs, plus get latest FHIR insights from Firely CEO (free, online).
Ward Weistra 🔥
Most mistakes in FHIR data modeling are easily resolved in a later iteration of your guide. But there are some that are better done right the first time. One of them? FHIR canonical URLs, the unique identifiers for your models.
Jay Salvemini
The Product team showcase all the latest updates in FHIR, Simplifier.net, Forge, and Firely Terminal in our October webinar.
Ward Weistra 🔥
New quality control rules, markdown rendering, major infrastructure upgrades, and improved package publication, along with a new year-based versioning system.
Ward Weistra 🔥
A marketplace for healthcare knowledge encoded in FHIR and an overview page for every country publishing FHIR models.
Jay Salvemini
Learn key FHIR terms and concepts with our comprehensive FHIR Glossary, essential for navigating the complex FHIR landscape.
Rob Langezaal
Better handling of preferred file format (XML/JSON), faster loading time for projects with large dependencies and support for JSON output preview.