NCEAS / metacatui

MetacatUI: A client-side web interface for DataONE data repositories
https://nceas.github.io/metacatui
Apache License 2.0
42 stars 26 forks source link

Add support for ADC Disciplines in the editor for arctic theme #2013

Open amoeba opened 2 years ago

amoeba commented 2 years ago

We built out the ADC Disciplines ontology for classifying datasets in the Arctic Data Center into their associated discipline(s) but it's not fully supported in the editor. Right now, scientists don't choose their own discipline(s) and the datateam ends up guessing and assigning for them. Supporting this directly in the editor would allow scientists to choose their discipline(s) which would increase the accuracy of choices and save the data team time.

You can see an example of a dataset that has been classified at Karen Beard and Ryan Choi. 2017. Plant community response to warming and herbivory on sub-arctic coastal terraces in Western Alaska, 2015 - 2016. Arctic Data Center. urn:uuid:c02224c6-5883-4741-ace6-c26267e72e95..

Each choice for discipline is serialized as a dataset-level annotation,

<dataset ...>
    ...
    <annotation>
      <propertyURI label="theme">http://www.w3.org/ns/dcat#theme</propertyURI>
      <valueURI label="Plant Science">https://purl.dataone.org/odo/ADCAD_00021</valueURI>
    </annotation>
    ...
</dataset>

and multiple are allowed. I think much of the implementation can be copied from either the Measurement Type code or @laurenwalker's more recent data sensitivity classification work so this shouldn't be a ton of work.

amoeba commented 2 years ago

I'm thinking something that looks and behaves pretty similarly to how we did the MeasurementType implementation in the attribute editor would work here, like:

Screen Shot 2022-05-13 at 11 36 57 AM

As for location, I think we generally agreed to put it near the Title section.

Two questions came up right away:

  1. Could we pre-expand some of the tree.

    Screen Shot 2022-05-13 at 11 40 14 AM

    By default, the tree widget only shows the top level term but I think something like automatically expanding the top level term might work better.

  2. Do we want to let the user pick non-leaf nodes? ie should a person be allowed to pick "Natural Science"?
mbjones commented 2 years ago

I think ideally we want people to pick nodes that are as specific as possible -- so generally leaf nodes, but not necessarily always when there is a little hierarchy (e.g., in the geosciences, or political science). In general I think Natural Science is too high level and it would be best to get more specific choices. If the person doesn't find something more specific than that, it argues that we are probably missing some critical subdisciplines, and those should be added.

amoeba commented 2 years ago

Since the ADC is moderated and we're only enabling this there, it sounds like allowing any choice and also offering a "I couldn't find a suitable term" check box like we did with the Measurement Type implementation would work.

mbjones commented 2 years ago

That sounds good. I wonder if there is a way to provide configuration options for "Only allow choices "below level 2" or "only allow leaf nodes"? If that is complicated, then just allowing any selection and falling back on curation is fine.

amoeba commented 2 years ago

Might not be too bad to implement. I'll have a look.

robyngit commented 3 weeks ago