The EOA document model¶
The schema, documented and maintained in https://github.molgen.mpg.de/EditionOpenAccess/eoa-publication-model/blob/master/schema/resource/eoa-tei-strict.rnc is the central point for what is allowed and what not in the whole EOA infrastructure with regards to the publications. The model itself has its roots in the original specification of EOATeX and has been codified as a Relax NG schema for TEI documents.
Making changes to the schema¶
New publications might make it necessary to expand the model in one way or another. Recent additions were as big as the inclusion of Hyperimage (https://mprl-series.mpg.de/studies/12/) linkings between original text and its translation (https://edition-open-sources.org/sources/13) or adding an asterisk to separate sections in a chapter, rather than using section titles (https://mprl-series.mpg.de/studies/14). These changes need to be carried through the whole toolchain, because they need to be integrated into the whole document conversion workflow.
Example: asterisk as section marker¶
Exemplified by the commits in the source code this shows how the changes to schema and workflow are done:
Change the schema¶
This commit (https://github.molgen.mpg.de/EditionOpenAccess/eoa-publication-model/commit/03947a5594dfba1b224dbbd0a6d4b4ae3b3f2182) shows how the schema is expanded. Since the divider can occur in either chapter or section, it needs to be inserted in those places.
CSS in XXE¶
In order to make the element visible in XMLmind XML Editor, the css was adapted: https://github.molgen.mpg.de/EditionOpenAccess/eoa-xmlmind/commit/abd165945fb3c5de385f12c0d3e311b412e14b76
TEI to other formats¶
As a next step, the three different converters out of TEI XML need to be adjusted.
TEI to IMXML¶
The divider is converted to a paragraph for the other formats and assigned an attribute.
The IMXML (Intermediate XML) is then picked up by the scripts imxml2django
and imxml2epub
for further processing. See IMXML to other formats.
TEI to HTML¶
This code is as of now (beginning of March 2020) incomplete, since the XSL is rather difficult.
IMXML to other formats¶
IMXML serves as the intermediate step to other formats: Ingest into EOAPP 1.5 as well as conversion to EPUB.
IMXML to Django¶
The following commit shows how the paragraph is treated here
See section Django below for modifications on the Django platform.
IMXML to EPUB¶
Changes were necessary in imxml2epub.py
as well as the epub CSS files:
Django¶
Since there was no easy way to handle the new feature just by extending a template, the new feature was added to the eoapublication
model. See Changing Models for the details.
More to come¶
This change has not yet been propagated to the EOATeX workflow. That is, there is as of now no code to go into the TeX and XML preambel to cater for the conversion from EOATeX via tralics to XML.