Releases: NASA-PDS/pds4-information-model
Releases · NASA-PDS/pds4-information-model
pds4-information-model v16.1.0-SNAPSHOT
SNAPSHOT release
pds4-information-model v16.0.0
⚠️ Breaking Changes
-
Java 17 Required — LDDTool and the Information Model now require Java Development Kit 17 or higher. Applications and build systems using Java 11 or earlier will no longer work.
Who is affected: All users of LDDTool, data providers generating LDDs, and developers building from source.
What breaks: Running LDDTool with Java 11 or earlier will fail with compatibility errors.
How to migrate:
- Install Java 17 or higher from your package manager or Adoptium
- Verify installation:
java -version(should show version 17+) - Update CI/CD pipelines and build scripts to use Java 17
- Rebuild any custom integrations using the new JDK
Highlights
- Java 17 upgrade ensures compatibility with PDS validate 3.8+ and modern dependencies (#971)
- PDS4 Information Model updated to Version 1.25.0.0 (1P00), the latest standards release (#936)
- Override namespace versions with
-sflag for testing alternate LDD versions (#973) - Transfer Manifest validation enforces data types preventing invalid submissions (#950)
- Comprehensive LDDTool CLI documentation added for easier onboarding (#975)
- Choice block indicators now display correctly in generated LDD documentation (#925)
New
- Namespace version override: Added
-soption to LDDTool allowing override of default namespace version numbers for testing and development scenarios (#973) - Whitespace in numeric fields: Table_Delimited now supports space delimiters in numeric fields per CCB-28 (#974)
- CDF parsing standard: Added "CDF 3.9 ISTP/IACG" as permissible value for Header.parsing_standard_id (#942)
- Flexible funding year: funding_year attribute now accepts year values beyond "9999" (#944)
- Transfer Manifest validation: Schematron rules enforce data types for mandatory Transfer_Manifest columns (#950)
- Namespaces added: galileo, prov, dscovr, and 10+ mission namespaces added (#960, #940, #915, #901, #878, #870, #850, #805, #796)
- Include all namespaces in JSON: Added
--include-all-namespacesoption for JSON export to include all registered namespaces (#892) - Comment attribute: DD_Class can now include optional Comment attribute (#909)
- ESA funding source: Added "ESA" as permissible value for Funding_Acknowledgement.funding_source (#911)
- JP2 encoding: Added "JP2" as standard value for Encoded_Image.encoding_standard_id per CCB-48 (#905)
- Additional units: Added mrad/pixel to Units_of_Pixel_Resolution_Angular per CCB-38 (#812)
- Spectral radiance units: Added permissible values to units of spectral radiance per CCB-47 (#840)
- Current units: Added micro amps and nano amps as units of current per CCB-16 (#791)
- Array_1D_Spectrum: Created new Array_1D_Spectrum class and added to multiple file areas per CCB-42 (#810, #811)
Improvements
- Comprehensive CLI documentation: LDDTool documentation updated with complete command-line reference and usage examples (#975)
- IM version display: IM and LDD version numbers now prominently shown in WebHelp documentation (#941)
- Namespace registry cleanup: Removed redundant fields from namespace registry reducing complexity (#955)
- Code quality improvements: Multiple SonarQube findings addressed including "Brain Method" refactoring (#952)
- Repository cleanup: Removed unnecessary artifacts and obsolete servlet code (#977, #854)
- Exit code handling: Improved exit code handling for better CI/CD integration (#858)
- Singleton initialization: Code refactored to properly initialize all singletons and static objects (#802)
- Parent POM update: Updated to latest gov.nasa.pds parent POM for Central Repository Portal (#927, #842)
- Test infrastructure: Added Cucumber BDD testing framework with file comparison capabilities (#785, #800)
- Validation testing: Integrated validate tool for automated integration tests (#809)
- Schematron improvements: Added geom:kernel_type validation rule (#807)
Fixes
- LDD generation: Fixed bug where LDD generator produced invalid LDDs with null names in JSON output (#961)
- Choice block documentation: LDD documentation now correctly handles xs:choice elements with cardinality indicators (#925)
- Help output: Fixed
lddtool --helpdisplay formatting (#853) - Version flag: Fixed bug where
lddtool -vunnecessarily creates/overwrites output files (#851) - Alternate IM versions: Fixed
-Vflag for generating core IM and LDDs for versions 1C00, 1D00, 1E00, 1O00 (#873, #855, #888) - All LDD dictionary: Fixed LDDTool not properly generating the All LDD Data Dictionary (#869)
- Namespace portability: Namespaces now read from latest config.properties addressing JUICE port-back issue (#821)
- Author/Editor validation: Schematron correctly warns when Author/Editor Lists lack required entries per CCB-27 (#914)
- External references: Fixed incorrect schematron rules for Bundle/Collection/Product_External logical_identifiers per CCB-29 (#837)
- Namespace URLs: Updated configs to use http: instead of https: for namespace URLs (#836)
- Reference validation: Fixed regression in schematron improvements for references (#828)
- Test stability: Prevented validate internal errors in test suite (#826, #835)
- LDD attribute exposure: Fixed bug in LDD generation when attribute is not exposed in core IM (#799)
- Download link: Fixed broken documentation download link (#847)
- Units definitions: Replaced all unit_id standard value definitions per CCB-24 (#814)
- Units_of_Gmass: Repaired incorrectly formed enumerated value per CCB-43 (#900)
- Units_of_Amount_of_Substance: Fixed definition per CCB-26 (#792)
- File and directory names: Ensured file_name...
pds4-information-model v15.3.0
PDS4 Information Model Changes
- NASA-PDS/PDS4-CCB#48 - Added JP2 as a standard value for Encoded_Image.encoding_standard_id by @jshughes in #905
- CCB-43: Repaired Incorrectly Formed Enumerated Value for Units_of_Gmass by @jordanpadams in #900
- Added permissible value "ESA" to Funding_Acknowledgement funding_source by @jshughes in #911
- NASA-PDS/PDS4-CCB#13 Ensure file_name and directory_path_name adhere to SR by @jshughes in #913
New Namespaces
- Added namespace ama by @jshughes in #870
- Added vex, smart1, and giotto namespaces to namespace registry by @jshughes in #878
- Add new Namespaces for Kaguya (SELENE), SLIM, Hisaki, and MMX by @jordanpadams in #901
- Added new JAXA namespaces for BepiColombo MMO instruments by @jshughes in #915
Other Enhancements
- Update handling of exit codes by @jordanpadams in #858
- LDDTool does not property generate the All LDD Data Dictionary by @jshughes in #869
--Vflag option does not work when attempting to generate core IM by @jordanpadams in #873- Add tests back that use LDDs by @jordanpadams in #875
- Revert erroneous updates by @jordanpadams in #883
- Updated 1C00 protege files to correct class order problem by @jordanpadams in #884
- lddtool -V flag outputs invalid schemas for 1D00 by @jshughes in #888
- Add additional test cases for all SCRs from B15.0 (1M00) by @rsjoyner in #886
- Added --include-all-namespaces option for JSON export by @jshughes in #892
- Staged PDS4 Information Model V 1.24.0.0 (1O00) for Build 15.1 by @jordanpadams in #889
- Update test cases for #752 and add test cases for #894 by @jordanpadams in #903
- Add tests for NASA-PDS/PDS4-CCB#43 - Units_of_Gmass by @rsjoyner in #908
- Added attribute Comment to DD_Class as optional by @jshughes in #909
- Schematron is not throwing a warning when validating Author/Editor Lists by @jshughes in #914
Full Changelog: v15.2.4...v15.3.0
pds4-information-model v15.2.4
Tag release v15.2.4
pds4-information-model v15.2.3
PDS4 Standards Changes
See parent ticket here for all standards changes for this build: #731
Technical Updates
- Staged PDS4 IM V1.23.0.0 (1N00) for Build 15.0 by @jshughes in #773
- Cucumber testing for LDDTool by @miguelp1986 in #785
- Added micro amps and nano amps as units of current - CCB-16 - P2 by @jshughes in #791
- NASA-PDS/PDS4-CCB#26 - Part 2 - Fixed definition of Units_of_Amount_of_Substance by @jshughes in #792
- Complete additional updates for JIRA-CCB-325 (NASA-PDS/PDS4-CCB#18) per
Encoded_Videoclass by @jshughes in #793 - Add new namespace vikinglander by @jshughes in #796
- Code refactoring to initialize all singletons and static objects by @jordanpadams in #802
- Added File Comparison To Cucumber Tests by @miguelp1986 in #800
- Added new namespaces for juice mission. by @jshughes in #805
- Bug fix for LDD generation when an attribute is not exposed in the core IM by @jshughes in #799
- Add missing standard values for relating a bundle to targets by @jshughes in #806
- Added geom:kernel_type validation rule by @jshughes in #807
- Add validate tool testing for automated integration tests by @jordanpadams in #809
- Add initial tests cases for B15.0 (repo v15.2.0) by @rchenatjpl in #817
- Get namespaces from the lastest version of the config.properties file to address the JUICE port-back problem by @jshughes in #821
- Fix tests by preventing validate internal error by @jordanpadams in #826
- Fix regression in schematron improvements for references by @jordanpadams in #828
- Fix validate misbehavior in cucumber tests by @al-niessner in #835
- Incorrect schematron rules for Bundle (type:External), Collection (type:External), and Product_External logical_identifiers CCB-29 by @jshughes in #837
- Update configs to use http: instead of https: for namespace URLs by @jordanpadams in #836
- Support roundup-action#142 by ensuring we're using the latest gov.nasa.pds parent pom by @nutjob4life in #842
New Contributors
- @al-niessner made their first contribution in #835
Full Changelog: v15.1.0...v15.2.3
pds4-information-model v15.1.0
What's Changed
Full Changelog: v15.0.7...v15.1.0
pds4-information-model v15.0.7
Tag release v15.0.7
pds4-information-model v15.0.6
Tag release v15.0.6
pds4-information-model v15.0.5
Tag release v15.0.5
pds4-information-model v15.0.4
Tag release v15.0.4