create their own new LinkMLschema with new classes that inherit from datalad-concepts classes.
additionally define new slot_usages (for existing slots from the inherited class) that add annotations for sh:group and sh:order which allow grouping topical slots together and ordering them
add a YAML data file that defines the property groups
run a script that generates shacl from these components
However, the creation of an arbitrary amount of new annotated schemas, and redefining relationships between them, can become cumbersome for a maintainer. If possible, we should aim to make their life easier.
We should investigate whether it is doable and useful to define the groups and orders closer to the root classes and slots that are eventually inherited by the UI schema.
Based on https://github.com/psychoinformatics-de/shacl-vue/pull/16, the current design expects a new "metadata entry website maintainer" to:
datalad-concepts
classes.slot_usage
s (for existing slots from the inherited class) that add annotations forsh:group
andsh:order
which allow grouping topical slots together and ordering themHowever, the creation of an arbitrary amount of new annotated schemas, and redefining relationships between them, can become cumbersome for a maintainer. If possible, we should aim to make their life easier.
It is possible (or likely) that the property groups that have been defined for the current development use case (https://github.com/psychoinformatics-de/shacl-vue/blob/main/src/assets/sddui-shacl-groups.yaml) and the order annotation on slots within those property group contexts, (e.g. https://github.com/jsheunis/datalad-concepts/blob/annotations-etc/src/sddui/unreleased.yaml#L126-L131), are already a reflection of some basic topical groupings of slots, and that we can consider these (or some iteration of them) as a default setting. If there's a default for any class, maintainers might not have to follow all of the above steps at all, and might only have to do so if they particularly want to introduce a custom grouping and order.
We should investigate whether it is doable and useful to define the groups and orders closer to the root classes and slots that are eventually inherited by the UI schema.