BioSchemas / specifications

Issue tracker, technical wiki, and example markup
https://bioschemas.org
54 stars 52 forks source link

getting to the formal specification #577

Open micheldumontier opened 2 years ago

micheldumontier commented 2 years ago

Draft spec suggests dct:conformsTo to point to a versioned bioschema profile, which i assume is an HTML document. Is there a clear mechanism to point to a formal specification of the bioschemas dataset profile? this is key for automatic assessment by FAIR Evaluators.

AlasdairGray commented 2 years ago

@micheldumontier this is a great point and hopefully something that we will be able to support once we fully move over to the JSON-LD/Schema backed profiles developed on the DDE.

Do you have proposals on how we can link to the machine readable version? For example, the Dataset 0.-RELEASE profile's machine readable version is available at https://github.com/BioSchemas/specifications/blob/master/Dataset/jsonld/Dataset_v0.3-RELEASE.json and can be edited at https://discovery.biothings.io/view/bioschemas/Dataset.

Or do we need to have content negotiation (is that possible on GitHub pages)?

micheldumontier commented 2 years ago

What about using a Profile (https://www.w3.org/TR/dx-prof/)? This allows then the description of multiple conformance documents (PDF, HTML, JSON Schema, etc).

stain commented 1 year ago

We're trying out ways to document profiles in RO-Crate with content negotiation (and/or) signposting to a dx-prof instance within a Profile Craft, this approach could potentially also work with Bioschemas. We're documenting it in FAIR-IMPACT separate to RO-Crate. For current draft, see https://stain.github.io/ro-crate/1.2-DRAFT/profiles

And then from there link to particular schemas in various formats like ShEx or indeed Bioschemas internal JSON model, which we can generate other shapes/profiles from.

I think it would be tricky to do content-negotiation directly (application/ld+json could be with any context, any vocab, any profile) unless you also add profile negotiation. But we can still try to do that through w3id.