ro-crate icon indicating copy to clipboard operation
ro-crate copied to clipboard

Use Case: Clarity on what libraries should be expected to do - how strict/permissive they should be - maybe via an implementation section that gathers all the conformance statements together

Open ptsefton opened this issue 4 years ago • 0 comments
trafficstars

As a programmer, I want to be reasonably sure that an RO-Crate I made in good faith using one library will at least load using annother so that I don't have to hassle the library maintainers or read the spec.

Suggest we have a section of the spec that specifies for each MUST statement what to do and what recovery strategy might be available. This will also be helpful for people building validators.

Eg:

  • should a library fail to load a crate that has unlinked data entities? Or issue a warning? Or add them as a hasPart? Or silently change their IDs (raising the question if they're still data entities?)

  • Should a libary check if files are present? (Suggest this should be a validation step that generates warnings)

  • Should a library allow items with no @id and make one if needed?

  • Should a library allow items with no @type and automatically add "Thing" (like in the ro-crate-js library)

  • Should a library allow non-flattened input? (We need a clearer spec on what JSON-LD is supported)

ptsefton avatar Oct 14 '21 02:10 ptsefton