Documentation and the ODD File

Introduction

This file explains the relationship between documentation files and the projectʼs ODD file. It provides a quick and general overview of the files involved in the corresponding processes, and then describes the processes in general, without too much attention to the technical details.

Relevant Code Files

Below is a list of code files stored in lemdo/code/site/xsl/documentation, responsible for generating and processing documentation files, along with their role in the process.
documentation_inclusion_master.xsl: Adds the content from the individual documentation files rooted on divs into the ODD file.
documentation_to_documentation_chapters_master.xsl: Creates the chapter as determined by the corresponding <div> element and the value of its @xml:id attribute in the body of ODD. The chapter contains sections.
documentation_to_documentation_sections_master.xsl: Creates the sections by adding them via a process of ?lemdo-include that specifies the names of the individual files (stored in data/documentation).
documentation_to_elements_master.xsl: Extracts the elements ( <div> [ @type="refdoc"]) in lemdo.lite.odd into their separate files. In the odd file we add element abstracts to the elementSpec as needed. These are added in <remark> elements, unless we want to replace the TEI desc, then we add <desc> elements with @mode attribute whose value is "replace".
lemdo_extract_egXMLs_master.xsl
lemdo_extract_rules.xsl: Extracts the rules from the schema that is written and developed in the ODD file

Processes

We write our documentation in files that are rooted on <div> elements and we store them in the lemdo/data/documentation directory. These files are then included in the ODD file via processing instructions and a series of XSL transformations. Every chapter is a <div> in the body of the ODD file, and every <div> includes a series of processing instructions that are later processed into the sections (pages) of a certain chapter. The sections are the files from data/documentation. The chapters are generated programmatically, as instructed per the ODD file. This process happens through the XSL files as described above.
The documentation_to_documentation_chapters_master.xsl file is also responsible for creating the documentation index, from the chapter <div> s as they are laid out in the lemdo.lite.odd stage of the documentation creation process. While the chapter titles (Chapter 1. Quickstart Guidelines, etc.) are determined in the odd file, the section headers are determined in the <head> child element of the root <div> element in the corresponding documentation file.
Please see for detailed guidelines. We write the documentation with a root <div> element so that we can append the file content to the LEMDO ODD file as we generate it. From the ODD file we then grab corresponding <div> s and create the proper structure for them, adding header and body elements. This process begins with the documentation_inclusion_master.xsl, which includes the <div> elements in the LEMDO ODD file, as instructed by a series of processing instructions. The documentation_to_documentation_chapters_master.xsl and documentation_to_documentation_sections_master.xsl files process the documentation <div> elements from the LEMDO TEI Lite ODD file and make them into their own standalone files, in XML as well as HTML.
All of the above happens automatically as part of the build process. However, you may want to test your documentation locally, in XML or HTML. To build XML files, go to code/build_documentation_master.xsl, and press the play button. The files are outputted in lemdo/chapters_out and lemdo/sections_out. To locally build your documentation files into html files, open Terminal and type the following command: ant createDocumentation. You can find more on local builds in Running Builds.

Adding Element Notes and Replacing TEI Abstracts

In LEMDO, element documentation is generated directly as imported from the TEI P5 Guidelines. Given the nature of the project and the specialized uses for TEI elements, LEMDO adds notes and modifies TEI abstracts where necessary. This process is accomplished in the <elementSpec> elements of the corresponding element in the ODD file. To add a note to the existing element structure and descriptions, follow these steps:
Find the element you want to change by searching for it using command + F (for Mac users) or Ctrl + F (For Windows and Linux users)
Add a @mode attribute with the value "change"
Add the element you want to replace
To replace the <gloss> or <desc> elements and their content, add the element you want to replace and give it a @mode attribute and the value "change"
Write your content between the opening and closing tags
Note that the <gloss> and <desc> elements and their original TEI content are not present in the ODD file, they are automatically imported from the TEI guidelines at processing time. If you would like to add a note to the existing TEI descriptions, follow these steps:
In <elementSpec> , add a <remarks> element with a @mode attribute and a value "add"
Write your note in <p> elements inside of <remarks>
Your note will appear in the table of specs on the elementʼs page on the LEMDO site, with the label Note.

Prosopography

Isabella Seales

Isabella Seales is a fourth year undergraduate completing her Bachelor of Arts in English at the University of Victoria. She has a special interest in Renaissance and Metaphysical Literature. She is assisting Dr. Jenstad with the MoEML Mayoral Shows anthology as part of the Undergraduate Student Research Award program.

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.

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

Project manager 2022–present. Textual remediator 2021–present. Navarra Houldin (they/them) completed their BA in History and Spanish at the University of Victoria in 2022. During their degree, they worked as a teaching assistant with the University of Victoriaʼs Department of Hispanic and Italian Studies. Their primary research was on gender and sexuality in early modern Europe and Latin America.

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