npm fsh-sushi 0.14.0
SUSHI 0.14.0

latest releases: 3.18.0, 3.17.0, 3.16.5...
5 years ago

SUSHI 0.14.0 contains the following enhancements and bug fixes:

  • Deprecates usage of , when listing items (details below, #483)
  • Deprecates usage of | when listing choices of items (details below, #498)
  • Adds insert rules (details below, #279)
  • Adds support for specifying more complex dependencies in config.yaml (details below, #497)
  • Adds optional include keyword for Value Set rules (#507)
  • Deprecates usage of the optional units keyword (#505)
  • Adds support for inline resources in the contained array of a StructureDefinition (#495)
  • Adds support for escape characters in strings (#392)
  • Fixes bug allowing choice types to be constrained to specializations of specific choices (#447)
  • Fixes bug which causes extra extensions to appear on Instances (#502)
  • Fixes bug with checking the type of a Reference (#504)
  • Fixes bug with references to inline resources (#508)
  • Aligns _genonce, _gencontinuous and _updatePublisher scripts with those in the sample-ig

Deprecates usage of , when listing items
The , character was used to separate lists of items in SUSHI. For example, the , could be used to set flags on multiple items:

* telecom, gender MS

This usage is now deprecated, and any instance of , should be replaced with and:

* telecom and gender MS

To allow for a smooth transition, the , is still supported in this release, but SUSHI will issue a warning. In a later release, support for , will be removed altogether.

Deprecates usage of | when listing choices of items
The | character was used to separate a choice list inside a Reference. For example, the | could be used to constrain a Reference choice:

* generalPractitioner only Reference(Organization | Practitioner)

This usage is now deprecated, and any instance of | should be replaced with or:

* generalPractitioner only Reference(Organization or Practitioner)

To allow for a smooth transition, the | is still supported in this release, but SUSHI will issue a warning. In a later release, support for | will be removed altogether.

Adds insert rules
The Mixins keyword was used to add RuleSets to an entity. This usage is now deprecated, and SUSHI will issue a warning when Mixins is encountered. In a later release, support for Mixins will be removed altogether. Instead of using Mixins, users can now add RuleSets to any entity for which a list of rules is allowed with the insert keyword. The insert keyword is used to add a snippet of rules anywhere within the list of rules being defined for the relevant entity. This differs from the Mixins keyword, which always added the rules from a RuleSet at the beginning of the list of rules. As an example:

RuleSet: rs1
* valueString = "hello"

Instance: ob1
InstanceOf: Observation
* status = #final
* insert rs1
* issued = "2015-02-07T13:28:17.239+02:00"

is equivalent to:

Instance: ob1
InstanceOf: Observation
* status = #final
* valueString = "hello"
* issued = "2015-02-07T13:28:17.239+02:00"

Adds support for specifying more complex dependencies in config.yaml
It is now possible to directly specify information about dependencies in the config.yaml file. For example, one can now specify the uri on a dependency:

dependencies:
  de.basisprofil.r4:
    uri: https://simplifier.net/guide/basisprofil-de-r4
    version: 0.9.7

Some packages do not have a uri, so this is a useful feature in that context. Most packages do have a uri, so they can be specified using the simpler syntax:

dependencies:
  hl7.fhir.us.core: 3.1.0

and SUSHI will infer the uri.

Full Documentation

For additional documentation, refer to the FSH language reference.

Install or Update

To install or update to the latest version, run the following command:

$ npm install -g fsh-sushi

Don't miss a new fsh-sushi release

NewReleases is sending notifications on new releases.