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

Update Validate to allow specification of schema/schematrons in config file #84

Closed galenatjpl closed 5 years ago

galenatjpl commented 5 years ago

/home/xxx/archive_pipeline/tools/validate-1.15.3/bin/validate --report-style json -c /home/xxx/pipeline/scripts/validate_config.txt /m/bundle_workspace/insight_cameras -D -R pds4.bundle 2>&1 | Cannot specify user schemas, schematrons, and/or catalog files with the 'force' flag option

In this case, the user didn't specify '-f', but saw the above error.

This may also be related to #87 .

galenatjpl commented 5 years ago

Galen to LFT dataset to Hyun.

galenatjpl commented 5 years ago

@hhlee445 I sent the dataset to you over LFT, along with a usage example...

jordanpadams commented 5 years ago

@galenatjpl the dataset shouldn't really matter. this error will appear when you try to run bundle validation against any bundle. the config file is what really matters to find out what they are specifying and where we are missing setForce(false);, I think we need this in ValidateLauncher.query(config):

            if (config.containsKey(ConfigKey.SCHEMA)) {
                // Removes quotes surrounding each pattern being specified
                List<String> list = config.getList(ConfigKey.SCHEMA);
                list = Utility.removeQuotes(list);
                setSchemas(list);
                setForce(false); <<<<<<<<<<<<<<<<<
            }
            if (config.containsKey(ConfigKey.SCHEMATRON)) {
                // Removes quotes surrounding each pattern being specified
                List<String> list = config.getList(ConfigKey.SCHEMATRON);
                list = Utility.removeQuotes(list);
                setSchematrons(list);
                setForce(false);   <<<<<<<<<<<<<<<<<
            }

@hhlee445 please try this out and create an integration test with an input config file that tests this. you may just be able to use github71 data

hhlee445 commented 5 years ago

@jordanpadams just setting setForce(false) still checked the schema/schematron validation, I had to add a separate method to disable schema check in LabelValidator and LocationValidator classes.

jordanpadams commented 5 years ago

@hhlee445 has this code been committed?

hhlee445 commented 5 years ago

I will commit today.

-------- Original message -------- From: Jordan Padams notifications@github.com Date: 9/19/19 1:33 AM (GMT-08:00) To: NASA-PDS-Incubator/validate validate@noreply.github.com Cc: "Lee, Hyun H (US 398G)" hyun.lee@jpl.nasa.gov, Mention mention@noreply.github.com Subject: [EXTERNAL] Re: [NASA-PDS-Incubator/validate] Update ValidateLauncher to sufficiently deactivate using online schemas when specified via command-line (#84)

@hhlee445https://github.com/hhlee445 has this code been committed?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/NASA-PDS-Incubator/validate/issues/84?email_source=notifications&email_token=ALKXIZBK7YIULVDB2UXW4U3QKM2PDA5CNFSM4ITK2IL2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7CVZJI#issuecomment-533028005, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ALKXIZATRB4NG7O2XDBFZ4TQKM2PDANCNFSM4ITK2ILQ.

jordanpadams commented 5 years ago

@hhlee445 any word on this update? would like to get this in this build if we could.

hhlee445 commented 5 years ago

Jordan,

I already delivered the code at Sep 19, 2019. I think I forgot to create a PR.

Date: Thursday, September 19, 2019 at 2:29 PM To: pds-cm pds-cm@jpl.nasa.gov Subject: [pds-cm] [EXTERNAL] [NASA-PDS-Incubator/validate] f4fc96: issue_84: Deactivate using online schemas validation

Branch: refs/heads/issue_84 Home: https://github.com/NASA-PDS-Incubator/validate Commit: f4fc9633a2ff0fe5c54f9c497538da1f2996d5e2 https://github.com/NASA-PDS-Incubator/validate/commit/f4fc9633a2ff0fe5c54f9c497538da1f2996d5e2 Author: hyunlee Hyun.H.Lee@jpl.nasa.gov<mailto:Hyun.H.Lee@jpl.nasa.gov> Date: 2019-09-19 (Thu, 19 Sep 2019)

Changed paths: M src/main/java/gov/nasa/pds/tools/label/LocationValidator.java M src/main/java/gov/nasa/pds/validate/ValidateLauncher.java M src/main/java/gov/nasa/pds/validate/commandline/options/ConfigKey.java M src/main/java/gov/nasa/pds/validate/commandline/options/Flag.java M src/main/java/gov/nasa/pds/validate/commandline/options/FlagOptions.java

Log Message:

issue_84: Deactivate using online schemas validation

Thanks, Hyun