Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Request/Idea: Possibility to create & save dataset with incomplete mandatory metadata via API only #8822

Closed
DieuwertjeBloemen opened this issue Jun 30, 2022 · 4 comments · Fixed by #8940
Labels
HERMES related to @hermes-hmc work on Dataverse code Type: Suggestion an idea User Role: API User Makes use of APIs User Role: Depositor Creates datasets, uploads data, etc.
Milestone

Comments

@DieuwertjeBloemen
Copy link
Contributor

Overview of the Feature Request
It would be possible to create and save a dataset via API without all the mandatory metadata being present. This would only be possible via API to ensure that the user interface remains the same and doesn't get more complicated. It would be a way to make it easier to connect/push in data from other active data platforms.
Because it's only via API, the user interface in Dataverse can remain the same and would be perfect already for a user to go through to fill in their missing metadata before publication. The only changes would maybe be some more notifications or tags where necessary to point out that the metadata needs to be completed before publication is possible.

What kind of user is the feature intended for?
API User

What inspired the request?
We want to make it easier for users to create a dataset using data that is present in another application that doesn't necessarily contain all the mandatory metadata options or flexibility needed for a Dataverse dataset.

What existing behavior do you want changed?
The create & save a dataset action via API.

Any brand new behavior do you want to add to Dataverse?
The possibility to save a dataset's metadata without all the mandatory metadata filled in via API only.

Any related open or closed issues to this feature request?
No, but we (KU Leuven LIBIS) would definitely be willing to work on this and develop it. We just first want to gauge the interest/willingness and get input from the community on this feature.

@poikilotherm
Copy link
Contributor

This is very much related to IQSS/dataverse-pm#26 and I'd be certainly interested in such a functionality for what we are looking at for automated deposition process with HERMES.

I'm not sure about the impact on the data model which currently depicts fields from the (TSV-originating) schemas into the database. You might be off the hook to change the bean validation in DatasetFieldValidator, as the JSON parsing via the API seems to circumvent all of this and the validation happens in the command engine.

@pdurbin
Copy link
Member

pdurbin commented Jul 13, 2022

This is similar to how the SWORD API works.

Because we introduced SWORD in DVN 3.x when "Subject" was not required, SWORD for Dataverse 4+ does not require "Subject". A special N/A value is inserted in the database when there is no subject (we used this trick for migrations too). When the user comes along in the UI and tried to edit the metadata, the normal "Subject is required" message will appear.

@pdurbin
Copy link
Member

pdurbin commented Aug 23, 2022

We had a surprise demo during today's community call!

@ErykKul and @DieuwertjeBloemen from KU Leuven RDR showed a possible solution for a problem they have: when integrating GitLab or iRods with Dataverse, they want researchers to be able to send files and just enough information to get the dataset created via API. Publishing is prevented until required fields are entered (using the GUI, most often).

You can find the video at the top of DataverseTV: https://dataverse.org/dataversetv

Here's a direct link: https://harvard.zoom.us/rec/share/EZGLPBLPv3o74H_WD-ejp34c3Grro1Jk8mS5L8um9PyFbKzVr2Ro_62gqIkckKf5.1Fh8UfNOIkc8sqpc

I also posted this on the mailing list in case people prefer to discuss there: https://groups.google.com/g/dataverse-community/c/0WmMONTkzOA/m/DgshmqtnAQAJ

@pdurbin
Copy link
Member

pdurbin commented Oct 1, 2022

@pdurbin pdurbin added Type: Suggestion an idea User Role: API User Makes use of APIs User Role: Depositor Creates datasets, uploads data, etc. labels Oct 10, 2022
@poikilotherm poikilotherm added the HERMES related to @hermes-hmc work on Dataverse code label Jan 18, 2023
sekmiller added a commit to ErykKul/dataverse that referenced this issue May 16, 2023
@pdurbin pdurbin added this to the 5.14 milestone May 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
HERMES related to @hermes-hmc work on Dataverse code Type: Suggestion an idea User Role: API User Makes use of APIs User Role: Depositor Creates datasets, uploads data, etc.
Projects
Status: Closed
Development

Successfully merging a pull request may close this issue.

3 participants