generic XSLT for EAD
Failed to load latest commit information.
css tweaked the oac css Jan 17, 2012
python paramaterize html template and pair down Aug 26, 2013
xslt paramaterize html template and pair down Aug 27, 2013 broken link Jan 31, 2012
requirements.txt add requirements.txt Aug 26, 2013


tested with libxml2's xsltproc and python lxml

xsltproc -o html_file.html xslt/ead_entry.xslt ead_file.xml python/ ead-test-col ead-test-col-html

This set of XSLT 1.0 + EXSLT stylesheets should turn any EAD into HTML

  • same XSLT works with EAD 2002 Schema and EAD 2002 DTD finding aids.
  • same XSLT works with nested __<c>__s and numbered __<c0x>__s

Example HTML ↢ EAD

8 XSLT files and one HTML template

in xslt directory

  • ead_entry.xslt pulls it all together; interfaces ead.html.xslt to template.xhtml
  • ead.html.xsl has the main EAD to HTML logic mode="ead"
  • template.xhtml HTML template file for output; apply-templates runs on this
  • at2oac.xsl converts EAD schema (such as from AT) to EAD DTD mode="at2oac"
  • table.common.xsl CALS table to HTML from Norm Walsh mode="ead"
  • table.html.xsl select options for table.common.xsl mode="ead"
  • geocodes.xsl provides function to expand geocodes to text
  • langcodes.xsl provides function to expand langcodes to text
  • supplied-labels-headings.xsl provides function to supply for missing headings and labels


xmlns:exsl=""            extension-element-prefixes="exsl"

xmlns:func=""         extension-element-prefixes="func"


Comes with a utility to generate HTML files from EAD files in batch by directory.

usage: [-h] indir outdir

run xsltproc on a directory

positional arguments:
  indir       input directory of EAD
  outdir      output directory of HTML

optional arguments:
  -h, --help  show this help message and exit

See also

EAD Tag Use

EAD Noun-Obscured Specimen Collection