Repository navigation
Releases: imsweb/staging-client-java
Release list
Bugfix release
This release fixes a minor issue with table parsing. Cell values with a trailing empty value were not being processing correctly. Values that looked like ,1,2,3 were parsing properly in 4 distinct values, while 1,2,3, was incorrectly parsing into only 3 values. The parsing was fixed to properly handle both cases.
Java 7
Change how missing context keys are matched
The behavior of missing context keys and how they match tables INPUTs was changed. For a complete description, see #12.
Bugfix for schema lookup staging outputs
While the stage API correctly dealt with the outputs defined on the schema level, the lookupSchema were not.
There were 2 issues corrected in this release:
- Values calculated in staging but not in the output list were being listed as outputs in lookupSchema. They do not get returned in stage.
- Outputs that have defaults values (like schema_number in CS) were not being included in the list of outputs returned by lookupSchema.
Minor bugfix
There was an problem with the calculation of inputs to individual table paths when the library was run under Java 8. There were additional inputs listed that should have been ignored. The releases fixes the issues and updates the CS 02.05.50 schema files to incorporate the fix.
Validation change
This is a minor release which changes how validation is done for staging calls. This change affects 2 cases when an input definition has a validation table defined:
- an input is not supplied and that input has no default defined
- an input is supplied as blank
In prior releases, blank inputs were validated against the defined table. In this release, the blank inputs are not validated. Some inputs were not being used for staging so it was perfectly valid to not supply them and the errors were extra noise. If the input is used in the staging calculations there could possible be error produced later in the staging process which is the correct behavior.
Input calculation fix
This is a minor release that fixed a rare case where calculated inputs on a table path were incorrect.
CS input and output descriptions
Input and output descriptions were added to the CS algorithm.
Support output specification in schemas
A new field was added to the schema entity called outputs. Each output consists of:
- key - context key
- name - name of output
- description - description of output
- naaccr_item - optional NAACCR item number
- default - a value to set the output to at the start of staging; if not specified, blank will be used
- table - an optional table to validate the resulting value against
The outputs bring with it the following changes:
- At the start of staging, all keys listed in the
outputswill be added to the context. If they define adefaultthat will be used. If notdefaultis specified, a blank value will be used. - When staging cases, only keys listed in the outputs will be included in the result.
- If a table is specified for an output key and the resulting value at the end of staging is not in the table, an error will be added to the results.
Changes to input validation
The release contains changes to how inputs are validated. It does not affect the "cs" algorithm, but will affect future algorithms.
-
Input definitions no longer support the "values" field for validation. All input validation happens through the "table" field.
-
A new field, "on_invalid_input" was added to the schema. It describes what to do when an invalid input is encountered during the staging process. The possible values are:
- CONTINUE - continue staging
- FAIL - stop staging and return a failed result
- FAIL_WHEN_USED_FOR_STAGING - if the failed input is used for staging, stop staging and retulst a failed result; otherwise continue staging
If the field is not supplied, it defaults to CONTINUE.
-
Support for "fail_on_invalid" was removed from the input specification.