One of the blessings of living in Austin — and it’s important to remember them this time of year when you feel your eyeballs melting out when you step into mid-afternoon sun — is its legacy of work in machine learning and AI. Here we have a very active interest group, Semantic Web Austin run by Juan Sequeda, who has, over the last year or so, brought some very visible researchers in Semantic Web to town to teach hands-on tutorials.
If the concept of “Semantic Web” is foreign to you, let me try to capture
its essence succinctly. Presently one can conceive of the Web as a web of
documents: presentation and data are represented as web pages. My web document
points to Ryan’s document and Lauren’s document. Now imagine a résumé on the
Web. This résumé is a series of facts (and gross exaggerations
), these
have nothing per se to do with the document construct you learn from
books called a résumé — the thing with a name at the top, horizontal rules under section headings, etc. that, purportedly, employers like to read. Non-human examiners of my résumé web page
care only about the facts, not the prettiness of the artifact. Thus, the Semantic Web is one in which meaningful
data is presented (as a résumé) for humans, but also presented (as the
essential facts of the résumé) for machines such that relationships between the various data can be utilized by semantically-aware web applications.
Both Tom Heath and Peter Mika gave great presentations full of ideas and hands-on activities to the Semantic Web Austin group. From Tom I learned the basics of RDF, the language for enumerating data-facts to machines, and how to build a basic RDF document. Peter showed us RDFa and illustrated that HTML and RDF data can be written into the same document. That was a “whoa” moment for me.
Because I hadn’t had a chance to integrate these lessons from the SemWeb Austin sessions, my understanding was a bit shaky. The only way, I decided, to actually figure this out was to find a project that would give me opportunity to work with these respective ideas.
About this time my yearly review concluded and I was about to update my résumé, an activity I exhort you to do after reviews. Yet résumé-writing had always irritated me: writing a document and then trying to port it to various formats, and then Mithras help you if you need to “skew” these documents to particular employers quickly.
Thus I decided I needed to write my résumé in some sort of meta-language so that I could publish to both LaTeX and HTML and “skew” to particular employers quickly. This was the goal of m4resume.
The output is Steven Harms XHTML+RDFa résumé. If you’re interested in how I learned RDFa well enough to be able to embed it into XHTML, and are curious how I was able to disintegrate that into a series of M4 macros, you may want to read on in this exceedingly technical post. Oh by the way, this very post also has an RDF / Semantic Web payload: check it out. (more…)