sfb1451 / crc-schema-draft

https://sfb1451.github.io/crc-schema-draft/
0 stars 0 forks source link

Case study: Author #6

Open mslw opened 9 months ago

mslw commented 9 months ago

This is about slots with two possible classes in their range - and about reusing schema.org definitions when we in fact rely on a modified subset of their properties.

Current state

Our Dataset class defines author slot as:

https://github.com/sfb1451/crc-schema-draft/blob/3a233f58fa57f7593b81781761363cf38ad8f9d0/src/sfb1451_schema.yaml#L158-L168

In https://schema.org/author (as in real life), an author is expected to be an Organization or a Person.

In SFB tabby, we expect an author to have name, email, orcid, affiliation.

We model that as an Author class:

https://github.com/sfb1451/crc-schema-draft/blob/3a233f58fa57f7593b81781761363cf38ad8f9d0/src/sfb1451_schema.yaml#L238-L272

Similar case: DataController.

Issues

Thoughts

Should our Author really have class_uri: schema:Person, or be our "own" definition of an Author which is related to a schema:Person? LinkML allows to define mappings, such as close_mapping which map to SKOS data model.

This would shows in the docs as: URI: sfb1451_schema:Author and then in the "Mappings section" as:

Mapping Type Mapped Value
self sfb1451_schema:Author
native sfb1451_schema:Author
close schema:Person

OTOH I am not sure what other practical meaning that would have. E.g. if what I care is feeding the data to the catalog, it's probably better to carry over the schema IRI?

mslw commented 9 months ago

A snapshot from a whiteboard discussion, to refresh our memories:

PXL_20231213_140119842