Appendix A. References to the software used

This appendix lists all the software used. The entire suite is available here

dir2xml.py. Recursively generates an XML file listing all the jpeg images

fullnames.xsl. An xslt stylesheet to extract all names out of persons.xml to generate fullnames.xml

build. A shell script to transform all source xml files into the required html files

A shell script to create temporary html files, one for each image in a directory, to help identify the people in it. Makes use of identify.jq.js

identify.jq.js. A javascript file which aids in generating XML metadata for each photograph (title, peoples names and their position in the photo). It is used from identify.html and makes use of jQuery, a really really useful javascript library (thanks for the pointer Norm)

jquery.js. A javascript library.

names.js. The javascript file used when looking at a file. Shows the name of individuals when you hover the mouse over a person that has been identified. Writes the name to a p tag beneath the photograph too.

identify.html. An HTML file which calles up the javascript and includes an image. There for you to practice using the javascript without messing up your own files. Enjoy.

whois.html, a test file showing the resulting output

path.py. Python script imported by dir2xml.py

pawson.css. Unused, but a css file linked from the resulting html output, if you want to use it.

persons2.xsl. An xslt stylesheet, generates the html output file persons.html, from persons.xml

makeEmptynames.xsl. A stylesheet which generates a list of 'brief' names and creates a blank full name attribute for you to fill in. The output xml file links brief names to full ones.

persons.xsl. Searches through the pictures xml file (valid to pics.rng schema - pawson.xml in the examples here) to extract a list of people, in xml format, nominally named persons.xml. Makes use of the mapping from short names to fullnames (fullnames.xml in the examples)

pics2html2.xsl Converts the main input file (pawson.xml in the examples) into an html file ready for viewing. Makes use of sz.xml in each directory holding images. See sizeXML.sh

pics.rng. The schema to which the main xml file (pawson.xml file in the examples) must be valid.

resize.py. A python script used to calculate an 'appropriate' size for images based on your setup. Call it from the command line. $python resize.py width height. Returns a tuple [x,y] with suggested max size. Adjust xmax, ymax within the program if your preferred max size (pixels) is different from 1800 wide, 1400 high.

sizeXML.sh. A shell script that processes all the files in the current directory, writing an output file sz.xml which lists the filename and the image size. Format is

<sz>
  <f nm='filename.jpg' width='xxx' height='yyy' />
...
</sz>