TEI 2019

What is text, really? TEI and beyond


All WorkshopsTEI

Minimalist TEI Publishing with CETEIcean (/sɪˈti:ʃn/)

Raffaele Viglianti, Hugh Cayless

Keywords: publishing, processing, static sites, minimal computing
Permalink: https://gams.uni-graz.at/o:tei2019.162

This half-day workshop will introduce CETEIcean (pronounced /sɪˈti:ʃn/, similarly to the word "cetacean"), a JavaScript library for displaying TEI in a web browser. CETEIcean’s key feature is the isomorphic transformation of TEI as HTML by registering modified TEI elements with the browser using Custom Elements. [https://html.spec.whatwg.org/multipage/custom-elements.html#custom-elements.] This is in contrast to typical transformations from TEI to HTML that stick with the semantically poor element set of HTML. Loading a TEI document with CETEIcean will make it fully usable by the browser: TEI elements can be styled with CSS and manipulated for interaction with JavaScript just like HTML, thus avoiding XSLT transformation steps (see Gil 2015Cayless and Viglianti 2018). CETEIcean’s approach ows a lot to TEI Boilerplate (http://teiboilerplate.org/), but it is based on web standards and is more flexible. It does not require an in-browser XSLT step, nor any modification to the source XML; TEI content can be loaded in the browser via a JavaScript fetch operation, or via server-side processing.

This workshop will also introduce inimal computing principles, particularly as pioneered by the GO:DH Minimal Computing Working Group. [http://go-dh.github.io/mincomp.] This approach fosters a "reconnecting with our knowledge production" in order to think critically about the question "what do we need?" (Gil 2015). Identifying the minimal technical stack for running a TEI project can help content creators to both reach their goals quickly and effectively, but more importantly they might be able to do so even when there are unwanted constraints in the resources they can access. Minimal computing principles argue that this can be an essential instrument in giving voice to underfunded and underrepresented groups.

Many scholarly publications powered by the TEI rely on server side infrastructure for publication, typically by leveraging XML technologies such as XSLT and XQuery (via XML databases). Adopting a minimal computing stance and CETEIcean may reduce if not remove reliance on these technologies; yet the capability, flexibility, and established practice of these tools is undeniable, so why use a different approach?

  • Web technologies for web publication. XSLT/XQuery are not sufficient, by themselves, to create a digital publication on the web, they are simply a means to transforming TEI into HTML. But to create a fully featured publication on the web, HTML needs to be supported by CSS for styling and JavaScript for user interaction. What if we could skip the transformation part and focus on the web technologies needed for a digital publication?
  • Getting started faster. By focusing on web technologies, new TEI users will not have to learn XSLT as well as the TEI to publish their first document.
  • Semantics. Converting TEI to HTML is the most common and most practical way of publishing TEI texts on the web, but HTML lacks what TEI has: a very well-considered and mature set of semantic tags for encoding texts. When converting TEI to HTML the semantic distinctions in the markup are often lost in favor of typographic distinctions in the display. In other words, the data model represented in the TEI fails to carry over to the online version.
  • Preservation. XSLT/XQuery transformations are often performed on the fly by server-side technology to provide data to a front-end application (written in HTML, CSS, and JavaScript). By using CETEIcean, TEI can be built into 'static sites' that do not require server-side computation, making it easier to preserve the application into the future.
Syllabus

This half-day workshop will cover the following topics.

  • Introduction to Minimal Computing principles and discussion.
  • Introduction to CETEIcean and motivations.
  • Using CETEIcean to build a static site from a provided HTML template. We will discuss the structure of the template and how to change it for future use.
  • Using CSS to style CETEIcean TEI. No previous knowledge of CSS required.
  • Adding user interactivity to your TEI via CSS and simple JavaScript. We will discuss a number of examples and address questions/requests from the attendees.
  • Publishing online. We will look at simple ways of publishing a CETEIcean-powered site online for free via GitHub.

Tutors

Raffaele Viglianti is a Research Programmer at the Maryland Institute for Technology in the Humanities (MITH) at the University of Maryland, where he works on a number of digital humanities projects and is the Technical Editor for the Shelley-Godwin Archive. Raffaele’s research revolves around digital editions and textual scholarship, with a focus on editions of music scores. Raffaele currently serves on the Technical Council of the Text Encoding Initiative.

Hugh Cayless has over a decade of software engineering expertise in both academic and industrial settings. He also holds a Ph.D. in Classics and a Master’s in Information Science. He is one of the founders of the EpiDoc collaborative and currently serves on the Technical Council of the Text Encoding Initiative.

Bibliography

Cayless, Hugh, and Raffaele Viglianti (2018). CETEIcean: TEI in the Browser. Presented at Balisage: The Markup Conference 2018, Washington, DC, July 31 - August 3, 2018. In Proceedings of Balisage: The Markup Conference 2018. Balisage Series on Markup Technologies, vol. 21 (2018). https://doi.org/10.4242/BalisageVol21.Cayless01.

Gil, Alex: The User, the Learner and the Machines We Make (2015). Blog post at: http://go-dh.github.io/mincomp/thoughts/2015/05/21/user-vs-learner/