William Godwin's Diary

Technical Documentation


The William Godwin Diary project transcribed and encoded using the guidelines of the Text Encoding Initiative (TEI), an XML mark-up standard specifically geared for the representation of texts in digital format. The project used a customised schema conforming to the TEI P5 Guidelines to validate its TEI P5 XML markup that it uses for the diary and people files, and canonicalised this back to pure TEI P5 XML on publication. The encoding not only classifies diary days and the structure of the diary, but marks interpretative spans such as people's names, meetings, meals, events, literary activities, etc. Those wishing to see the underlying XML markup of the diary files are able to do so by clicking the XML tag on each page of transcribed text. The underlying XML diary files are also available for download in a zip file for those interested. There are also some basic statistics available.


The website uses a number of technologies. Although all pages are originally XML, they are transformed to HTML by custom XSLT stylesheets using Apache’s Cocoon. The XML files are stored in an eXist native XML database and queried using XQuery.

Certain aspects will not function as expected without Javascript. The various tables of people, events, reading, writing, etc. are viewable as HTML tables but once loaded use a JQuery library called DataTables to allow easy paging and filtering of the table data. On pages about individual people there is a bar graph charting the number of appearances of that individual in the diary which uses another JQuery plug-in called Flot. From any individual person page you can get to a meals and meetings browser which uses Simile Exhibit to provide a faceted browsing (as a table or timeline) of the instances of meals or meetings with a particular individual. None of these alternative methods of viewing the data will function if javascript is turned off, and may also have problems in some non-standards-compliant web browsers. Generally we recommend Firefox or Google Chrome / Chromium web browsers, however, every attempt has been made to make the site function in all modern web browsers, including mobiles.

Cookies and Privacy

This site makes very minor use of web browser cookies in three aspects. Firstly to maintain any filtering or setting changes done on particular output tables (using the dataTables jQuery plugin). The second is on the pages showing high resolutions scans of William Godwin's diary. These use the Google Maps API to provide the tiled panning and zooming of the images and use of this requires some basic cookies. The final use of cookies is from use of Google Analytics to analyse web traffic. This is used to record basic anonymised information about pages loaded for statistical reporting purposes. The William Godwin Diary project takes your privacy seriously and does not collect any specific personal information except that which is needed for use of the site or statistical review of general user behaviour. If you object to the use of these cookies, please disable cookies in your browser.

Ongoing Technical Development

Although the site is now open for public use, there are some technical refinements deemed as not being barriers to release which are still to be made. Generally these have arisen from the feedback during the website’s beta launch period. These will be made as time allows and this technical documentation will also be expanded.