NASA-PDS / validate

Validates PDS4 product labels, data and PDS3 Volumes
https://nasa-pds.github.io/validate/
Apache License 2.0
16 stars 11 forks source link

Unexpected SKIP Message for bundle product when using validate-3.3.0-SNAPSHOT #671

Closed radiosci closed 1 year ago

radiosci commented 1 year ago

Checked for duplicates

No - I haven't checked

πŸ› Describe the bug

I have been using validate 3.3.0-SNAPSHOT to get around NaN error messages in files with binary fields. But this version of validate 'skips' the bundle product/label. I don't understand why, and I don't know how to avoid this result. Validate 3.2.0 does not skip the bundle label. There is also a second problem that I discovered while preparing the test data to document this report -- validate 3.3.0-SNAPSHOT also issues warnings that my collections are not found in any bundle within the target. Validate 3.2.0 issues no such warnings.

πŸ•΅οΈ Expected behavior

I expect the bundle label to be validated and that properly labeled collections pass reference integrity checks.

πŸ“œ To Reproduce

  1. Unzip and untar the submitted data file.
  2. Run validate 3.3.0-SNAPSHOT with options '-t test -R pds4.bundle' to see the skip and reference messages
  3. Run validate 3.2.0 with the same options to see error/warning free results
  4. Compare with my validate_test*.txt output files test.tar.gz

πŸ–₯ Environment Info

πŸ“š Version of Software Used

validate 3.2.0 and 3.3.0-SNAPSHOT

🩺 Test Data / Additional context

see test.tar.gz

πŸ¦„ Related requirements

πŸ¦„ #xyz

βš™οΈ Engineering Details

No response

jordanpadams commented 1 year ago

@radiosci I was able to reproduce. I think this is one of those corner cases with bundles/collections in the same directory that can get a bit squirrelly. We will take a look.

radiosci commented 1 year ago

In response to Jordan 's comment, I created directory BUNDLE in parallel with bundle_test.xml and moved the co-s-rss-1-sagr1-v10 data directory and the collection products into BUNDLE. Then, from the parent directory, I ran validate -t test -R pds4.bundle where validate defaults to validate 3.3.0-SNAPSHOT. The original SKIP and reference warning messages went away; but a new message appeared: "SKIP: file:/Users/rsimpson/Data/CAS/PDS4_new/test/BUNDLE/collection_test_158.xml INFO [info.integrity.unreferenced_file] Skipping file:/Users/rsimpson/Data/CAS/PDS4_new/test/BUNDLE/collection_test_158.xml due to collection not latest or does not sharing the same logical_identifier as the bundle target" There was no companion message about collection_test_pd2.xml. The original directory structure was chosen to simplify overlay of PDS4 artifacts on an existing PDS3 structure so that most data objects would not need to be replicated. We may be able to do something similar with the actual migration; but we need to understand how the SKIP messages arise so that we choose a structure that avoids them.