Skip to content

Latest commit

 

History

History
167 lines (119 loc) · 7.82 KB

CHANGELOG.md

File metadata and controls

167 lines (119 loc) · 7.82 KB

NAACCR XML Version History

Version 4.10

  • Added maximum length of 50 characters for NaaccrId attribute in the dictionaries.
  • Added new DuplicateItemException to deal with duplicate items, which are never allowed in this standard.
  • Writing unknown items is now tied to the 'unknownItemHandling' option.
  • Improved handling of CDATA sections when reading/writing XML for SAS.

Version 4.9

  • Added a missing flush to the PatientFlatWriter.closeAndKeepAlive method.
  • Now replacing a single CR (without a LF) by a space when writing to a flat file.
  • Fixed an exception happening when trying to write XML with padding turned ON.
  • PatientReader and PatientWriter interfaces are now extending Closeable instead of AutoCloseable.
  • Added support for creating SAS definition file in the standalone GUI interface.

Version 4.8

  • Fixed padding, alignment and dataType attributes for items in NAACCR dictionaries

Version 4.7

  • Fixed typos in NAACCR ID of new NAACCR 18 data item from 'ceaPretreatmentIntrepretation' to 'ceaPretreatmentInterpretation'.
  • Fixed wrong NAACCR ID and name for item #1788 in version 15 dictionary.

Version 4.6

  • Final version of the NAACCR 18 dictionary.

Version 4.5

  • Added support for NAACCR 18; that version is not final yet and it's possible it will change in a future release.
  • Extensions now return their line number if the class implements NaaccrXmlExtension.
  • Added a new dictionary editor in the standalone GUI.
  • Added new jaxb-api (version 2.3.0) dependency required by Java 9.

Version 4.4

  • Fixed an exception in new validation method added in version 4.3.

Version 4.3

  • Added a new dictionary utility method that validates a combination of dictionaries instead of a single one.
  • The patient readers/writers are now implementing a common reader/writer interface.
  • Improved handling of extension to allow several extension objects per data level instead of a single one.
  • Improved the algorithm that generate NAACCR XML ID from names so it handles roman numerals better.
  • Improved user-defined dictionaries validation; an error will now be reported if two dictionaries define overlapping columns.
  • Added a proper security environment to XStream by limiting the classes that it can create when loading XML files.
  • Updated XStream dependency from version 1.4.9 to version 1.4.10.
  • Updated commons-lang3 dependency from version 3.4 to version 3.6.
  • Updated XZ compression library from version 1.5 to version 1.6.

Version 4.2

  • Fixed a bug in the dictionary validation that would not flag as invalid a dictionary with a missing URI attribute.
  • Added support in NaaccrXmlUtils for new lineToPatient and patientToLine methods.

Version 4.1

  • Addressed a bug crashing the Standalone GUI when minimizing the application.

Version 4.0

  • Relaxed the validation of the NAACCR numbers in user-defined dictionaries (specification 1.3).
  • Relaxed the rule requiring all the user dictionaries from data files to be provided to the library.
  • Changed type of causeOfDeath in all base dictionaries from digits to text.
  • Fixed start column of grouped item extendOfDisease10Dig in all base dictionaries.
  • Now display the number of Patient and Tumor tags found in the source XML file in the GUI.
  • Added an option to the GUI for extracting the dictionaries as CSV files.

Version 3.0

  • Added the ability to cache a runtime dictionary when using the XML reader/writer inside a loop.
  • Added 'getDefault()' method to options and configuration objects.
  • Now caching the internal dictionaries (base and default user) in the dictionary utility class.
  • Added support for multiple user dictionaries (specification 1.2).
  • Added support for grouped items definition in the base dictionaries (specification 1.2).
  • Relaxed the type of many items in standard base dictionaries (specification 1.2).
  • Removed support for "regexValidation" in dictionaries (specification 1.2).
  • Added full support for extensions (user-defined XML blocks) at the NaaccrData, Patient and Tumor levels.
  • Added better support for non-printable control characters; those will be ignored by default when writing item values; an error can be thrown instead by setting the 'ignoreControlCharacters' options to false.
  • Carriage Returns (CR) are now translated to Line Feed (LF) when writing item values; this library was writing it as ' ' which it technically correct but was causing some confusion.
  • Added proper support for namespaces.

Version 2.3

  • Fixed wrong item length for seerMets in version 16, was defined as length 1 instead of 2.

Version 2.2

  • Fixed wrong item number in 14, 15 and 16 default user dictionaries for reserved 17 item.
  • Fixed wrong item number in 16 base dictionary for items derivedSeerCmbNSrc and derivedSeerCmbMSrc.

Version 2.1

  • Fixed NAACCR ID of Item Numbers 272 and 282; those should not have been renamed from NAACCR 15.
  • Removed Class-Path attribute from generated JAR.

Version 2.0

  • Removed "any-attribute" from the XSD since those are not properly supported; only kept the one for the NaaccrData tag.
  • Added line number on the item object; populated only when reading items.
  • Validation errors for specific items are now reported directly on those items instead of the parent entity.
  • Added included/excluded list of items to the options of the standalone GUI.
  • Fixed a bug where values too long were not correctly reported as errors, or not correctly truncated.
  • Added optional attribute "allowUnlimitedText" to the dictionary item tag (specification 1.1).
  • Made start column optional in user-defined dictionaries (specification 1.1).
  • Made NAACCR version optional in user-defined dictionaries specification 1.1).
  • Added optional attribute "specificationVersion" to the root dictionary and data XML tags, now set to 1.1 by default.
  • Updated commons-lang3 dependency to version 3.4.
  • Updated commons-io dependency to version 2.5.
  • Updated XStream dependency to version 1.4.9.
  • Library now requires Java 8 at minimum.

Version 1.3

  • Added new option to control whether or not the padding rules should be applied, by default they won't be applied (since they actually change data and it's rarely desired).
  • Added new option to specify which items need to be processed (this option is not available in the GUI yet).
  • Fixed some bad data types in all base dictionaries.
  • Fixed a bug in the dictionary validation preventing a standard item from the default user dictionary to be re-defined.

Version 1.2

  • Improved the dictionary page in the standalone GUI.
  • Stopped using exception when validating a dictionary.
  • Fixed bug related to caching items on each abstract entities.
  • Fixed two bad item ID (and name) in NAACCR 16 dictionary.

Version 1.1

  • Fixed wrong path to the main GUI class in the JAR's manifest.

Version 1.0

  • Added support for NAACCR 16.
  • Renamed root packages from "org.naaccr.xml" to "com.imsweb.naaccrxml"
  • Changed padding rules for the 5 physician fields so they are not 0-padded anymore.
  • Added a non-gui batch mode (BatchProcessor).

Version 0.8 (beta)

  • Added LICENSE file to the created JAR.
  • Fixed some data types in both dictionaries.

Version 0.7 (beta)

  • Fixed window sizing issues and other minor bugs.
  • Added a simple Help page.
  • The 'timeGenerated' attribute is now optional.
  • Library is now writing a namespace in the root attributes, to comply with the XSD.

Version 0.6 (beta)

  • Added support for XZ compression.
  • Added the XSD files to the released JAR file.
  • Added proper support for padding values in the library.
  • Now presenting the options before the analysis phase in the GUI.
  • Added an About dialog.
  • Now displaying a summary of the validation errors in the GUI.
  • Switched to a centralized class of validation errors.

Version 0.5 (beta)

  • Now using a deterministic way to create the NAACCR IDs from the item names.
  • Added a Validate XML page.
  • Removed Samples page.