Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use CMR For Validation Type Checks #269

Open
tbs1979 opened this issue Nov 7, 2023 · 1 comment
Open

Use CMR For Validation Type Checks #269

tbs1979 opened this issue Nov 7, 2023 · 1 comment

Comments

@tbs1979
Copy link

tbs1979 commented Nov 7, 2023

The CMR Team would like to recommend that pyQuARC use the CMR API for basic validation checks (metadata schema, controlled vocabularies) rather than have a separate validation in pyQuARC. If there are changes to CMR validation, we want to ensure that users are not using outdated validation in pyQuARC. We also want to verify consistency between what results are provided to users in pyQuARC vs CMR.

Collection metadata can be validated at ingest or without having to ingest it. The validation performed is schema validation, UMM validation, and inventory specific validations. Keyword validation can be enabled with the keyword validation header. It returns status code 200 with a list of any warnings on successful validation, status code 400 with a list of validation errors on failed validation. Warnings would be returned if the ingested record passes native XML schema validation, but not UMM-C validation.

The validation API is documented at https://cmr.earthdata.nasa.gov/ingest/site/docs/ingest/api.html#collection.

@tbs1979
Copy link
Author

tbs1979 commented Feb 1, 2024

https://cmr.earthdata.nasa.gov/ingest/site/docs/ingest/api.html#collection documents the CMR validation API. The wiki page UMM-C Validation in CMR lists the current collection validations done in CMR. The type of validation, whether its an error or warning, and message is documented. This is also documented in CMR Clojure code in more extensive detail.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant