Difference between revisions of "XML Publishing Roadmap"

From PKP Wiki
Jump to: navigation, search
m (Protected "XML Publishing Roadmap" [edit=autoconfirmed:move=autoconfirmed])
 
(14 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
= XML Publishing Roadmap =
 
= XML Publishing Roadmap =
  
The PKP, in conjunction with RIT and University of Monash, will be extending our publishing support to include XML workflows. The goal is to have our software ingest XML (primarily NLM and Docbook DTDs/schema, with TEI and Erudit to follow) and render/display HTML and PDF.  
+
The PKP, in conjunction with [http://opl.rit.edu/ RIT OPL], and [http://www.lib.unb.ca/Texts/ UNB ETC], will be extending our publishing support to include XML workflows. The goal is to have our software ingest XML (initially [http://dtd.nlm.nih.gov/publishing/2.3/ NLM Journal Publishing Tag Set Version 2.3] with [http://www.docbook.org/ Docbook], [http://www.tei-c.org/index.xml TEI] and [http://www.erudit.org/documentation/doc_erudit.htm Erudit] to follow) and render/display HTML and PDF. [http://pkp.sfu.ca/bugzilla/show_bug.cgi?id=3687 Bugzilla tracking entry for XML publishing]
  
 
== Goals ==
 
== Goals ==
  
* Support Science (NLM) and SSH (Docbook, TEI) publishing formats
+
* Support Science (NLM) and SSH (Erudit, Docbook, TEI) publishing formats
 
* Produce both HTML and PDF rendering
 
* Produce both HTML and PDF rendering
* Integrate with Lemon8-XML, where appropriate
+
* Integrate, where appropriate, with: L8X (preview), OJS, and OMP
  
 
== Roadmap ==
 
== Roadmap ==
  
(Please note, these are rough dates only)
+
===Phase 1===
 +
* Bring XML galleys plugin up to date wrt. localization changes in OJS 2.x
 +
* Modify plugin to generate galleys from an uploaded "layout" file rather than "galley" file
 +
* Move XSL code from the plugin into the PKP WAL
 +
* Determine work required to refactor Molecular Vision XSL2.0 to XSL1.0
 +
* Examine and refactor/merge XSL files for HTML generation from [http://publications.epress.monash.edu/ Monash ePress], [http://www.openmedicine.ca/ Open Medicine], [http://molvis.cc.emory.edu/molvis/ Molecular Vision]
  
'''Sept. 1:'''
+
===Phase 2===
* Examine and understand XSL files sent by U of Monash '''(MJ and James)'''
+
* Examine and refactor XSL files for PDF generation from Molecular Vision
* Examine and understand [http://sourceforge.net/projects/oplsepublibrary/ ePub] '''(MJ and James)'''
+
* Improvements to plugin/XSL classes for supporting XSL2.0 via Saxon
* Compile list of various PHP-based tools for PDF rendering from XML (eg. [http://sourceforge.net/projects/phpfop/ phpfop] '''(MJ)'''
+
* Finalize roadmap
+
  
'''September-December 2008'''
+
===Phase 3===
* Establish, in writing, a reasonable workflow using ePub. This may include a working demo as well, as we expect development and testing to proceed along with the discussion.  '''(MJ and James in conjunction with RIT)'''
+
* Extend the current xmlGalleys plugin (which already supports NLM) to support Docbook and TEI based on XSL from Monash, UNB, UVic
* Extend the current xmlGalleys plugin (which already supports NLM) to support Docbook and TEI; optionally also factor in Erudit support. The goal will be to use the XSL files received from Monash and UNB for as much as possible. '''(James with help from MJ and possibly Jason Nugent)'''
+
 
 +
===Phase 4===
 +
* Extend/parameterize XSLs for HTML and PDF to produce customizable/SSH layout in addition to STM layout
 +
* Update XSL rendering to meet layouts developed by RIT
 +
 
 +
== Documentation ==
 +
 
 +
* Notes on [[Monash]] contribution
 +
 
 +
<center>
 +
[[Image:Xml-rendering-current.jpg|500px|Current XML workflow]]
 +
[[Image:Xml-rendering-proposed.jpg|500px|Proposed XML workflow]]
 +
<br clear="all" />
 +
'''Current and proposed XML rendering workflows'''
 +
</center>
 +
<br clear="all" />
 +
 
 +
[[Image:Nlm-conversion.jpg|center|500px|Workflow for conversion to NLM DTD]]
 +
<center>
 +
'''Workflow for conversion to NLM DTD'''
 +
</center>
 +
 
 +
[[Image:Docbook-xslt.png|center|Sample XSLT customization process]]
 +
<center>
 +
'''Sample XSLT customization process'''
 +
</center>
 +
 
 +
== Feature List ==
 +
 
 +
Feature list broken down by level of difficulty
 +
<table border="1" valign="top">
 +
<tr>
 +
<th>Procedural Step</th><th>Feature</th><th>Simple</th><th>Difficult</th>
 +
</tr>
 +
<tr>
 +
<th rowspan="3" valign="top">1. Various XML to NLM</th>
 +
<td>Docbook->NLM transformation</td>
 +
<td>Requires proper XSL files<br />
 +
- have been provided by Monash<br />
 +
- can't handle Docbook 5</td>
 +
<td>To support Docbook 5 we would have to substantially rework (or recreate) the files provided by Monash</td>
 +
</tr>
 +
<tr>
 +
<td>TEI->NLM transformation</td>
 +
<td>Requires proper XSL files<br />
 +
- will be provided by UVic (will presumably handle Martin's TEIJournal modification; be back-portable to TEI P5)</td>
 +
 
 +
<td>&nbsp;</td>
 +
</tr>
 +
<tr>
 +
<td>Erudit->NLM transformation</td>
 +
<td>Requires proper XSL files<br />
 +
- possibly provided by UNB?</td>
 +
<td>&nbsp;</td>
 +
</tr>
 +
 
 +
<tr>
 +
<th rowspan="2" valign="top">2. NLM to HTML/PDF galleys</th>
 +
<td>NLM->HTML transformation</td>
 +
<td>Requires proper XSLT 1.0 files<br />
 +
- Monash has provided XSLT 1.0 files
 +
- Current plugin already using XSLT 1.0 files based on [http://dtd.nlm.nih.gov/tools/tools.html NLM's tools]</td>
 +
<td>XSLT 2.0 transformation
 +
- UVic would prefer to work with XSLT 2.0
 +
- Molecular Vision has provided XSLT 2.0 files
 +
- XSLT 2.0 would require using Java to use a 2.0-compatible XSLT engine (ie. [http://saxon.sourceforge.net/ Saxon])</td>
 +
</tr>
 +
<tr>
 +
<td>XML->XSL:FO->PDF</td>
 +
<td>Not possible</td>
 +
<td>Requires Java<br />
 +
- Sample XSLT 1.0 in current plugin</td>
 +
</tr>
 +
 
 +
</table>

Latest revision as of 12:06, 1 April 2009

XML Publishing Roadmap

The PKP, in conjunction with RIT OPL, and UNB ETC, will be extending our publishing support to include XML workflows. The goal is to have our software ingest XML (initially NLM Journal Publishing Tag Set Version 2.3 with Docbook, TEI and Erudit to follow) and render/display HTML and PDF. Bugzilla tracking entry for XML publishing

Goals

  • Support Science (NLM) and SSH (Erudit, Docbook, TEI) publishing formats
  • Produce both HTML and PDF rendering
  • Integrate, where appropriate, with: L8X (preview), OJS, and OMP

Roadmap

Phase 1

  • Bring XML galleys plugin up to date wrt. localization changes in OJS 2.x
  • Modify plugin to generate galleys from an uploaded "layout" file rather than "galley" file
  • Move XSL code from the plugin into the PKP WAL
  • Determine work required to refactor Molecular Vision XSL2.0 to XSL1.0
  • Examine and refactor/merge XSL files for HTML generation from Monash ePress, Open Medicine, Molecular Vision

Phase 2

  • Examine and refactor XSL files for PDF generation from Molecular Vision
  • Improvements to plugin/XSL classes for supporting XSL2.0 via Saxon

Phase 3

  • Extend the current xmlGalleys plugin (which already supports NLM) to support Docbook and TEI based on XSL from Monash, UNB, UVic

Phase 4

  • Extend/parameterize XSLs for HTML and PDF to produce customizable/SSH layout in addition to STM layout
  • Update XSL rendering to meet layouts developed by RIT

Documentation

  • Notes on Monash contribution

Current XML workflow Proposed XML workflow
Current and proposed XML rendering workflows


Workflow for conversion to NLM DTD

Workflow for conversion to NLM DTD

Sample XSLT customization process

Sample XSLT customization process

Feature List

Feature list broken down by level of difficulty

Procedural StepFeatureSimpleDifficult
1. Various XML to NLM Docbook->NLM transformation Requires proper XSL files

- have been provided by Monash

- can't handle Docbook 5
To support Docbook 5 we would have to substantially rework (or recreate) the files provided by Monash
TEI->NLM transformation Requires proper XSL files
- will be provided by UVic (will presumably handle Martin's TEIJournal modification; be back-portable to TEI P5)
 
Erudit->NLM transformation Requires proper XSL files
- possibly provided by UNB?
 
2. NLM to HTML/PDF galleys NLM->HTML transformation Requires proper XSLT 1.0 files

- Monash has provided XSLT 1.0 files

- Current plugin already using XSLT 1.0 files based on NLM's tools
XSLT 2.0 transformation

- UVic would prefer to work with XSLT 2.0 - Molecular Vision has provided XSLT 2.0 files

- XSLT 2.0 would require using Java to use a 2.0-compatible XSLT engine (ie. Saxon)
XML->XSL:FO->PDF Not possible Requires Java
- Sample XSLT 1.0 in current plugin