XML Résumé Library

The XML Résumé Library is an XML Document Type Definition (DTD) and Extensible Stylesheet Language (XSL) file set for declaration, B2B exchange, and presentation of résumés.

This library is copyrighted, © 2000-2002 by Sean Kelly. See the copying conditions, license, and disclaimer.

This is version 1.3.2. For the latest version, please visit the website.

What's Included

The XML Résumé Library includes the following:

In addition, there are two example résumés and a Makefile that automates production of HTML, plain text, and PDF output from an XML file using the Apache XML Project tools and/or RenderX's XEP. See the examples directory.

The following documents are available:

Requirements

The XML Résumé Library uses the XML 1.0 DTD syntax. The XSL files are version 1.0. We have tested these files with the Apache XML Project's tools:

In addition, the library works quite well with RenderX's XEP Formatting Objects processor.

Creating Résumés Using the DTD

To create your own résumés using the XML Résumé DTD, use the following document type declaration in your XML file:

<!DOCTYPE resume PUBLIC "-//Sean Kelly//DTD Resume 1.3.2//EN"
                        "http://xmlresume.sourceforge.net/dtd/resume.dtd">

If you'd rather refer to a local copy of the DTD, change the system-part of the DOCTYPE to refer to it with a file URL, for example:

<!DOCTYPE resume PUBLIC "-//Sean Kelly//DTD Resume 1.3.2//EN"
                        "file:/usr/local/share/xml/dtd/resume.dtd">

Note that the iso-lat1.ent file is referenced by the resume.dtd file, so if you move one, be sure you move the other, too.

For an idea of how the tags work, see the comments in the resume.dtd file and the example résumé files.

Formatting Résumés

You can format the XML resume into HTML for online viewing, into XSL Formatting Objects (FO) for rendering into PDF for printing, or into plain text.

Creating an HTML Presentation

To create an HTML presentation of your résumé, run your XSLT engine on the XML file containing the résumé along with the one of the HTML stylesheet files:

The stylesheet will turn your XML résumé into HTML using appropriate phrasing and terminology.

Customizing the HTML Output

The XSL stylesheet generates generic HTML output and abuses no special HTML tricks to create special formatting effects. You can use Cascading Stylesheets (CSS) to customize the output to your tastes. By default, the HTML output referencs a cascading stylesheet named resume.css. Create this file and publish it along with the HTML output to your web server to customize the output. You can find two sample CSS files under the css directory.

To specify a different stylesheet reference than resume.css, give your XSLT engine a value for the css.href parameter (how you do so depends on your XSLT engine).

The following table lists the element classes used in the HTML output for which you can specify styles.

Class Where Used
academicsHeadingOn the h2 of the heading for your academics.
bookTitleOn the cite used to refer to a title of a book in one of your publications.
citationOn all HTML cite's generated from all XML citation's.
contactHeadingOn the h2 of the heading for the contact information.
copyrightOn the address for copyright information.
degreeOn the li for a single degree.
degreesOn the ul for the list of degrees you hold.
descriptionAround descriptions of items.
emphasisOn all HTML strong's generated from all XML emphasis's.
employerAround all employer names.
historyHeadingOn the h2 of the heading for the employment history.
jobOn the p of the paragraph generating a single employer entry.
jobTitleOn the span enclosing the title you held at job.
levelOn the acronym for the level attained in a degree.
membershipsHeadingOn the h2 for the memberships heading.
membershipTitleOn the position title in a membership.
miscHeadingOn the h2 for the miscellany heading.
nameHeadingAround your name at the top of the résumé.
noteOn the div used as the admonition below the list of held degrees.
objectiveHeadingOn the h2 of the heading for the professional objective.
organizationOn the name of the organization of which you're a member.
paraOn all HTML p's generated from all XML para's.
pubOn a single publication.
pubsOn the ul for the list of publications.
pubsHeadingOn the h2 heading the publications.
resumeOn the body of the entire HTML output.
skillOn the li for a single skill.
skillareaHeadingOn the h2 for a skill area.
skillsOn the ul for a list of skills.
skillsetTitleOn the h3 for a title of a set of skills.
urlAOn the a of a generated hyperlink.
urlCodeOn code sections used to mark up URLs.

Creating a PDF Presentation

To create a PDF presentation, follows these steps:

  1. Run your XSLT engine on the résumé XML file along with one of the FO stylesheet files:

    This will transform your XML file into another XML file that defines formatting objects (usually named with a .fo extension).

  2. Run the formatting object output through your FO engine to render it to PDF.

Creating a Plain Text Presentation

To create a plain text presentation, run your XSLT engine on the résumé XML file and one of the following:

Automating Formatting

To automate formatting a résumé to all three output formats, consider using the Makefile. It uses the Java versions of the Apache XML tools Xerces/Xalan/FOP to create both web and print presentations of a résumé. Adjust the RESUME value inthe Makefile to point to the file name of the résumeé you want to format, without the .xml extension.

Configurable Parameters

Several parameters are available to control how a résumé is formatted. They are: