## Validator Changes
* Change how count is calculated when expanding value sets
* Fix value set expansion bugs
* Fix for fhirpath issue on command line (#1650)
* Add IG dependency validator
* work around bad r4 extension definitions
* don't reload different sub-version of extensions pack
## Other code changes
* Rework rendering library from ground up
* Merge Fix: Fix split logic of canonical into url and version in several places (#1663)
* Suppress spurious message when code system is unknown
* don't raise needless and wrong exceptions about extension definitions when rendering
* fix duplicate link creation
* Stop recursive rendering crash
* Obligation rendering improvements
* Handle extra profiles on resources in an IG when converting between versions
* Fixed issue with actor title not rendering in obligations
* Test and adaption for dateOp #1655
* Use assertj instead of hamcrest (#1662)
* More transifex work
* Add support for local packages during testing
***NO_CI***
## Validator Changes
* Find value sets on tx server if not tx.fhir.org
* Do not send Content-Type header with GET requests for tx servers
* Fix npe validating code system
* Support discriminator by position
* Don't check type characteristics for unknown types
## WHO I18n Project
* Fix typos in phrases, and fix up handling of apostrophes in messages without parameters
* Test and fix for single quote escapes in I18n
* Create and test transifex configuration
## Rendering Changes
* Fix contact rendering to work properly
* Fix issue resolving contained resource rendering DiagnosticReports etc
* Handle case where Contact.value has extensions instead of a string value
* Render Parameterised types
* Fix bug with LOINC Code row showing wrongly in Profile Details view
* Partial implementation of type parameters
* Fixed rendering of actor-specific obligations, added elementIds to obligation narrative rendering
* Corrected ObligationsRenderer to handle multiple actors and multiple codes. Also got obligations with elements to render properly (which means knowing whether you're on a table page or definitions page, what tab you're on, and whether the element for the obligation is in-scope for that tab (so you know whether to hyperlink or not). Had to make links on the tables point to definitions because table anchors are not unique.
## Other code changes
* split out Base.canHavePrimitiveValue() from Base.hasPrimitiveValue()
* Refactor how observation profiles are registered in order to generalise management of extra profiles
* Use validation policy to implement Observation profile rules
* Rework validation policy management in standalone validator
* Try deploying javadoc with SNAPSHOT
* Add utility to unpack the spec.internals file
* v2 in FHIR tests
* Fix bug loading language pack NPMs
***NO_CI***
## Validator Changes
* Find value sets on tx server if not tx.fhir.org
* Do not send Content-Type header with GET requests for tx servers
* Fix npe validating code system
* Support discriminator by position
* Don't check type characteristics for unknown types
## WHO I18n Project
* Fix typos in phrases, and fix up handling of apostrophes in messages without parameters
* Test and fix for single quote escapes in I18n
* Create and test transifex configuration
## Rendering Changes
* Fix contact rendering to work properly
* Fix issue resolving contained resource rendering DiagnosticReports etc
* Handle case where Contact.value has extensions instead of a string value
* Render Parameterised types
* Fix bug with LOINC Code row showing wrongly in Profile Details view
* Partial implementation of type parameters
* Fixed rendering of actor-specific obligations, added elementIds to obligation narrative rendering
* Corrected ObligationsRenderer to handle multiple actors and multiple codes. Also got obligations with elements to render properly (which means knowing whether you're on a table page or definitions page, what tab you're on, and whether the element for the obligation is in-scope for that tab (so you know whether to hyperlink or not). Had to make links on the tables point to definitions because table anchors are not unique.
## Other code changes
* split out Base.canHavePrimitiveValue() from Base.hasPrimitiveValue()
* Refactor how observation profiles are registered in order to generalise management of extra profiles
* Use validation policy to implement Observation profile rules
* Rework validation policy management in standalone validator
* Try deploying javadoc with SNAPSHOT
* Add utility to unpack the spec.internals file
* v2 in FHIR tests
* Fix bug loading language pack NPMs
***NO_CI***
## Validator Changes
* Fix issue validating codes with + in them
* Fix (well, hack) R4 vital signs issue with component units
## WHO I18n Project
* QA on i18n constants - remove spurious entries, add anything missing
* Remove test case for i18n coverage
* Generate properties translation files without blank entries
* Add transifex configuration
* Fix up .po file generation so that POEdit is supported, and remove duplicate constants (#1592)
* Most strings translated to Dutch, unchecked.
* Add utility to infer locale from region code
## Other code changes
* Remove Accept-Charset header
* Fix typos around CODESYSTEM_CONTENT_COMPLETE
***NO_CI***
## Validator Changes
* remove "LOINC 2711-0 Oxygen saturation in Venous blood" from the list in the validator that checks whether an observation is a vital sign
## WHO I18n Project
* fix value set summary line display
* update the source of truth translation files
## Other code changes
* Handle more than one expectation extensions in CapabilityStatement
* Fix NPEs in Liquid renderer
***NO_CI***
## Validator Changes
* Fix bug processing extension with explicit type slicing
* Fix wrong language code from java locale
* Don't accidently hit other terminology servers for code systems handled natively by tx.fhir.org
* Validate Additional Bindings (provisional - usage context is todo)
* Improved system specific checking of value set filters - particularly LOINC and SNOMED CT, and update LOINC validation to the latest understanding of LOINC filters
## WHO I18n Project
* Add importing translations to native resources
* Finish Migrating text phrases to i18n framework
* Fix bugs with loading translations (#1592)
## Security
* Move all network access to go through ManagedWebAccess
* More security documentation
## Other code changes
* Put jurisdiction in npm package.json
* Add testing ontoserver to test suite
* Fix NPE testing Ontoserver
* fix tx tester calling run ok when a filter is applied and tests fail
* Fix name of preferred when rendering AdditionalBindings
* Add AdditionalBinding version conversion in profiles
* Fix SNOWMED spelling
* Fix rendering of multiple imports in value sets
***NO_CI***
## Validator Changes
* Fix bug where some #refs are not resolved to the root of the resource in FHIRPath slicing evaluation
* Fix bug passing wrong type to tx server when using inferSystem
* Fix bug processing version of CodeSystem.supplements incorrectly
* Don't process wrong parent when processing snapshot of element with profiled type that is not reprofiled
* Fix typo in OID message
* Fix handling value set exclude filters
* Allow code system declared properties to be self-referential
## I18n changes
* More comprehensive internationalization phrase coverage reporting on project page
* Move many rendering phrases into i18n framework
## Rendering Changes
* Fix issue with unknown element rendering fixed value for Attachment
* Fix bug calculating value set expansion size for multiple imports
* Fix bug using wrong message for value sets that are too costly to expand
* Fix extension urls not being linked in tree view
* rendering improvements and remove static use of describeSystem
* Fix NPE rendering profile comparisons
* Fix bug where slicing and grouping gets mixed up rendering profile tree
## Other code changes
* Wrap general exception for IWorkerContext (Catch missed exception from HAPI)
* Shim interfaces and classes to support clinical reasoning project updates.
* Fix duplicate txServer getters and setters
* Use extension class on Exception to force try-catch blocks on checkCodeOnServer calls (#1609)
* rework OID handling for better consistency
* handle time outs doing vsac import (starlink obstructions)
***NO_CI***
Removed
- org.hl7.fhir.r4b.renderers.DataRenderer#versionFromCanonical
- org.hl7.fhir.r4b.renderers.DataRenderer#systemFromCanonical
- org.hl7.fhir.r5.renderers.DataRenderer#versionFromCanonical
- org.hl7.fhir.r5.renderers.DataRenderer#systemFromCanonical
- org.hl7.fhir.validation.BaseValidator#versionFromCanonical
- org.hl7.fhir.validation.BaseValidator#systemFromCanonical
Replaced all usages of aforementioned methods by the use of
org.hl7.fhir.utilities.CanonicalPair.
Improved CanonicalPair to avoid multiple lookup of the | character. And
added a few convenience methods to the class.
This fixes the issues of #1611 (not replacing all canonical splits in
other places of the code).
## Validator Changes
* fix NPE loading resources
* Don't enforce ids on elements when processing CDA
* Send supplements to tx server
* fix bug processing code bindings when value sets are complex (multiple filters)
* fix spelling of heirarchy
* Look up CodeSystem from terminology server
* Don't use tx-registry when manual terminology server is set
## Other code changes
* More work on WHO language support ($1592)
* allow validation message to have count
* render versions in profile links when necessary
* rework OID handling for better OID -> CodeSystem resolution
* fix up vsac importer for changes to client
* don't send xhtml for tx operations
* FHIRPath: Backport the defineVariable code to the R4 and R4B fhirpath implementations
* FHIRPath: Remove the alias/aliasAs custom functions (use standard defineVariable now)
* Bump lombok (#1603)
***NO_CI***
## Validator Changes
* Fix up path management in the validator for resolving references in Bundles
* Add support for defineVariable in FHIRPath
* Fix problem with CDA element having multiple types
* Fix problem with 'is' not working in FHIRPath for CDA types
* Fix issue processing CDA generic type names
* Fix for NPE processing tx server response
* Add support for code system supplements when communicating with tx server
## Other code changes
* OSGI: make sure JUnit 4 and 5 dependencies are optional (#1596) (Also removed duplicate managed versions of JUnit 4.13.2 and mockwebserver 4.11.0)
* Render CapabilityStatement.imports (and instantiates)
* Terminology Service Tests - minor improvements for running in HAPI, add $lookup & $translate support, create R4 clone
* Add support for $translate to terminology client
* More i18n work in rendering context (WHO project)
* Add isServerSide for seeing if code systems are only supported on the server
* Fix R4B loading issue that lead to wrong web paths for R4B resources
* Fix problems rendering Binary files in IGs
* Add support for rendering logical URIs
* Remove path.toFile()
## Security
* Finish moving all local file access to go through ManagedFileAccess
## WHO Internationalization work
* More work on date rendering
***NO_CI***
## Validator Changes
* Validate fixed/pattern values are not changed in derived profiles
* Fix NPE validating some profiles
* FHIRPath validation: consider sub-extensions when checking extension($) use
* Fix validation of concept maps containing SCT
* Preserve message id from terminology service so editors can use it to remove hints and warnings
## Other code changes
* Fix ConceptMap.group.target conversion from R3 to R5
* Fix NPE in list renderer
* fix bug showing 'required' instead of 'current' rendering additional bindings
* Fix bad references generating narratives in bundles
* Fix bug showing extension binding twice
* Various improvements to structure map validation to support cross-version mappings
* Add rendering for UsageContext and ContactDetail
* Fix broken link in xver IG for R2
* Fix bug rendering resources in Parameters resource
* Not-pretty xhtml gets line breaks before block tags to keep line length down (work around a jekyll issue)
* Improved ConceptMap rendering for cross-version IG
* Handle xhtml:div type for old FHIR version
* FML: strip '-' from rules names when parsing
* Update FML parsers to accept R5 metadata in R4 FML format
* Break out helper classes for Terminology Service Tester
## Security
* Add start of security notes
* Start moving file access to all go through ManagedFileAccess
## WHO Internationalization work:
* Add library to parse IETF Language definitions
* Move message translations to .po files as the master source & write convertor
* Much work making rendering i18n-able
* i18n for Patient renderer
* Refactor language handling in R5 renderers
***NO_CI***