Expanding on a discussion with @simleo in the WRROC meeting.
At Manchester we've just started trying to use LinkML to write schemas for RO-Crate validation. LinkML schemas are YAML-based and therefore a lot easier for inexperienced users to comprehend and add to - and crucially, they can also be converted to SHACL. We think that it's important for RO-Crate profile developers to be able to write a validation schema for their profile themselves, and LinkML is a more approachable framework than SHACL to achieve this (as profile developers may not be linked data/RDF experts).
There has been interest and discussion around this previously: see ResearchObject/ro-crate#264 and linkml/linkml#1462
Thinking about how future profiles could be developed using LinkML in a way that's compatible with this validator package, there are a few possible approaches:
- support LinkML schemas directly within the package (don't know if this is possible)
- include LinkML schemas and their SHACL conversions within the repo, such that developers can update the LinkML and the SHACL conversion is automatically generated for the validation code to use
- develop LinkML schemas in other repos, and include just the SHACL conversions in this repo
Please let me know your thoughts about what the best direction would be.
Expanding on a discussion with @simleo in the WRROC meeting.
At Manchester we've just started trying to use LinkML to write schemas for RO-Crate validation. LinkML schemas are YAML-based and therefore a lot easier for inexperienced users to comprehend and add to - and crucially, they can also be converted to SHACL. We think that it's important for RO-Crate profile developers to be able to write a validation schema for their profile themselves, and LinkML is a more approachable framework than SHACL to achieve this (as profile developers may not be linked data/RDF experts).
There has been interest and discussion around this previously: see ResearchObject/ro-crate#264 and linkml/linkml#1462
Thinking about how future profiles could be developed using LinkML in a way that's compatible with this validator package, there are a few possible approaches:
Please let me know your thoughts about what the best direction would be.