Releases: openEHR/archie
Archie v3.10.0
What's Changed
Improvements & bugfixes:
- Bump ubuntu version in Semaphore by @MattijsK in #574
- Take into account other DateTime formats in xml serialisation by @MattijsK in #575
- Changes for reading ADL AOM JSON Files by @David-N-Perkins in #569
- Revert accidental push of changes from fork by @MattijsK in #584
- Add pathsConstrainedToValueSets to the EvaluationResult by @VeraPrinsen in #591
- Bugfix: APathToXPathConverter always put assignment before literals by @EBrader in #594
- Empty catch in RMQueryContext.getJAXBNode replace with throw RuntimeException by @EBrader in #595
- Fix Rule evaluation for ArchetypeSlots by @mathijshudepohl in #590
Dependency updates:
- Bump jacksonVersion from 2.16.1 to 2.17.0 by @dependabot in #579
- Bump commons-io:commons-io from 2.15.1 to 2.16.1 by @dependabot in #588
- Bump org.threeten:threeten-extra from 1.7.2 to 1.8.0 by @dependabot in #592
- Bump com.google.guava:guava from 33.0.0-jre to 33.1.0-jre by @dependabot in #580
- Bump org.apache.commons:commons-text from 1.11.0 to 1.12.0 by @dependabot in #593
- Bump Archie to version 3.10.0 by @MattijsK in #596
Full Changelog: v3.9.1...v3.10.0
Archie v3.9.1
What's Changed
Full Changelog: v3.9.0...v3.9.1
Archie v3.9.0
What's Changed
- UpdateValueHandler: Take into account DvScale by @VeraPrinsen in #567
Full Changelog: v3.8.0...v3.9.0
Archie v3.8.0
What's Changed
Improvements & bugfixes:
Dependency updates:
- Bump com.google.guava:guava from 32.1.3-jre to 33.0.0-jre by @dependabot in #556
- Bump jacksonVersion from 2.16.0 to 2.16.1 by @dependabot in #558
- Bump com.github.zafarkhaja:java-semver from 0.9.0 to 0.10.2 by @dependabot in #561
Full Changelog: v3.7.0...v3.8.0
Archie v3.7.0
What's Changed
Improvements & bugfixes:
- Implement warning when ADL 1.4 incompatible codes are used by @MattijsK in #516
- Review Dutch translations marked as fuzzy by @EBrader in #555
Dependency updates:
- Bump commons-io:commons-io from 2.13.0 to 2.15.1 by @dependabot in #549
- Bump org.apache.commons:commons-lang3 from 3.13.0 to 3.14.0 by @dependabot in #548
- Bump org.apache.commons:commons-text from 1.10.0 to 1.11.0 by @dependabot in #546
- Bump com.google.guava:guava from 32.1.2-jre to 32.1.3-jre by @dependabot in #540
- Bump antlrVersion from 4.13.0 to 4.13.1 by @dependabot in #538
- Bump jacksonVersion from 2.15.2 to 2.16.0 by @dependabot in #547
Full Changelog: v3.6.0...v3.7.0
Archie v3.6.0
What's Changed
Improvements & bugfixes:
- Fix validation message stored in path variable by @J3173 in #524
- Update Gradle to version 8.2.1 by @J3173 in #527
- Add name and versionId functions to TerminologyId by @josepedrocorreia in #480
- Fix setting default occurrences in ADL 1.4 conversion by @pieterbos in #533
Dependency updates:
- Bump org.apache.commons:commons-lang3 from 3.12.0 to 3.13.0 by @dependabot in #530
- Bump com.google.guava:guava from 32.0.1-jre to 32.1.2-jre by @dependabot in #531
Full Changelog: v3.5.0...v3.6.0
Archie v3.5.0
What's Changed
Improvements & bugfixes:
- Issue: ReflectionModelInfoLookup sometimes adds a method from a superclass instead of a subclass to the RM model metadata by @J3173 in #522
Dependency updates:
- Bump jacksonVersion from 2.14.2 to 2.15.2 by @dependabot in #510
- Bump reflections from 0.9.12 to 0.10.2 by @dependabot in #363
- Bump com.google.guava:guava from 32.0.0-jre to 32.0.1-jre by @dependabot in #519
- Bump commons-io:commons-io from 2.12.0 to 2.13.0 by @dependabot in #518
Full Changelog: v3.4.0...v3.5.0
Archie v3.4.0
What's Changed
New features:
- Add rule evaluation for Temporal(Amount) data types by @mathijshudepohl in #488
- Validate archetyped objects by @J3173 in #507
Improvements & bugfixes
- Bugfix syntax error uid attribute by @EBrader in #493
- Fix BMM object mapper being used before being fully configured by @J3173 in #501
- ADLParseException duplicate metadata identifiers by @EBrader in #502
- Generate duration value based on given constraint by @J3173 in #505
- Use operational templates during validation in ExampleJsonInstanceGeneratorTest by @J3173 in #506
- Restore thread local language after buildPathsAndValues call by @J3173 in #504
Dependency updates:
- Bump com.esotericsoftware.kryo:kryo5 from 5.3.0 to 5.5.0 by @dependabot in #490
- Update ANTLR with version variable by @MattijsK in #511
- Bump Jackson to 2.14.3 by @MattijsK in #512
- Bump com.google.guava:guava from 31.1-jre to 32.0.0-jre by @dependabot in #513
- Bump commons-io:commons-io from 2.11.0 to 2.12.0 by @dependabot in #514
Potentially breaking change
The RM instance validator now also validates Archetyped data that has an archetyped set, for which an archetype is available in the provided OptProvider. But without an archetype slot or use_archetype in the template/OPT. So, ad hoc archetyped data, for example for use in feeder audits. Since this now validates more than before, it can break your existing system if you use this kind of construction and your data is invalid with regards to the archetype you specify.
Full Changelog: v3.3.0...v3.4.0
Archie v3.3.0
What's Changed
Full Changelog: v3.2.0...v3.3.0
Archie v3.2.0
What's Changed
- CAttributeFlattener restore old behaviour behind config by @MattijsK in #489
- Warning: v3.1.0 unintentionally introduced new (correct) behaviour in flattening specialized archetypes. Before v3.1.0 it was possible to exclude an object (e.g.
CLUSTER[id5]occurrences matches {0}
) before specializing it (e.g.CLUSTER[id5.1] matches...
). Cluster 5.1 would still appear in the flattened archetype. The specification clearly says that an exclusion should always appear at the end. The in v3.1.0 introduced behaviour applies this and removes specialized objects after excluding the parent nodes when flattening. - v3.2.0 reverts this correct behaviour to the pre-v3.1.0 behaviour. It introduces a config variable for this:
FlattenerConfiguration.allowSpecializationAfterExclusion
. WIthin this major version of Archie, the default will be set totrue
as setting this to false is in theory backwards incompatible. - The ArchetypeValidator now adds a warning to the validation result in all cases where this configuration parameter would make a difference: when validating a specialized archetype with a node with
occurrences matches {0}
, with the node id equal to that in the parent, followed by a specialization of that node in the specialized archetype.
- Warning: v3.1.0 unintentionally introduced new (correct) behaviour in flattening specialized archetypes. Before v3.1.0 it was possible to exclude an object (e.g.
Example of such a case:
CLUSTER[id5] matches {
items matches {
ELEMENT[id8] occurrences matches {0}
ELEMENT[id8.1] matches {
....
}
}
}
The fix is changing the order of the id8 and id8.1 statements, as specified as being the only correct order to do so in the ADL 2 specification in https://specifications.openehr.org/releases/AM/latest/ADL2.html#_exhaustive_and_non_exhaustive_redefinition . The warning has been added because according to that same specification, it is incorrect to do this in another order.
The problem was introduced with a fix in the flattener with problems with sibling order (#477) . Disabling or enabling this configuration parameter does not impact this fix - in both cases the issues fixed there will no longer be present in version 3.2.0
Full Changelog: v3.1.0...v3.2.0