## Validator Changes
* Support for CDA code validation
## Other code changes
* Update XML Parser & logical model renderer for XML choice groups
* Restore JSON Parser method for HAPI compatibility.
* Maintain OID to URL lookup index
* Fix json parsing of CDA
***NO_CI***
## Validator Changes
* Make sure logical models get a snapshot generated
## Other code changes
* Fix URL of concept map extension in version conversion
***NO_CI***
## Validator Changes
* Improve language on constraint error message + add expression checking for SQL on FHIR project
## Other code changes
* Fix uuid() executing StructureMaps and don't throw errors processing StructureMaps
* Add support for test folder in NPM packages
* Fix rendering of XML Attributes in profiles
* Add support for hosts to manage certificate resolution using ISignatureServices + fix issue matching type names when validating logical models
* Make sure snapshots are generated when fetching types
* Workaround issue where R5 build wrongly adds ele-1 to base
* Fix conversion issue associated with ConceptMap.element.target.equivalence in versions previous to R5 (use proper extension URL, and move extension so it can be a modifier. And fix for modifierExtension handling)
* Fix birthDate editing in CmdLineApp
***NO_CI***
## Validator Changes
* fix CDA parsing error for sdtc:raceCode
* fix xml output to deal with namespaces properly
* fix FHIRPath join implementation to make separator parameter optional
## Other code changes
* Improve rendering for xml_no_order extension
* add command line demo app
* rework xig into 3 steps
* add userData to JSON element
* Initial SQL On FHIR implementation
* Add getDistalNames() to FHIRPath for SQL-on-FHIR support
***NO_CI***
## Validator Changes
* Fix FHIRPath type resolution for logical models
* Update parsers to record the element format for logical model validation
* fix profile matching for CDA logical models
## Other code changes
* Upgrade PackageVisitor for XIG
***NO_CI***
## Validator Changes
* Change Mapping type validation error to warning validating maps
* Add support for special case codes in v2 (NNnnn)
* Fix problem parsing logical model cda fragments
* Fix parsing logical model list attributes
* Fix issue parsing parameters in a target expression
## Other code changes
* Handle additional bindings when generating snapshots for R5 profiles
* Fix problem rendering additional bindings in R5
* Fix for new pubpack version
***NO_CI***
## Validator Changes
* Fix for issue parsing SHC and not recording line/col correctly
* Fix issue validating CDA FHIR Path constraints
* Better error handling validating codes in concept maps
* Validate special resource rules on contained resources and Bundle entries
* Improved error messages of observation bp
* Fix up WG internal model for changes to workgroups
* fix misleading error message inferring system when filters in play
* Fix type handling for logical models (CDA fixes)
* Fix up parsing of logical models
* Fix bug parsing extension with no value in JSON for the validator
## Other code changes
* Major uplift of PEModel to support generated code for profiles in R4 + R5
* Add removeChild in R4/R4B/R5 model
* Fix version conversion issue between r4 and r5 charge definition issue
* Fix rendering extension and missed profile on Reference()
***NO_CI***
## Validator Changes
* Significant Performance improvements parsing JSON resources
* Refactor Type handling for faster performance
* Validate the stated publisher/WG/contacts for HL7 published resources
* Better error message when diff contains bad paths
* pass dependent resources to server and make sure cache-id is filled out properly in all contexts
* Fix error in FML parser parsing parameters
* Fix issue with dom-6 and contained elements (Internal ChildMap synchro issues)
* Better handling of errors from tx.fhir.org
* Fix bug checking for implicit value sets
* Fix bug checking of mixing snomed display types
* Reduce size of validatable concept map to 500 - for now + better handling of errors on server batches
* Improve UCUM validation BP rule
## Other code changes
* Fix up handling of includes in liquid templates
* Fix up rendering of profile names for abstract profile instantiations
* Improved rendering of codes in include when rendering valuesets
* Start generating .index.db as well as .index.json in packages for faster package reading
* Fix problem caching look up of implied value sets
* Add okio dependency for running vsac
***NO_CI***
## Validator Changes
* Fix bug preventing Best Practice invariants being reported on, and add -best-practice parameter
* Fix issue not validating bundles when there are multiple profiles on entry.resource
* Add Japanese translations
## Other code changes
* Fixes for minor bugs discovered testing the XIG
* fix package program data path
***NO_CI***
## Validator Changes
* Test concept map code validity
* Rework type checking on target profiles to support imposesProfile
* Fix imposesProfile extension being missed on primary profile
* Add support for IPS-AU
* Fix warning/error message about experimental property on CodeSystems and ValueSets
* Fix unknown code message to include code system version
* Add provisional SHLinks validation
## Other code changes
* Render Requirements.reference
* Convert Requirements.reference between versions
* Fix test that breaks on local machines + Fix system path for FileSystemPackageCacheManager
* Update to cqframework 2.11 and remove unused common-beanutils declaration (#1419)
* Better xhtml logging for debugging
* Fix DF markdown engine to escape < properly
* Support for sub-packages in packagelist.json
* NPE proofing property handling for Code Systems
* rework the way intermediary content is handled in the validator
* Restore CodeQL regex queries (#1422) + Whitelist BSD 3-clause license
***NO_CI***
## Validator Changes
* Fix problem validating code systems with content = not-present
* Further development of multi-language support on the tx server, and:
* Change the validator so that the default language is '*' (all languages) not 'en'
## Other code changes
* Improve license scanning and readme documentation
* Change xpp3 dependency
* Add client version to tx user-agent requests
* Suppress spurious xml parsing messages to System.err
***NO_CI***
## Validator Changes
* Performance fix: Delay loading content when loading IGs
* CodeSystem validation around count and content
* Add checking around internal status consistency and across dependencies (draft/experimental/retired/deprecated)
* Improved error messages on server failure
* Fix bug in warning about No valid Display Names found
* Use Supplements when validating display names
* Fix issue in FHIRPath .combine focus handling
* Check Extension fixed values for URLs - enforce consistency
* Fix R4 FML parser problem
* Track and report inactive status when reported from terminology server
* Add defense against large terminology operations causing obscure java errors
* Fix bug with client sending too much data to tx.fhir.org (big performance hit in some cases)
* Fix obscure bug with designations in a more specific language the the code system they are in
## Other code changes
* Significant upgrade of version comparison for profiles/extensions, value sets, and code systems, and integration into rendering framework
* Many minor changes to terminology functionality (reconciliation with differences with OntoServer) including service protection
* Rename implySystem parameter to inferSystem per TI decision
* rework how definitions are handled after discussion with Michael
* add flat mode to tests for Ontoserver, and add experimental functionality
* fix rendering issue in subscription topic
* Add a renderer for ExampleScenario
* Automatically render markdown in code system concept definitions
* Fix loading issues in test mode for simplifier packages
* Remove spurious logging in FHIRPath engine
* Fix addChild error in PEBuilder (#1343) + Add test case
* CPT Importer
* Dependencies fixed/updated: okhttp, thymeleaf, commonmark & UCUM
* Xhtml fluent improvements + related XHtmlNode improvements
* Release new pubpack for new icons
* Json Object comparison: fix bug in arrays with multiple optional elements + improved error messages + support for external strings
* fix cross-version extensions web references where possible
* Don't suppress exceptions in terminology clients
* Add first cut of Profile Generation code
* Stop putting invalid codes in expansions if they are not in the code system
***NO_CI***
## Validator Changes
* Fix problem with evaluating extension contexts
* Fix up support for inactive codes and fix error message syntax
* Fix issue with collection status of resolve() being wrong
* Improved paths in profile error messages
* Fix problem with extension slicing being missed sometimes.
* Fix problem with code validation caching ignoring whitespace
* Produce useful error message when whitespace is wrong in display name
* Support for x-version extensions when generating snapshots
## Other code changes
* Render inactive property in expansions
* Resolve URL for x-version extensions
* Don't warn for loading a wrong version package more than once
* Do not supercede R4 terminology when loading R5 IGs
* Migrate type support when generating differentials
***NO_CI***
## Validator Changes
* Create warnings for status on terminology resources
* Don't load resources from core examples package
## Other code changes
* fix up copy directory for case differences
***NO_CI***
## Validator Changes
* Update IPS versions for -ips parameter (and get it working again)
* fix up validation of constraints in differentials (wasn't always happening)
* add warnings when collection status isn't right
* Better information messages when CodeSystem.content = not-present
* Add character check in validator for illegal XML Unicode characters
* Fix path problem in NpmPackage (some simplifier packages couldn't be processed)
* Fix NPE validating codes in value sets with improper expansions
## Other code changes
* Add support for Liquid assign
* Switch to DateTime type for Android Support
* Code clean up: remove unused imports
* Fix JSON unicode encoding handling of chars <32 code points
***NO_CI***
## Validator Changes
* Add support for private NPM registries requiring authentication
* Don't check FHIRPaths on differentials - not enough type info to test reliably
* Fix bugs in FHIRPath handling of logical models
* Fix minor bugs in type handling for Logical Models and R3 Profile validation
* Remove spurious warning message validating CDA documents
* Add value set qa checking
* Fixes to validator for new CDA package (proper handling of logical model types)
* Fix up bi-di warning message
* Add provisional support for alternate codes
* Workaround ClinicalImpression definition problem in core spec
* Fix to get context variables right when running invariants + fix for parent not always being populated + check type in derived profiles
* Fix checking FHIRPath statements on inner elements of type slices
* Fix scan of naming systems (error validating namespaces)
* Fix issue checking invariant expressions in R5
## Other code changes
* FHIRPath in HAPI mode: Strip returned IIdType of qualifier, version, and resourceType
* Update R4 and R4B FHIRPath implementations for changes picked up in R5 usage
* Fix obligation rendering message
* Fix missing extensions when converting value set properties
* Fix type of x-unknown-code-system in $validate-code response
* Fix CDA validation test case
* Much work on TxServer test case framework + Update terminology server implementation and tests for changes to test cases
* OMOP Vocabulary and ICFImporter development
* Add OWASP dependency check (#1347), upgrade many packages, remove ShEx
* Add github action to upload results
* Remove unused javalin dependency, also generate html reports
* Added test case for ExampleScenario conversion (R4/R5) and significantly bulked up the conversion process
* Remove unneeded resources (#1346) (help16.png)
* Add test for setVsAsUrl parameter setting (#1345)
***NO_CI***
## Validator Changes
* Fix up processing conditions in -watch mode
* Fixes for validating against logical models (for fixed up CDA core package)
* Better testing of extension context (when limited to profile)
* Fix handling of UCUM codes when no terminology server
* Report hints and warnings on some code validation that had been not reported
* Better validation of valuesets when checking derived profiles
## Other code changes
* Render reference identifier if there is one when rendering references
* Hide empty place holder column when rendering by profile
* Fix npe rendering extensions + improve base64 presentation
* OMOP terminology importer
* update SPDX code system in R4/R4B for support for not-open-source
* Fix up type handling for conversions between R4/R4B and R5 (OperationDefinition fix)
***NO_CI***
## Validator Changes
* no changes
## Other code changes
* Fix for SPDR not-open-source in code
* fix name and title in VSAC import process
* More work on Android support + fix issues in NPM package installation that caused
***NO_CI***
## Validator Changes
* no changes
## Other code changes
* Fix for SPDR not-open-source in code
* fix name and title in VSAC import process
* More work on Android support
***NO_CI***
## Validator Changes
* Fix issue loading SPDX value set + Fix missing code for 'not-open-source'
* Allow target to be treated as source when validating FML
* Fix issues validating names and urls for logical models
* Don't duplicate warnings about missing expressions on invariants in R5
## Other code changes
* Handle case where base hasn't got a snapshot generating snapshots
***NO_CI***
## Validator Changes
* Fix check for correct type name use in logical models (for CDA)
* Fix bug loading packages (introduced working on minimal loading)
* Fir NPE processing R3 Structure Definitions
* exempt ele-1 from constraint consistency checking
* Add -watch-scan-delay and -watch-settle-time
* fix missing error validating structure maps
* Fix bug with erroneous warning in snapshot generation about profile not being found
* Update SPDX code system to latest version
* Output proper filename in validation log
## Other code changes
* Refactor version utility code
* Fix help placeholders
* Better error when handling loading resources
* fix duplicate element generation in CDA.AD type snapshot generation
* Fix message about rendering problem. Actual solution... not sure.
* Minimal Memory model changes for Npm for Android
***NO_CI***
## Validator Changes
Post DevDays Release - many significant changes!
* Add ```-watch-mode``` parameter (See [doco](https://confluence.hl7.org/display/FHIR/Using+the+FHIR+Validator#UsingtheFHIRValidator-Watchmode))
* Start checking constraint expressions defined in profiles and logical models, and update FHIRPath for logical models
* Start checking ElementDefinition.mustHaveValue and ElementDefinition.valueAlternatives
* Start validating derived questionnaires
* Tighten up checking on FHIRPath - enforce use of ```'```, and don't accept ```"``` for string delimiters
* Add ```-allow-double-quotes-in-fhirpath``` parameter ([doco](https://confluence.hl7.org/display/FHIR/Using+the+FHIR+Validator#UsingtheFHIRValidator-LegacyFHIRPathSetting))
* Fix error when validating profiles that mix canonical() and Reference() types
* Fix extension context checking
* Fix erroneous FHIRPath expression eld-11 when loading
* Fix incomplete support for ```-display-issues-are-warnings``` parameter
* Fix broken NullFlavor binding in R4
* Fix various NPE errors doing value set validation (+ logging tx operations)
* Minor performance improvements to start up time
* Auto-update implied slicing elements when min < slice min
## Other code changes
* Add CodeQL to the build process
* Various NPE fixes
* Add getValueAsString(TemporalPrecisionEnum) method to date/time types
* Fix rendering for unresolvable ValueSets
* Remove r4b eclipse project files
* Upgrade multiple dependency libraries (per CodeQL)
* Only record sorting errors when generating snapshots when debug mode is on
* Tighten up SSL certificate checking
* Partial refactor of CLI parameter handling
* Fix path regex (per CodeQL)
* Remove erroneous logging from conversion tests
* Rendering improvements for various profile related extensions
* More work on TxTests operation (lenient wrt extensions)
* Fix handling of summary extension (delete duplicate tools summary extension, and don't inherit it)
* Reprocess URLs in Markdown extensions on both StructureDefinition and ElementDefinition
* Improve URL detection in markdown when reprocessing URLs
***NO_CI***
## Validator Changes
* no changes
## Other code changes
* Fix bugs in language handling
* Implement Trivy vulnerability scanning and update POI and okhttp libraries
***NO_CI***
## Validator Changes
* Add support for "Obligation Profiles" (see https://chat.fhir.org/#narrow/stream/179177-conformance/topic/Proposed.20new.20Profile.20features)
* Adjust slice min/max checking to ignore type slices (rules are different in this case)
* Properly handle validating mime/type when terminology server is not available
## Other code changes
* Rework Pipelines - more stability and quicker
* Fix bug where elementmodel.Element.copy() didn't clone children. Users of the Element Model (not the normal model) should check all uses of copy. (Only known users are Validator + IG publisher)
* Add nimbus & ZXing to core library dependencies for forthcoming improved SHC/SHL support
***NO_CI***
## Validator Changes
* Snapshot Generation Changes:
** Check for slicenames without any slicing
** Check that slice names are unique
** Check for additional slicing rules in a set of slices
** Check that the minimum cardinality of a set of slices is correct
* Clean up duplicate errors when dates/dateTimes/instants have invalid formats
* Handle unknown code systems consistently when validating coded elements
* Handle sub-slicing case where slice matches both the slice definition and the sub-slice definition
## Other code changes
* Add support for R4B to loader
* Change type if cache-id parameter
* Change snapshot generation to not update documentation from profile for elements with profiled types that are not extensions
* Add support for TestPlan and SubscriptionTopic in R4 IGs
***NO_CI***
## Validator Changes
* Update terminology for changes to tx validation policy: Wrong displays change from a warning to an error
* Add parameter ```-display-issues-are-warnings``` for restoring original behaviour that display issues are warnings
* Relax constraints on Reference targets for logical models
* Update dutch and german validation error messages + minor improvements to error messages
* Fix r5 url for package fetch (#1260) …
## Other code changes
* Fix up all terminology cache tests
* Switch to System.err for now + report missing constants
* Add I18n tests for coverage and plural validity + fix missing messages
* Partial fix for R4/R5 conversion issues
***NO_CI***
## Validator Changes
* Fix NPE validating StructureMap
* Improve error message about uri values
* Fix for wrong display when server returns error
* Slight improvement in performance
* Fix FHIRPath split function (parameter is not regex)
* Stop warning that Markdown autolinks need to be escaped
* Allow NPM package versions to have the form {id}#{url} for direct access to packages
## Other code changes
* Support for NamingSystem conversion of url, version, and title (for THO)
* Update Conversion package docs (#1257) …
* Return codeableConcept from validate-code
* Refactor: Resource Root Elements Conversion
* Minor fixes for R5 redirector
* Fix bug handling filter, and refactor terminology code
* Fix for dstu2016may Resource equals methods (#1251) + Tests a
***NO_CI***
## Validator Changes
* Fix bug accessing canonical resources on servers
## Other code changes
* Various changes to support terminology service testing
***NO_CI***
## Validator Changes
* Structure map validation improvements
## Other code changes
* Fix wrong name for systemVersion Parameter
* Language improvements for Lang Packs
* Fix up StructureMap R4/R5 conversion
***NO_CI***
## Validator Changes
* Improved Error messages when code is not in value set + various typo fixes
* Updated Dutch translations for error messages
* More informative failures when questionnaire value set validation fails
* Warnings when extension context is 'Element'
* Fix missing source id for tx server messages in validation output
## Other code changes
* Move HTTP logging to a sub-directory of temp
* Default to text log not HTML log for terminology logging, and don't spuriously escape the text log
* Use JSON not XML by default when using R4 terminology service
* Add support for R6 final version
* Bump HAPI to 6.4.1
***NO_CI***
## Validator Changes
Note: This validator release is accompanied by a new release of tx.fhir.org, and earlier versions
of the validator will not perform validation correctly for some valuesets and languages. This is
in effect a mandatory upgrade
* Major **Breaking** change: test multi-lanugage support on the terminology service API, and make many fixes.
** This release also includes full support for supplements providing designations and properties
* Add support for -install operation to install packages and generate snapshots while at it (support simplifier packages in sushi)
* Add support for ```lang-transform extract``` and ```-lang-transform inject``` to the validator (start of multi-lingual implementation support)
* Add support for -tx-tests to validator
* Change settings file to fhir-settings.json in .fhir, instead of fhir-tools-setting.ini (see [here](https://confluence.hl7.org/display/FHIR/Using+fhir-settings.json) for documentation)
* Add provisional support for running without a network: -no-network. Beware: this is not fully tested at this point
* Warning not error when the code system isn't known validating questionnaires
* Fix up loading of IG bundles
* Work around issue with R5 path in extensions pack
* Fix issue with SearchParameter validation throwing an exception if no expressions are valid
## Other code changes
* Code to support translation functionality
* Partial fix for problem parsing maps from previous versions
* Fix Code System rendering for supplements, and when there's 1..2 display translations
* Remove spurious header from ConceptMap rendering
* Return ID part correctly when FhirPath expression result is converted to string
* fix problem with leaf rendering in profile driven renderer
* Fix R4B tests to be based on R4B
* fix index error validating HierarchicalTable
* fix NPE in requirements renderer
* Fix NPE in code generator
* Rework package cache manager - add testing mode
* Add link to questionnaire rendering questionnaireResponse + Fix access violation rendering questionnaire
* Fix bugs generating narratives
* Defining the existence of R6
* i18n framework for HTML generation in renderers - step #1
* Re-org validation testing to be more memory efficient
* Better error handling loading resources
* Restore broken R4 loading
* Add new R5 fields to R4/R5 conversion for ValueSet
* minor changes two HumanName.getNameAsSingleString (missed family name)
***NO_CI***
* Bump JUnit Version and manage dependencies via bom
* Bump JUnit Version and manage dependencies via bom
* Remove explicit version references in child projects
* Vintage engine isn't managed. Manage it explicitly
## Validator Changes
* no changes
## Other code changes
* Fix R5 path for spec in generated narratives
* Hack to fix wrong R5 paths in generated narratives in extensions pack
* Suppress Prism rendering if ttl source is too big
* Fix up URLs in untouched elements when processing snapshots
* Fix up URLs in binding.description when generating snapshots
***NO_CI***
## Validator Changes
* Make checking displays in concept map not case sensitive and just a warning
## Other code changes
* Fix loading version of extensions package in test cases
* Don't suppress error when FML doesn't parse in FMLParser
* Add PathBuilder (documentation + clean up code)
***NO_CI***
Final Code changes for R5 release
## Validator Changes
* Fix NPE validating maps
## Other code changes
* Refactor Loader for easier loading of earlier versions
* Fix various NPEs from version conversion testing
* First draft of Code generation for Extensions
* Improve summary message for map conversion outcome
* Move web path out of userData into resource field
* Fix FTP problem on windows (remote seperator)
* Update tests to use R5 package from test case repo everywhere
* Finish removing population type
* Rebuild .index.json if it's empty when installing a package
***NO_CI***