[xsl] XSLT workflow: ODF <-> XPP

Subject: [xsl] XSLT workflow: ODF <-> XPP
From: Martynas Jusevicius <martynas.jusevicius@xxxxxxxxx>
Date: Thu, 28 May 2009 01:32:31 +0200
Hey list,

this is more of a general question about XSLT workflow than a specific
task or technique.

I'm helping out with XML at one publishing house. They are using ODF
(OpenDocument) as a manuscript source format (received from customers)
and XPP (XML Professional Publisher) as their internal format, on
which they later add some specific XPP markup to style books (and
later produce PDFs).

The problem is, that the two formats are not interchangeable, and this
breaks the whole workflow. They have a filter to import ODF to XPP
(the easy part). They also have another to convert back from XPP to
ODF, but it discards XPP processing instructions that were added while
styling. That means a roundtrip is not possible, because the existing
inline XPP styling would be lost.

However both file formats are necessary, because they are using ODF to
transform to XHTML and ePub, and XPP to produce PDF.
The files also need to be up-to-date and synchronized, which currently
is not the case. If the customer wants to make changes to the
manuscript, it cannot be reimported. On the other hand, corrections
can also be made in XPP.

The transformations are currently done using Perl, but I'm thinking
about converting the whole workflow to XSLT.

I see XPP as the source of the problem, because of its inline styling
and use of processing instructions. I don't know the system so well,
but maybe it would be possible to somehow separate content from
presentation there, in a similar fashion as with XHTML and CSS. Then
it might be possible to do ODF-XPP-ODF conversions on the content
only, while the styling would remain in XPP. But that would also mean
changing the way they style, and would need to base it more on IDs and
classes, which I'm not sure if it is possible to retain (and prevent
from removing) in OpenOffice.

And taking it one step further, if that would be solved, the customer
and the publisher would still need to work on the same ODF file
sometimes. Maybe some version control could help? Or is it crazy to
think about manuscripts as source code?

Any experience/advice with something like that? Appreciated in advanced.


Current Thread