8000 Linking Term and Controlled Vocabs on one JSON schema · Issue #273 · tdwg/ac · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Linking Term and Controlled Vocabs on one JSON schema  #273
Open
@sharifX

Description

@sharifX

I was wondering if someone could shed light on how AC T\terms and controlled vocabularies are linked. We are examining this closely from a DiSSCo/Digital Specimen/FAIR perspective. I am particularly trying to understand the connection between terms and controlled vocabularies, as well as their machine-readable descriptions. To get a better grasp, I explored a few examples.

For instance, in the AC terms documentation, it mentions a "Controlled Vocabulary for Audiovisual Core subjectOrientation". You can select acorient:r, which then provides a JSON file with machine-readable details:
http://rs.tdwg.org/acorient/values/version/r-2023-04-26.json.

However, my first question is: the JSON file does not explicitly state that acorient:r is part of a Controlled Vocabulary scheme. Instead, it describes this as "a SKOS concept scheme for orientation". If I refer to the terms documentation for ac_subjectOrientation and its JSON serialisation (http://rs.tdwg.org/ac/terms/version/subjectOrientation-2023-09-05.json), there is no direct indication that a controlled vocabulary is associated with this term.

On the other hand, the human-readable page here mentions "Controlled value strings from SKOS Collections for ac:subjectOrientationLiteral", and the corresponding JSON-LD SKOS Collection file lists the controlled terms as "members":
https://tdwg.github.io/rs.tdwg.org/cvJson/acorient_collection.json.

I find this structure overly complicated to navigate. I also reviewed the NERC implementation for comparison. They also use skos:Collection and the skos:member concept. However, I feel that a few key elements are missing from several controlled vocabulary implementations.

There is no ontology term like isControlledVocab: {yes/no} or hasControlledVocab to explicitly indicate whether a concept is part of a controlled vocabulary or has one.

A clear relationship, such as skos:inScheme, to show which Term Schema a Controlled Vocabulary belongs to, is also absent.

In my opinion, this information could be incorporated into a single schema to simplify FAIR access and understanding.

So the file http://rs.tdwg.org/ac/terms/version/subjectOrientation-2023-09-05.json defines the term subjectOrientation and includes a scopeNote stating:

“Values SHOULD be selected from the Controlled Vocabulary for Audiovisual Core subjectOrientation.”
However, there is no explicit, machine-readable link pointing to where the vocabulary can be found.

Meanwhile, the file https://tdwg.github.io/rs.tdwg.org/cvJson/acorient_collection.json provides SKOS Collections of controlled vocabulary concepts as members. http://rs.tdwg.org/acorient/values/r0000, r0001, etc.

These members represent the valid controlled terms for subjectOrientation, but this connection is not stated in the subjectOrientation JSON file.

Could we not add more context into a single JSON schema and link the term and its vocabularies better? Below is an oversimplified example to illustrate the point:

{
  "@id": "http://rs.tdwg.org/ac/terms/version/subjectOrientation-2023-09-05",
  "rdfs:label": {
    "@language": "en",
    "@value": "Subject Orientation"
  },
  "skos:prefLabel": {
    "@language": "en",
    "@value": "Subject Orientation"
  },
  "hasControlledVocab": {
    "@id": "http://rs.tdwg.org/acorient/collection/",
    "skos:members": [
      "http://rs.tdwg.org/acorient/values/r0000",
      "http://rs.tdwg.org/acorient/values/r0001",
      "http://rs.tdwg.org/acorient/values/r0002",
      "http://rs.tdwg.org/acorient/values/r0003"
    ]
  }
}

Sorry for the long post. As we are trying to re-use some of these existing ontologies, terms, and vocabularies in DiSSCo and create new terms that openDS specific, we want to better understand the current implementation and identify any gaps.

Thanks for your time!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0