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

Refactor to support OSTI ELINK2.0 #2

Open
FiannaOBrien opened this issue Jul 27, 2024 · 1 comment
Open

Refactor to support OSTI ELINK2.0 #2

FiannaOBrien opened this issue Jul 27, 2024 · 1 comment

Comments

@FiannaOBrien
Copy link

FiannaOBrien commented Jul 27, 2024

Is your feature request related to a problem? Please describe.

The upcoming release of OSTI ELINK2.0 in Jan 2025 will not integrate with the existing OSTI Metacat tools. ELINK2.0 will require changes to the authentication method, metadata validation, and metadata format.

During the transition period, we will be able to submit XML similar to the XML that was accepted by ELINK v1, but we will need to transition to using JSON data in the future (OSTI has not clarified the timeline for forcing JSON submissions)

Pressing Changes for ELINK2.0 XML Support

  • Authentication
    * ELINK2.0 will use token-based authentication rather than username+password
  • Metadata Validation
    • Fields will be validated using the ELINK2.0 schema
      • Failed requests will be more common with new validation and will require data revision team to easily access error messages from OSTI.
  • Get Status via OSTI Search
    • ELINK2.0 search results will be returned as JSON rather than XML.

Long Term Changes for ELINK2.0 JSON Support

  • Metadata Format
    • JSON submissions will be supported and will be required in the future. This will require a complete overhaul of XSLT. May require discussions of Metacat data format changes for optimal knowledge transfer to OSTI.
  • DOI publication
    • Publication of a DOI will require the complete metadata record and specific API endpoint call rather than the current, minimal site_url submission.
    • URLs associated with a DOI will be not be submitted with the metadata, but rather through a separate endpoint. This will require a workflow change.

Describe the solution you'd like.

We would like to see a system that support both the current ELINK v1 and ELINK 2.0 XML where the version is configurable.

Concurent Support for ELINKv1 and ELINK2.0

  • User configuration will determine the authentication method and base endpoints for accessing ELINK.
    • Current ELINK using basic auth
    • ELINK 2.0 using token auth
  • ELINKv1 would be default behavior and user will specify they want to use ELINK 2.0 XML.
  • Upon the switch to ELINK2.0 in Jan 2025, ELINK 2.0 XML will become the default and ELINK v1 will be depreciated.
  • Future support for ELINK2.0 JSON will be activated in the same manner as switching from current ELINK v1 to ELINK2.0 XML.

XSLT changes

  • XSL will have to live in Metacat, which will require a new metacat release
  • Both ELINK v1 & ELINK2.0 will use the same updated XSLT to comply with ELINK2.0 validation
@taojing2002
Copy link
Contributor

I created a new ticket to describe a solution to avoid a new Metacat release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants