IQSS / IQSS/dataverse

Adding the right publishers @id and name to JSON-LD output

Open
#9,613 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

Datasetdescriptions, which are outputted as JSON-LD according to schema:Dataset currently have a publisher property of type schema:Organization and a schema:name. This can be traced back to the following code:
https://github.com/IQSS/dataverse/blob/bef00db2fdf34c5460286cd22e7ac82a43f228fa/src/main/java/edu/harvard/iq/dataverse/DatasetVersion.java#L2021-L2024

As an example from datasets on https://datasets.iisg.amsterdam/ you'd see
"publisher":{"@type":"Organization","name":"IISH Data Collection"}

In Linked Data, we like URI's, blank nodes are disliked.
The absence of an @id in the schema:publisher is strange, because schema:creator does have @id's in the GUI we see an identifier:

image

As the identifier (URI) is already available as data element within Dataverse, can this could be added to the publisher JSON-LD to become:
"publisher":{"@type":"Organization","@id": "https://datasets.iisg.amsterdam/dataverse/IISH","name":"IISH Data Collection"}

Although, are these Dataverse values really an schema:Organization? In this example the organization publishing the data via https://datasets.iisg.amsterdam/dataverse/IISH is the International Institute of Social History with URI http://www.iisg.amsterdam/.

I do see, this name and URI on https://datasets.iisg.amsterdam/dataverse/IISH so I'd imagine these values can be used in the publisher property to become:
"publisher":{"@type":"Organization","@id":"http://www.iisg.amsterdam/","name":"International Institute of Social History"}

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

Start in src/main/java/edu/harvard/iq/dataverse/DatasetVersion.java around lines 2021-2024, then compare how schema:creator identifiers are produced. Clarify whether publisher should use the Dataverse URI or the organization URI and matching name; done means the JSON-LD publisher includes the agreed @id, @type, and name.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend-api-design
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.