IQSS / IQSS/dataverse

Feature Request: Help users find missing required fields in datasets with incomplete metadata

Open
#12,708 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Type: Feature
Dominant language
Java
Stars
1.1k
Forks
564
Avg merge
2d 2h
Merged PRs (30d)
29

Description

Overview of the Feature Request

What kind of user is the feature intended for?
(Example users roles: API User, Curator, Depositor, Guest, Superuser, Sysadmin)
API User, Curator, Depositor

What inspired the request?
The Harvard Dataverse team has been evaluating the HEAL QDR Bridge that lets users create datasets in a Dataverse repository using information about studies indexed in the HEAL Data Platform. The HEAL QDR Bridge uses the Dataverse API to pull information from the HEAL Data Platform, creating datasets in Dataverse repositories that are missing the required Point of Contact E-mail field, licenses, and terms of use.

Dataverse administrators can configure their repositories so that when datasets are created using the API and have no license or terms of use, the repository will apply a default license. When people use the HEAL QDR Bridge to create datasets in such repositories, the datasets have "Incomplete metadata" because of the missing Point of Contact E-mail.

We expect that users who use the tool will need to visit the datasets and add email addresses, and we suspect that they'll have a hard time figuring out what information they need to add to the dataset, especially when there are many fields on the deposit form, they might miss the red asterisks that indicate required fields, and the larger red error messages below each missing required field appear only after users click the edit page's Save Changes button.

In the GitHub issue at https://github.com/IQSS/dataverse/issues/2190 we've described a similar concern.

The PR https://github.com/IQSS/dataverse/pull/12634 addresses this concern, and closed https://github.com/IQSS/dataverse/issues/2190, by changing Dataverse so that when the user clicks Save Changes, the page scrolls to the first required missing field. We expect this will help users who are creating datasets in Dataverse repositories using their browsers, since they'll need to click Save Changes after filling out the deposit form.

But it may not help users who return to datasets that have already been drafted or published with required fields that are missing, which can happen when:

  • A user drafted or published the dataset and didn't fill in fields that were optional at the time, then sometime later the folks managing the repository or the collection made that optional field into a required one
  • A user used the API, like the Submit a dataset endpoint or the SWORD API, or used another application that used those APIs, like the HEAL QDR Bridge, to draft a dataset in a Dataverse repository with the (dataverse-api-allow-incomplete-metadata setting) that allows people to use the API to draft datasets without filling in all required fields

What existing behavior do you want changed?
Changes that make it easier for users to tell which required fields are missing from their datasets

Any open or closed issues related to this feature request?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Begin with related PR #12634 and issues #2190, #368, and #486, then review the Submit a dataset and SWORD API paths plus the dataverse-api-allow-incomplete-metadata setting described here. Define a concrete way for users to identify missing required fields in API-created and previously saved datasets, with completion verified against the affected dataset workflows.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.