okp4 / dataverse-portal

đŸ”­ Dataverse Portal for the OKP4 network.
BSD 3-Clause "New" or "Revised" License
8 stars 1 forks source link

[Dataverse] Ontology connexion - Details page - CORE #203

Open ChaimaaZaoui opened 1 year ago

ChaimaaZaoui commented 1 year ago

Feature: [Dataverse] Ontology connexion - CORE

As a end-user navigating the portal, I want to see the details of a resource So that I can have more information about a resource registered in the Dataverse

Acceptance criteria

Scenario : General metadata retrieval for a resource from ontology

Given that I am an end user navigating the portal When I click on see more of a resource Then the system should retrieve the current general metadata (CORE) available for that resource in the ontology And display that content according to the UI in https://github.com/okp4/dataverse-portal/issues/120#issue-1635417468

Environment

Additional informations

None.

┆Issue is synchronized with this Wrike task by Unito

lolottetheclash commented 1 year ago

Tech Spec

To retrieve core and audit metadata from the ontology, we could create a new Metadata domain.

The Metadata entity would be based on the current model defined in UI. Here's an element that would make up the Metadata entity:

{
  category: "core
  property: "geographicalCoverage"
  value: "France"
}

In Commands, we'd find the setLanguage method, and we'd have a new retrieveMetadata method which would take the item dataverse ID as parameter.

This domain will be shared for displaying the share dataset page and the dataverse item details pages.

@ccamel, your opinion?

ccamel commented 1 year ago

@lolottetheclash

IMHO, it is acceptable to introduce a metadata domain, but in doing so, we should consider addressing all types of metadata, including those with established models (such as general or audit) as well as unknown ones, to ensure future adaptability. This foundational approach would require considering the meta-meta level when defining the typing of domain entities. Moreover, there is a subtlety associated with the full retrieval of a metadata, as it may have numerous properties that would require pagination fetching to be implemented (this is the case for the governance metadata for instance).