Workflow with galleys from JATS XML to HTML and PDF

I have been working on a workflow with exactly the criteria in mind that you described. Namely something any editor could handle without using command line etc. However, my opinion is that at the moment it is not possible without some technical skills. At least you need to learn do some basic coding in JATS XML.

This is what I have:

  1. I use the OJS3-markup plugin (which uses the Open Typesetting Stack) to create a XML file from docx in the production phase. GitHub - kaschioudi/ojs3-markup: markup plugin for OJS3
  2. The editor manually edits the XML. This means checking for mistakes, especially with citations, and adding some extra metadata. For the metadata part I have a own plugin (jatsFrontPuller edit: GitHub - ajnyga/JatsFrontPuller) which basically creates the whole <front> section of the JATS XML file (that is the part with the article/issue/journal metadata).
  3. For publishing, I have modified the OJS core to support artwork files (like images) in the case of XML galleys (Allow artwork files for XML galleys by ajnyga · Pull Request #1353 · pkp/ojs · GitHub)
  4. For visualizing JATS XML content I have added some new features to the lensGalley plugin (GitHub - ajnyga/lensGalley: Galley viewer plugin integrating eLife Lens for OJS 3.0: fork using the latest develop branch of Lens) and a plugin that converts the JATS XML to html on the fly and shows it in the abstract page (GitHub - ajnyga/embedGalley: OJS3 plugin for visualizing JATS XML galleys).

The problematic part is of course the manual cleaning of the XML file you get from the PKP Open Typesetting Stack with the most problematic being the citations. In my opinion the best tool for cleaning the XML file is an honest text editor, but this could be just ignorance towards the actual XML editors.

Another problematic part is creating PDF from JATS XML. Here, I am working on a plugin that uses Cassius (GitHub - MartinPaulEve/CaSSius: CaSSius: a CSS-regions-based PDF typesetter for scholarly communications). I am thinking of combining the embedGalley plugin, which would output the article in HTML (with some nice CSS) and then implementing the Cassius library there, enabling the editor to print out a pdf version of the finished article. I hope to have a version of this ready by the end of this month. But Cassius, at the moment, can not handle cool two column layouts like @Vitaliy has there.

2 Likes