Inline Processing Instructions in LEMDO

This documentation lists and explains a number of different custom processing instructions used by the LEMDO project to include content from elsewhere, and to trigger the automatic generation of content.
Processing for these PIs is specified in two places: first in the documentation_inclusion_master.xsl file, which handles the majority of cases since they occur mainly in documentation; but also in the xml_original_templates.xsl module, to handle any cases in which a PI may be used in a page which is not part of the documentation. These templates should be updated in a synchronized way.

Simple Inclusions

LEMDO prefers the use of processing instructions for the purposes of inclusion over other methods such as XInclude because it is more flexible; processing for XPointers in XInclude instructions is not widely supported, and some processors and validators may act upon XInclude instructions when they’re not intended to be processed. There are two PI-based inclusions in LEMDO:

lemdo-include

<?lemdo-include href="doc:learn_encodeLinks_intro"?>
This lemdo-include PI is used in the lemdo.odd file to assemble the separate documentation files found in the data/documentation folder into a single structured document before that is processed into the documentation web pages. This PI should not be used outside of the ODD file. See Documentation and the ODD File for more information.

lemdo-import

<?lemdo-import ref="doc:emdCAMP3_edition"?>
This lemdo-import PI is used in an anthology XML file to include an edition in the anthology. See LEMDO’s Build Process for more information.

Generating Content

Another set of processing instructions provides a way to generate content in an output page based on metadata or data elsewhere in the project. These are three examples:

category-listing

<?category-listing ref="emeeTheatre"?>
This tells the processor to find the <category> element in TAXO1 which whose @xml:id="emeeTheatre", and then to collect all documents which have <catRef> elements whose @target points at that category or any of its descendant categories. It then creates a list of links to those documents (a <list> element whose <item> s contain <ref> elements). This makes it possible to include an automatically-generated list of all the documents in a category wherever you need one.

taxonomy-table

<?taxonomy-table ref="emdAudiences"?>
This tells the processor to find the <taxonomy> element in TAXO1 which whose @xml:id="emdAudiences", and process it to create a TEI <table> element laying out all the categories and their definitions. That table is later processed into an HTML table in the documentation page for the site.

charDecl-table

<?charDecl-table ref="characters"?>
This tells the build process to generate a table from from character declarations ( <charDecl> elements) in TAXO1.

listPrefixDef-table

<?listPrefixDef-table ref="global_listPrefixDef"?>
This generates a table from a <listPrefixDef> , also in TAXO1.

roleList

<?roleList ref="emd1HW_M"?>
This generates a copy of any role lists encoded in the header of a text, in the form of <listPerson type="castlist"> elements. This can be used to create a separate page which incorporates copies of any role lists along with an introduction and comments, as a distinct component of an edition. Role lists are also available in the interface of the text which contains them, but it is often useful to provide more information as part of an edition.

msDesc

<?msDesc ref="emdDouai_AYL"?>
This generates a copy of any manuscript description ( <msDesc> ) encoded in the header of a text. This can be used to create a separate page which incorporates copies of the msDesc along with an introduction and comments, as a distinct component of an edition.

Prosopography

Janelle Jenstad

Janelle Jenstad is a Professor of English at the University of Victoria, Director of The Map of Early Modern London, and Director of Linked Early Modern Drama Online. With Jennifer Roberts-Smith and Mark Kaethler, she co-edited Shakespeare’s Language in Digital Media: Old Words, New Tools (Routledge). She has edited John Stow’s A Survey of London (1598 text) for MoEML and is currently editing The Merchant of Venice (with Stephen Wittek) and Heywood’s 2 If You Know Not Me You Know Nobody for DRE. Her articles have appeared in Digital Humanities Quarterly, Elizabethan Theatre, Early Modern Literary Studies, Shakespeare Bulletin, Renaissance and Reformation, and The Journal of Medieval and Early Modern Studies. She contributed chapters to Approaches to Teaching Othello (MLA); Teaching Early Modern Literature from the Archives (MLA); Institutional Culture in Early Modern England (Brill); Shakespeare, Language, and the Stage (Arden); Performing Maternity in Early Modern England (Ashgate); New Directions in the Geohumanities (Routledge); Early Modern Studies and the Digital Turn (Iter); Placing Names: Enriching and Integrating Gazetteers (Indiana); Making Things and Drawing Boundaries (Minnesota); Rethinking Shakespeare Source Study: Audiences, Authors, and Digital Technologies (Routledge); and Civic Performance: Pageantry and Entertainments in Early Modern London (Routledge). For more details, see janellejenstad.com.

Joey Takeda

Joey Takeda is LEMDO’s Consulting Programmer and Designer, a role he assumed in 2020 after three years as the Lead Developer on LEMDO.

Mahayla Galliford

Project manager, 2025-present; research assistant, 2021-present. Mahayla Galliford (she/her) graduated with a BA (Hons with distinction) from the University of Victoria in 2024. Mahayla’s undergraduate research explored early modern stage directions and civic water pageantry. Mahayla continues her studies through UVic’s English MA program and her SSHRC-funded thesis project focuses on editing and encoding girls’ manuscripts, specifically Lady Rachel Fane’s dramatic entertainments, in collaboration with LEMDO.

Martin Holmes

Martin Holmes has worked as a developer in the UVic’s Humanities Computing and Media Centre for over two decades, and has been involved with dozens of Digital Humanities projects. He has served on the TEI Technical Council and as Managing Editor of the Journal of the TEI. He took over from Joey Takeda as lead developer on LEMDO in 2020. He is a collaborator on the SSHRC Partnership Grant led by Janelle Jenstad.

Navarra Houldin

Training and Documentation Lead 2025–present. LEMDO project manager 2022–2025. Textual remediator 2021–present. Navarra Houldin (they/them) completed their BA with a major in history and minor in Spanish at the University of Victoria in 2022. Their primary research was on gender and sexuality in early modern Europe and Latin America. They are continuing their education through an MA program in Gender and Social Justice Studies at the University of Alberta where they will specialize in Digital Humanities.

Tracey El Hajj

Junior Programmer 2019–2020. Research Associate 2020–2021. Tracey received her PhD from the Department of English at the University of Victoria in the field of Science and Technology Studies. Her research focuses on the algorhythmics of networked communications. She was a 2019–2020 President’s Fellow in Research-Enriched Teaching at UVic, where she taught an advanced course on Artificial Intelligence and Everyday Life. Tracey was also a member of the Map of Early Modern London team, between 2018 and 2021. Between 2020 and 2021, she was a fellow in residence at the Praxis Studio for Comparative Media Studies, where she investigated the relationships between artificial intelligence, creativity, health, and justice. As of July 2021, Tracey has moved into the alt-ac world for a term position, while also teaching in the English Department at the University of Victoria.

Orgography

LEMDO Team (LEMD1)

The LEMDO Team is based at the University of Victoria and normally comprises the project director, the lead developer, project manager, junior developers(s), remediators, encoders, and remediating editors.

Metadata