avatar   MichelR  

Introduction

Forge is the official HL7 FHIR Profile & Conformance editor.
Forge 21.0 for STU3 is a brand new major release that is compatible with FHIR STU3.

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 STU3 .NET API 1.3.0 (custom release)

New

  • Edit SearchParameter
  • Edit OperationDefinition This release introduces authoring support for two additional conformance resources. Forge performs basic validation of the content, e.g. verify the associated invariants.

Improvements:

  • Edit and validate logical model type For logical models, the StructureDefinition.type property is now user-editable. When creating a new logical model, Forge initializes the type to the specified canonical url. Forge validates that the root element path equals the last segment of the type url.

  • Configure choice type property value Forge now supports editing the value of a choice type property, providing a drop-down list with available property type options. This improvement allows you to configure the following properties:

    • [...]UsageContext.value[x]
    • [...]Timing.repeat.bounds[x]
  • Validate choice type element name When authoring a logical model, Forge now verifies that polymorphic choice type elements (that support multiple distinct type codes) have an element name that ends with [x].

User interface & usability:

  • Updated file icons

    • New: OperationDefinition (cog wheels)
    • New: SearchParameter (magnifying glass + cog wheel)
    • New: Bundle Entry (cabinet with files)
    • Changed: Logical Model (brick)
    • Changed: Generic FHIR Resource (flame)
    • Changed: Project Folder (folder + flame)
    • Changed: Slice command (layers)
    • Changed: Named Sliced (bucket)
  • Project Explorer, Session Explorer: Copy path / url The Project Explorer and Session Explorer context menu provides additional commands to quickly copy the file path or the canonical url of the selected item to the clipboard.

  • Project Explorer: async The project & package explorer is now fully asynchronous (load & refresh are non-blocking). The ListView control displays a busy animation while (down)loading resources and packages.

  • Project Explorer: sortable columns Grid columns are now sortable. Click on column headers to toggle the sort order.

  • Project Explorer: bundle entries The Project Explorer now indicates bundle entries with a special icon. You cannot open Bundle entries for editing, but you can open a duplicate. You cannot open or modify the containing Bundle resource.

  • Project Explorer: dependencies A blue file name in the Project Explorer indicates an external dependency from an imported package reference (as opposed to an internal project resource). Project dependencies are considered read-only external artifacts. You cannot open a dependency for editing, but you can open a duplicate.

  • Project Explorer: invalid/unrecognized files A gray text line in the Project Explorer indicates a file that is unrecognized, unsupported and/or invalid. A yellow warning icon indicates files with parsing errors. The Name column displays any error messages, also the warning icon tooltip.

    Note: due to a technical limitation, the FHIR API is unable to scan/load a resource without any resource id or canonical url. The Project Explorer clearly indicates such resources and shows an informative error message, explaining required id/url is missing.

  • Project Explorer: maintain current selection after Refresh The Project Explorer Refresh command now maintains the currently selected item.

  • Project Explorer: maintain selection after toggle view The Project Explorer Toggle View Mode command now maintains the current selection and ensures that the selected item is visible (scroll into view).

  • Package Manager: new icons

  • Package Manager: package version The Dependency Manager now allows you to select and install a specific package version from a list of package versions published on Simplifier.

  • Package Manager: context menu You can now also add/remove project dependencies using the context menu.

  • Package Manager: async Improved asynchronous logic and lazy resolving of project dependencies, for responsive UI

  • Open Target Extension Definition Profile extension elements show a new command button next to the extension url (ElementDefinition.type[0].profile) that allows you to quickly open the referenced extension definition from the current project folder, if available.

  • Improved error reporting Snapshot generation requires access to the referenced base profile. If the base profile cannot be resolved, then Forge is unable to open a profile. Forge now detects this situation and displays a friendly error message.

  • Validation warning messages: improved context path format Validation warnings specify a context path that identifies the invalid target resource, element, component and/or property. The formatting of the target path is now based on the ElementId syntax, as defined by FHIR, appending additional custom path segments to indicate specific child properties.

  • Open already opened file When you try to open a file that is already opened, Forge will select and activate the open file (instead of displaying an annoying error message).

  • Add Item The Add command ("+" button) now scrolls the new item into view and sets keyboard focus to the new item, or to the first editable child node.

  • Options Menu: Open FHIR package cache folder Start Windows Explorer and open the global, system-wide FHIR package cache folder. The package cache folder is a central storage location on your machine for FHIR NPM packages. The cache folder is shared by all FHIR package clients running on your machine, including Forge. Packages downloaded from Simplifier are installed to the global package cache folder. Project dependencies are resolved from the global package cache folder. Forge will automatically try to resolve any missing dependencies from Simplifier.

  • Improved control chrome Highlight focused controls Highlight default buttons Mouse hover effects

  • New splash screen

  • New about box

Bug fix:

  • Refresh list of project dependencies after add/remove After adding or removing a package dependency, Forge will redetermine the transitive closure of the full project dependency graph. The dependency list will be updated to show the new installation status of the selected package and any indirect package references. In order to keep the application responsive, dependency resolving is performed asynchronously on a background thread. The UI will automatically update after the (remote) operation completes.

  • Prevent removal of indirect dependencies Forge only allows removal of packages that are a direct dependency of the current project. Forge disallows removal of indirect dependencies, i.e. packages referenced by other packages.

  • Fix invariant sdf-11 Invariant sdf-11 defines rules for the StructureDefinition.type property. Forge now takes into account that this invariant does not apply to logical models.

  • Support (unofficial) FHIR version 3.1.0 Forge determines if profiles are compatible by comparing the stated fhirVersion property value against a built-in list of officially published FHIR release versions. Forge for STU3 supports only profiles with a fhirVersion that is recognized and compatible with STU3. It turns out that some profiles have been published with fhirVersion="3.1.0", which is not an official FHIR release: www.hl7.org/fhir/directory.cfml This Forge release has been updated to recognize and support this unofficial FHIR version, i.e. Forge now allows you to apply extensions and derive from profiles with fhirVersion="3.1.0".

    When creating a new (derived) profile or extension, Forge always initializes fhirVersion to "3.0.1" by default, which represents the final official FHIR STU3 release; the user cannot change this value.

  • Fix configuration option: Resolve resource from subdirectories The Project Explorer is capable of indexing FHIR resources from (nested) subdirectories of the selected project folder. However this behavior is disabled by default. The Open Folder dialog window displays a custom checkbox that controls this behavior for the selected folder. When opening a folder from the Recent Documents menu, Forge will use the previously selected setting. The Options menu also provides a global configuration option setting "Resolve resource from subdirectories" to control the default behavior. If you enable this option, then the Open Folder dialog will include subdirectories by default.

  • Gracefully handle incompatible resources Improved error handling in case the selected file cannot be opened.

  • Fix error when opening file from disk Fixed a path parsing error in the File Open command.

  • Fix narrative tab header Fixed incorrect header text for Narrative tab (from "Properties" to "Narrative")

  • Fix dependency manager toolbar buttons Fixed incorrect icon for Search Dependencies toolbar button

  • Wrap long member names in tooltips

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 🔥
You may not notice the main work behind this release directly, but we are now capturing the amount of views and downloads on all FHIR entities (packages, projects, resources, guides, organizations).
Martine Berden
To support the fast-growing demand for FHIR solutions in the US, we have scaled up our presence by establishing a new company: Firely USA Inc.
Els van bergeijk
Two new free Firely e-learning courses available, including FHIR Profiling Introduction
Ward Weistra 🔥
By using variables in dynamic tables, you can now create consistent pages with widgets and tables, customized for every resource.
Ward Weistra 🔥
We look forward to collaborating with you on many more FHIR specifications in the new year.
Els van bergeijk
This eBook provides a complete overview of the relevant US healthcare regulations, implementation guides, and technologies and will help you understand their scope.
Ward Weistra 🔥
An update on new features for guides, invites and canonical claims and a resolved security issue around private packages.
Martine Berden
Execute and evaluate CQL, Clinical Quality Language, on FHIR resources
Rob Langezaal
Forge is now officially supports the R5 FHIR release. Visualization of resources is now conistent with Simplifier.
Ward Weistra 🔥
With many more widgets for your implementation guide it's now a lot quicker to make a consistent IG page.