The top of the XML tree for William Blake, An Island in the Moon, Copy 1 (1784–85), page 1,

One of my responsibilities as an Andrew W. Mellon Digital Humanities Fellow at the University of Rochester is contributing to an established digital humanities project. For that reason, I am the newest member of the Blake Archive North Division team. While I do not have a background in William Blake’s works or those of his contemporaries, I study U.S. religious and cultural history, so Blake’s talk of a unity in religion and his flirtation with Swedenborg’s tiered heaven echo what I’ve read in American sources. Blake’s visions are wild and, unlike many religious innovators, he actually drew and painted them.

The Blake Archive loosely uses the Text Encoding Initiative (TEI) standards, based in XML (eXtensible Markup Language), to represent Blake’s written works in a digital environment. I worked with TEI five years ago, when I marked up ten letters for Prof. Thomas Slaughter’s Seward Family Digital Archive course at the U of R. Unfortunately, I didn’t save any of the tutorials or lists of TEI terminology that we used. Joining the Blake Archive means that I have to relearn and build on my TEI skills.

The benefit of having done TEI before means that I know what a finished TEI webpage can look like, so I know what I’m building toward. I also know that marking up a document can be fun; layering start and end tags like a palindrome is like a puzzle. Solve the puzzle, and the text will have all of its physical-edition information. Get it wrong, and the text won’t look right.

BAND project coordinator Eric Loy recommended that I start my XML training with David J. Birnbaum’s “What is XML and why should humanists care? An even gentler introduction to XML” (2015). Birnbaum explains how XML represents documents as trees, with roots (a document), nodes (supporting sections), elements (the details for each node), and attributes (the details for each element). The utility of XML is that it can recreate the features of a physical text, instead of simply describing the text, so that less data is lost in the translation from physical to digital. Through start tags, end tags, and entity references for special characters, the user tells the computer how, and for how long, to render text in a certain way. XML must be paired with HTML, XSLT (eXtensible Style Sheet Language Transformations), CSS, or other computer languages to form a complete webpage. If XML contains the textual information, then the other languages are necessary for the page’s background, font, alignment, spacing, etc.

<> This is a tag. It is your friend.

A portion of the XML tree for William Blake, An Island in the Moon, Copy 1 (1784–85), page 1, This screenshot gives a sense of the formatting tags for each line of text.

Eric’s next assignment for me was to dig into the technical side of XML. I turned to coding primer W3 Schools, having bookmarked the site in my browser many moons ago for the day when I would have time to learn coding. (Such a day has yet to arrive.) W3 uses accessible language and numerous examples to walk users through computing. The W3 XML curriculum builds on Birnbaum’s article, detailing how XML can be customized for each project through the creation of new tags, and how XML must be paired with other software. From there, W3 gets into topics such as the formatting of tags, how to save comments in an XML document, and the need to validate XML against a set of definitions to see if the tag syntax contains errors. The toolbar on W3’s homepage, however, suggests that users should begin with basic HTML and CSS, and work up to topics such as XML. As a result of not doing these other tutorials before XML, I had to Google terms as I went along, and the sections on more sophisticated XML tools — SVG for inserting 2D images, XLink for hyperlinks, and XQuery for running searches in the document — were confusing.

Tutorials like W3 can only get you so far. As with all digital tools, you learn best by doing. I’ll likely figure out TEI and its XML underpinnings when I sit down with a Blake document that has been marked up in TEI, review the tags line by line, and compare the markup with the final webpage. I’ll probably need a long-term Blake volunteer next to me, singing a song of experience to this innocent coder. 

— Dan Gorman