LombardPress Print conversion scripts
This repository contains a xslt package for conversion of LombardPress Schema compliant TEI XML transcriptions to TeX format.
Packaging XSLT scripts
Anyone can create custom xslt-latex packages that can be used for this purpose. The current repository is just an example of how it can be done.
This directory shows the expected structure of a package. It should be divided
in folders named for the version of the XML schema they are designed for, and
each folder should contain a file called critical.xslt or diplomatic.xslt (but
may also just contain either of those). It is strongly adviced also to include a
default contained a script that can be used as a fallback. It
is probably a good idea to make this a copy of the highest supported version in
So for example, a package that supports LBP schema versions 0.0.0 and 1.0.0 would have this structure:
- 0.0.0 - critical.xslt - diplomatic.xslt - 1.0.0 - critical.xslt - diplomatic.xslt - default - critical.xslt # identical with 1.0.0/critical.xslt - diplomatic.xslt # identical with 1.0.0/diplomatic.xslt - README.md
It is up to the package creator to decide how many different version of the LBP schema should be supported. Obviously the higher version coverage a package has, the more useful will it be to other editors than the author herself.
By ensuring that all packages have the same basic structure, it is easy to share different conversion scripts across environments. It will also ensure that different programmatic publication and processing workflows can make some basic assumptions about the XSLT packages that are used, irrespective of where the package comes from.
Representation and conversion
Structural units and numbering
Important structural numbers should be computed and available for reference and cross-reference that can be rendered in the resulting PDF.
The basic principle is to use
<div>s inside the main containing
<div> below that indicate a structural group.
A structural type is given in the
@ana attribute. The following are
rationes-principalesindicate that the
divcontains rationes principales.
- Any subsequent
pwill be considered a single and complete ratio, unless it is contained in another
divor it has the
@anaattribute set to
- Groups of
ps contained by another
divwill together constitute a ratio.
- Sections of rationes will be numbered sequentially such that each
div[@ana='rationes-principales']gets an incremented sub-number (e.g. "1.1", "1.2", "1.3" etc.).
structure-headwill not get a sub-number.
Of course, pull requests or issue reports with this package are very welcome in the issue tracker.
If your produce your own package, please let is know and we will create a package registry for public reference.