openlibhums / openlibhums/janeway

Allow XML articles to receive XSLT upgrades

Open
#4,904 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

new feature
Dominant language
Python
Stars
238
Forks
97
Avg merge
9d 1h
Merged PRs (30d)
8

Description

Is your feature request related to a problem? Please describe.
In order to preserve the original presentation of an article, when the XML file is uploaded, we snapshot the XSLT version that was first used. While it helps preserve that original presentation, it does mean that published articles won't benefit from updates made to the default XSLT, unless we explicitely edit each article XML to use the newer version.

Describe the solution you'd like
We want to flip the logic so that.

  • When an article XML is first uploaded, if the Janeway XSLT is flagged as the default for the hournal, we do not pin any XSLT versions and instead it is rendered with the latest version of the default XSLT.
  • Only when an article requires a specific XSLT version for preservation purposes, editors can go and change its version.

Additional context

  • For this feature to not betray the preservation of articles, further changes to our default XSLT should always be backwards compatible
  • There is the question of what to do with existing published XML articles. Perhaps this feature should only exist from 1.9 onwards.

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 by locating the XML upload flow and the XSLT version-selection logic described in the issue. Trace how default and explicitly selected versions are stored and rendered, then determine how existing published articles and backward compatibility should be handled. Done means the agreed upgrade behavior is implemented and covered for new and existing articles.

Written by the indexing model from the issue text.

Assessment

Tech stack
xml
Domain
content
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.