stac-utils / stac-check

Linting and validation tool for STAC assets
MIT License
17 stars 5 forks source link

stac-check confusing results #108

Open m-mohr opened 1 year ago

m-mohr commented 1 year ago

I'm trying to validate the following catalog: https://github.com/EOEPCA/open-science-catalog-metadata-testing

If I run stac-check catalog.json -l -a without recursion it says the catalog.json is valid.

If I run stac-check catalog.json -l -a -r with recursion is reports the following:

stac-check catalog.json -l -a -r

 ____  ____  __    ___       ___  _  _  ____  ___  __ _
/ ___)(_  _)/ _\  / __)___  / __)/ )( \(  __)/ __)(  / )
\___ \  )( /    \( (__(___)( (__ ) __ ( ) _)( (__  )  (
(____/ (__)\_/\_/ \___)     \___)\_)(_/(____)\___)(__\_)

stac-check: STAC spec validaton and linting tool

Thanks for using STAC version 1.0.0!

Validator: stac-validator 3.3.1

Recursive: Validate all assets in a collection or catalog
Max-depth = None
-------------------------
Asset 1 Validated: catalog.json

Valid CATALOG: True

Schemas validated:
    https://schemas.stacspec.org/v1.0.0/catalog-spec/json-schema/catalog.json

STAC Best Practices:
    A link to 'self' in links is strongly recommended

This object has 7 links

-------------------------
Asset 2 Validated: catalog.json

Valid: False
Schemas validated:
    https://schemas.stacspec.org/v1.0.0/catalog-spec/json-schema/catalog.json
Error Type: Exception
Error Message: list index out of range
-------------------------

What does this mean? Which file does it refer to? It's twice catalog.json, maybe report a full file path or so? If it's the root catalog, there are no assets in there?! Should "Asset 2 Validated" be: "File 2 Validated" to not confuse it with STAC assets? The "list index out of range" should probably not occur?

m-mohr commented 1 year ago

Looks like this is partially originating from stac-validator, I see similar results there.