Version 6.8.0 includes the following changes:
- New logging format that is easier to read and contains suggestions to fix common errors.
- Authors can now fix
- Improved SearchParameters page in FHIR IGs (w/ param code, resource, type, and description).
- New top-level Examples page in FHIR IGs that lists all examples in the IG w/ their resource type and profile.
shr.base.Entryclass is no longer required. Support for entry properties (ids and types) is now built in.
- CIMCORE JSON output has been deprecated.
- Bug fixes
New Logging Format
The new logging format displays logs and their metadata in a more structured, easier-to-read format. In addition, when a suggested fix is available, it will be displayed to the user.
If users wish to reduce the number of logs shown, the
--deduplicate flag can be used to suppress errors when the same error has occurred more than 10 times.
Fixing date, dateTime, instant, and time values
time values is done the same way as fixing string values. For example:
Element: DateElement Value: date = "1996-11-22"
The format of the date/dateTime/instant/time must follow the formats defined by FHIR here.
Improved SearchParameters page and new Examples page
Users do not need to do anything additional to get the improved SearchParameters page or the new Examples page. As long as their IG contains SearchParameter definitions and/or examples (and the config points to them), these pages will be automatically generated.
Removal of shr.base.Entry
Prior versions of the SHR CLI required a
shr.base.Entry class to be defined. This is no longer necessary. If possible, users should remove the
shr.base.Entry definition (and the corresponding
EntryType definitions) if they do not reference them elsewhere.
This results in changes to the output of the JSON Schema exporter and ES6 class generator. The JSON schemas use a new builtin schema definition called
Entry. The ES6 classes use a new built-in class called
EntryInfo -- and the
entryType properties have been simplified to be strings.
Version 6.7.0 adds the following fixes and features:
- Filtering and Primary Profile selection should now be specified in ContentProfile (CP) -- see below for details
- Namespaces now support the NP (No Profile) tag
- Export for FHIR R4 logical models
- IG Downloads page now contains a link for the full IG specification
- Support for displaying more fixed values in the model doc
- Enhancements to the data dictionary (see shr-data-dict-export v6.2.0)
showPrimaryOnlyflag added to configuration file. This flag is on the
implementationGuideobject. The flag defaults to false. When set to true, only primary profiles (not supporting profiles) are listed on the Profiles tab of the IG.
The content profile will only be used for filtering and primary profile selection if no
filterStrategy and no
primarySelectionStrategy are specified in the configuration file. In this case, any data element named in the content profile will not be filtered out, and will be selected as a primary profile, unless that profile is marked as "No Profile" by the
NP flag. Additionally,
* can be used to flag an entire namespace as primary profiles, and
NP can be used at the namespace level to signal that an entire namespace should be marked as "No Profile".
Grammar: ContentProfile 1.0 Namespace: shr.core Patient: // Patient is named and not otherwise flagged as NP, it will be a primary profile Person.DateOfBirth MS Practitioner: NP // Practitioner will be marked as "No Profile", it will not generate a FHIR profile Namespace: obf.dataype NP // The entire obf.datatype namespace will be marked as "No Profile" Namespace: oncocore * // The * flag is used for oncocore, everything in this namespace will be a primary profile // ... more ...
Version 6.6.0 includes the following changes:
--clean flag to the CLI that clears the output directory on running the CLI and archives the previous output directory.
-Updates the HL7 logo to the latest version of the image.
-Fixes an error that prevented
ctrl-c from being used to exit the CLI.
- Example showing format of 'No Profile' flags
Grammar: ContentProfile 1.0 Namespace: obf Patient: BirthDate MS Encounter: NP EpisodeOfCare: NP // Encounter and EpisodeOfCare have `No Profile` (NP) flag // No FHIR profile will be generated for either ...
-Adds class filtering to the model doc.
Version 6.5.0 introduces the following changes:
- adds support for fixing integers, decimals, and uris in CIMPL definitions
- fixes FHIR export bug that erroneously dropped inherited constraints from mapped-to profiles
- emits error if attempting to fix a code on a CodeableConcept that already has a fixed code in the mapped-to profile
- improves detection of fixed codes in mapped-to profiles
- allows authors to specify a slice # to indicate an includes type slice should map to a specific slice in the mapped-to profile.
BloodPressure maps to http://hl7.org/fhir/StructureDefinition/bp: Components.SystolicPressure maps to component (slice # = 1) Components.DiastolicPressure maps to component (slice # = 2)
Version 6.4.0 adds the following features:
- support for fixing properties and values to fixed strings
Dosage.InstructionText = "Take Daily"(not a great example, but conveys the point)
Quantityto be in
obf.datatypenamespace (but supports backwards compatibility for
- shows extension usage on extension pages in FHIR IGs
- removes profile identifier from root snapshot/differential ids (addresses issue reported in standardhealth/shr-cli#221)
- demotes some errors to lower levels
- fixes a crash due to trying to dereference a null pointer in some cases
- upgrades to the latest IG Publisher jar
Version 6.3.0 reports type enforcement errors to ensure authors are using CIMPL types correctly. The following rules are checked and an error is reported if they are violated:
Entry's parent must be an
Element's parent must be an
Group's parent must be a
Abstract's parent must be an
Elementcan only declare or constrain a
Value; it cannot declare or constrain
Elementcannot redeclare a
Valueif it has a parent; it must constrain
- A non-
Elementcan only declare or constrain
Propertys; it cannot declare or constraint
Note that when you upgrade to 6.3.0, you may notice a number of new errors being reported -- as some specs were not following these rules yet. Despite the errors being reported, processing will continue as before; processing is not halted or modified when these errors are encountered.
Version 6.2.2 introduces the following changes:
identifierfrom profiles and extensions when creating the IG resources
- This is needed for code generation, but not for IGs (and causes IG Publisher errors)
- Fix broken references to non-existent profiles
- In some cases, references pointed to profiles that had been mapped using
(no profile), so they actually did not exist. Now the references point to the base definition.
- In some cases, references pointed to profiles that had been mapped using
Version 6.2.1 contains the following changes to the FHIR exporter:
- Use SHR descriptions in
definitionfields for FHIR elements mapped from CIMPL elements with "substitute" constraints
- Add description to the
shortfield for slices
- Update US Core for R4 to the official US Core 3.0.0 release
- Update HL7 IG Publisher to version
0.9.39-SNAPSHOT - Built 2019-06-20T08:22:24.935+10:00 - Git eb802cf4c5d3
The 6.2.0 release adds the following updates to the FHIR Exporter:
- Better support for HL7 FHIR IG Publication Checklist
- Re-enables yellow publish box in IG
ballotStatusconfig value that affects IG header display
- Fixed display of publishing WG in footer
- Fixed copyright in footer
- Added links in footer for home, qa, history, license, propose changes
- Support for including externally-defined
- Adds them to the IG source so that the IG Publisher processes them
- Adds links in the menu as needed
- See README for details