SUSHI 2.9.0
What's Changed
- Allow Logical Models and Resources to constrain inherited elements by @cmoesel in #1207
- Support IG R5 properties in R4 IGs by @jafeltra in #1189
- Automatically load hl7.terminology package by @cmoesel in #1205
- Find entities by id, even when their id is set by a rule by @mint-thompson in #1198
- Use inserted rules when checking new concepts by @mint-thompson in #1196
- Update uninherited extensions based on JIRA-28441 by @cmoesel in #1212
- Load dependencies in deterministic order by @cmoesel in #1213
Details
Allow Logical Models and Resources to constrain inherited elements
In prior versions of SUSHI, SUSHI prevented authors from constraining inherited elements in logical models and custom resources. Based on discussions with the FHIR team and clarifications in the specification, we have lifted this restriction. Authors can now constrain inherited elements in logical models and custom resources. Slicing, however, is still not allowed in either case.
Support IG R5 properties in R4 IGs
FHIR R5 added several new properties in the Implementation Guide resource. To support a consistent authoring experience, IG authors can reference these new properties in sushi-config.yaml
for R5 IGs and R4 IGs. When used in R4 IGs, the property will be translated into the corresponding R4 property or an interversion extension. Authors should note, however, that in some cases the IG Publisher may not yet use these properties in an R4 context.
Automatically load hl7.terminology package
The hl7.terminology package (a.k.a. THO) defines Code Systems and Value Sets that are used by HL7 standards and implementation guides. Since these terminology definitions are considered a core aspect of standards and IGs, they are loaded by default. The IG Publisher already does this; now SUSHI does it as well. Normally, the latest release of hl7.terminology.r4
is loaded, but authors can override this by explicitly adding a hl7.terminology
, hl7.terminology.r4
, or hl7.terminology.r5
dependency (to a specific version) in their sushi-config.yaml
file.
When this dependency is automatically added, failure to download it is considered only a warning and SUSHI proceeds as normal.
To install or update, run:
npm install -g fsh-sushi
Full Changelog: v2.8.0...v2.9.0