## 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***
* Allow NPM package versions to have the form {id}#{url} for direct access to packages
* fix case issue
---------
Co-authored-by: Grahame Grieve <grahameg@gmail.ccom>
## 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***
* Start work
* Tests for new Param
* More tests, add param, refactor
* Rename + JsonProperty annotations
* Logging for API keys
* WIP rename search parameter + add settings object for serialization
* Switch to JSON based settings file.
* Rename FHIRSettings and remove ToolGlobalSettings
* Update default path for settings file + expand test
* Only allow single instantiation with explicitFilePath
* Move and expand tests
* Fix failing test
* Add test for FhirSettings param precedence
* Refactor to only call getInstance() internally in FhirSettings
* 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***
## Validator Changes
* Fix up stated path in CodeSystemValidator
* Validate example URLs in value sets correctly
* Fix problem with composition library reference in R4
## Other code changes
* More work to sort out mappings
* Fix broken links in FMM & standards status levels
* Fix type of IG-parameter extension
* FTP: Stop re-initializing file type and mode with each upload (#1178) …
* Fix snaphot generation warning when when profile-element is used
* fix path failure in tests
* Inline help16.png when generating narrative
* Suppress img.src=data content when rendering narrative
* Suppress value set expansion for core value sets that tx.fhir.org is getting wrong
* Fix NPE in profile comparison
***NO_CI***
## Validator Changes
* Fix problems validating variables
* No longer ignore hl7.org/fhir/tools when validating
## Other code changes
* Fixed bug with incorrect parameter type when POSTing a $validate-code request to a remote terminology server
* Fix OS issue with zipslip protection
* Fix for where profile_element extension was being ignored when checking types after snapshot generation
* Fix generated name for FML rules to be a valid name
* Allow loaders to decide which resources to load into the context
***NO_CI***
## Validator Changes
* Don't validate codes in value sets if terminology vlidation is turned… …
* Fix nPE validating bundles
## Other code changes
* Add file: to URL scheme list when checking for absolute URLs
* Adjust mappings handling code generating snapshots
* More improvements to r4/r5 transform testing
* Better error messages setting properties when transforming
* Better error messages converting types
* FHIRPath tests on element model
* Refactor FTPClient to perform fewer directory creates (#1159) …
* Document how to build validator_cli locally (#1171)
***NO_CI***
* Refactor FTPClient to perform fewer directory creates
* Restore old main
* More lenient test for delete timing (delete is fast)
* More timing leniency
* Add more checks for command completion, switch time track to nanos
* Logging logging logging
## Validator Changes
* Add format codes ```md``` and ```url``` to FHIRPath escape() and unescape()
* Add second parameter ```s_last``` to FHIRPath join() to use a different separator for the last time (e.g. ```.join(', ', 'and')```)
## Other code changes
* Parse status when parsing FML metadata
* Fix NPE in FHIRPath resolve() for contained resources ([discussion](https://chat.fhir.org/#narrow/stream/179167-hapi/topic/fix.20to.20FHIRPathEngine))
***NO_CI***
## Validator Changes
* no changes
## Other code changes
* Tdy up extensions for R5 release
* Hack R5 observation for fix after QA
* Improve StructureMap rendering again
* Clarify Error messages converting between versions
***NO_CI***
## Validator Changes
* Add support for new ColorRGB code system (special case)
## Other code changes
* Add support for special case code systems internally
***NO_CI***
## Validator Changes
* More validation of StructureMaps
## Other code changes
* Add new R5 version to R4 version enumeration
* Fix for NPE generating profile comparison
* Add FML renderer for StructureMaps + various parsing fixes
***NO_CI***
## Validator Changes
* Fix up issues validating whitespace
* Multiple fixes to StructureMap and ConceptMap validation
## Other code changes
* rename ig-r4.json to ig-r4.jsonx in IGs
* move R5 package to test cases
***NO_CI***
## Validator Changes
* Add ConceptMap validation
* Add StructureMap validation
* Validate using type regex (had been omitted to now, mostly affects decimal validation)
* Add new -output-style values compact and compact-split
* Fix bug validating CDA choice elements without [x] in their names
## Other code changes
* Various fixes and utilities to support StructureMap & ConceptMap validation
* Fix Observation.value conversion between R5 and other versions
* Recognise R4B and R5 core packages
* Improvements to specification diffference engine for R5 publication
* More efficient XHTML AST model
***NO_CI***
## Major change:
* New R5 release - rebuild R5 implementation, update a lot of related code
## Validator Changes
* Load separate R5 extensions package
* Load FML directly, and validate mapping as much as possible
## Other code changes
* Fix bugs in Java R5 code generator
* Add more control at the code level over how to handle unknown profiles when generating snapshots
* Rework ConceptMap for major R5 changes
* Fix bug in CommaGeneratedStringBuilder (calling toString() multiple times duplicated content)
* handle case [reference].where(resolve() is X) when analysing types+elements in FHIRPath statements
***NO_CI***
## Validator Changes
* Fix validation for query references with empty parameter values
* Fix validation for conditional references
## Other code changes
* Fix resource rendering for conditional references
* Fix bug caused by changing DiagnosticReport.conclusion to markdown
* Track target types on references in FHIRPath
* Minor type checking fixes for FHIRPath
* Fix bugs in FHIRPath type checking discovered during R5 preparation
* Add standardsStatus support to core model
* Update okhttp library
* Allow HTTPS for terminology server URL
* Update table generator to suppress external links in base row and column
***NO_CI***
## Validator Changes
* Fix bug checking canonical URLs in bundles with dashes in them
* Fix extension messages (modifier and normal messages reversed)
* Change how error location paths are reported in bundles for easier resolution (no counting!)
* fix bugs checking whether binding is allowed in corner cases
## Other code changes
* Rendering Improvements: Additional Bindings, Search Parameters, Operation Definitions
* FHIRPath implementations for comparable(), highBoundary(), lowBoundary()
* Fix list of canonical resources from VersionUtilities
* Fix bug parsing html entities in XHTML parser
* Rename extension to http://hl7.org/fhir/StructureDefinition/structuredefinition-imposeProfile
***NO_CI***
## Validator Changes
* Fix for NPE rendering resources
* Consider CanonicalResource to be a CanonicalResource when validating profile references
* Work around error in R5 sdf-29 invariant
## Other code changes
* XHTML processing: Cater for "." in XML element and attribute names
* Handle R3 encoding of primitive values when validating profiles
* Improve error messaging when validating StructureDefinition
* Temporary Support for MedicationStatement in R5
* Work around for Identifier.use = ? in THO R5 package (old error)
* Rework Package API to allow for authentication on package servers
* Structure mapping now finds source Structure Definition by URI and sets ParserBase logical property appropriately.
* DOn't convert ig-r4 when converting package versions
***NO_CI***
## Validator Changes
* update FHIRPath implementation for corrections to 'as' (R5 only in validator)
* Critical Security fix: enforce correct paths when unpacking archives (SecurityAdvisory-1082, CVE TBA)
## Other code changes
* Update to latest FHIRPath for older versions
* Add new ElementModel based parser for StructureMaps
* go-publish related changes
* FTP Client upload and logging improvements
* Refactor base64 handling for Android compatibility
## Security Note
The validator unzips archive files to the local file system when
it is scanning zip files it has been asked to validate, and when it is
installing packages. These processes are now resistant to the zip-slip
vulnerability.
***NO_CI***
* Update cache and comparison downloads to use https
* Zip Slip tests and fix
* Zip Slip tests 2 and fix
* Add missing tempDir child in ScannerTest
* Add win format zip test
* Add tests to r4b
* Add tests and fixes for slips in tgz processing
* Update fhir-test-cases version
## Validator Changes
* Better tracking and reporting of snapshot generation issues
* Update FHIRPath implementation to R4 with all corrections and extensions from R5 implemnetation
## Other code changes
* Inclusion of SAXON dependency for processing XSLT
* Error message spacing correction
* Basic FTPClient implementation
* test NPE in markdown processing
* go-publish support
* Start implementing loading structure maps with validation
***NO_CI***
* Update R4 FHIRPath implementation from R5, and get all tests passing
* test NPE in markdown processing
* go-publish support
* Start implementing loading structure maps with validation
* release notes
* more work on FTP
* Fix breaking test.
* Add fhir-test-cases to r4 pom to fix breaking test
Co-authored-by: Grahame Grieve <grahameg@gmail.ccom>
Co-authored-by: dotasek <david.otasek@smilecdr.com>
* Start with tests against fake FTP
* Dummy test file
* Switch to our FTPClient, make tests break
* Implement FTPClient
* Rely on end caller to set path delimiters
* User port 8021 for tests (not protected in azure pipelines)
* Let mocks use Windows filesystem
* Gentle refactor
Co-authored-by: dotasek <david.otasek@smilecdr.com>
## Validator Changes
* Add support for fhir_comments in R2/R2B
* Add validator checking around versions in extension URLs
* Fix bug generating cross-version extensions
## Other code changes
* Fix minor NPEs running IG publisher
* Add new PE module (PEDefinition/PEInstance)
* Add support for liquid filters (resolve FHIRPath conflict)
* Fix up round-tripping of XPath constraints R4/R5
* Refactor R5 ProfileUtilities (and move rendering to rendering package)
* Fix appending text when generating snapshots
***NO_CI***