My thesis has been published as a book and can be purchased via Amazon by clicking on the cover below (affiliate link).

Please make sure to write loads of positive reviews on the Amazon page!
Thanks 😉

After finishing my university I now present to you my thesis.
Unfortunately it’ll only be useful for a small part of my readers because it is written in german. But who knows, if there’s enough demand I might produce an english translation at some point in time in the future!

The title of my thesis is
“Das semantische Web und wie Microformats die Entwicklung vorantreiben werden”
which roughly translates to
“The semantic web and how Microformats will help it’s advancement”

Read an abstract over here

Or buy it on Amazon as a book (affiliate Link)

Out of pure boredom and because I did enough work on my thesis today (…and because there wasn’t anything decent on TV), I decided to distract myself with a little coding. This is what came out:

LastVenue

Just download it, rename the filename ending to .php, configure it by pasting in the last.fm URL of your desired location and upload it to your webserver. You will also have to download SimplePie that takes care of the all the RSS stuff and place it in the same directory as the LastVenue script.
If you want to include it into a PHP script paste in the following:
include('lastVenue.php');

This script pulls all events for a specific venue from last.fm and lists them in a simple, CSS styleable unorderd list. The script is meant to be included into a webpage and thus features none of the other HTML markup to make it into a full document. It basically only echoes out a headline and a few list items.

Oh yea, of course the script is Microformats enabled 😉
Microformats enabled

Note: the AJAX loding functions got skipped, because I’m really tired right now. Maybe they’ll show up in version 2.0 …who knows?

In this post I’ll briefly describe the steps I took to implement hAtom into my WordPress template.
hAtom is a draft specification for a Microformat to incorporate the common Atom format into HTML. Marking up your blog with those desciptive elements gives you several advantages but more on this later.

To make WordPress hAtom ready you have to edit the file named ‘Main Index Template’. The easiest way to do this is to go into the WordPress Admin and then to ‘Presentation’ -> ‘Theme Editor’.
This file includes the main ‘WordPress Loop’ that displays all of your posts. To add the hAtom Microformat here the only thing you have to do, is to set some HTML class attributes.

(Note: All examples taken from the “WordPress Default” template, edits are in bold)

  1. Find the div that has the id “content” and add a class “hfeed”. It’s ok for elements to have more than one class name. So if there’s already a class attribute there, just seperate them with a space. This marks the beginning of the Atom ‘feed’.
    Now it should look like this:
    <div id="content" class="narrowcolumn hfeed">
  2. Next we have to define a single entry. For this to happen I choose to include the “hentry” class to the alrady existent “post” div.
    <div class="post hentry" id="post-<?php the_ID(); ?>">
  3. To set the post title correctly I simply added a class=”entry-title” to the link surrounding the post title.
    <a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>" class="entry-title">
  4. Now comes the tricky part. To have a correct date format for the point of time the entry was postet we have to change the date display from the following
    <?php the_time('Y-m-d H:i') ?>;
    to
    <abbr class="published" title="<?php the_time('Y-m-d\TH:i:s\Z') ?>"><?php the_time('Y-m-d H:i') ?></abbr>
    This setting only applies if you are posting in CET. Please consult the datetime Design Patterns on the Microformats Website and the PHP date() function to adapt the part in the ‘title’ of the ‘abbr’ tag to your timezone.
  5. Now find a tag surrounding the WordPress function named the_content() (or just put a div around there) and add the class “entry-content”.
    <div class="entry entry-content">
    <?php the_content('Read the rest of the entry.'); ?>
    </div>

That’s basically it. You could of course add several more tags and classes for categories for instance. The good thing is that Microformats are nice to each other, so if you already have some Technorati tags in your blog that feature the ‘rel=”tag”‘ attribute, they will be incorporated in the hAtom format automatically.

So the question is now, how can you take advantage of your new semantic additions to your blog?
Well, as mentioned in my previous post about Microformats there is tails for Firefox but you can do all sorts of crazy stuff like converting your hAtom posts to a real Atom feed using the awesome webapp Luke Arno made: hatom2atom.
And that brings us to a whole new level. I’m asking myself why do I need a seperate feed that features the very same content that’s already displayed on my HTML pages? That’s where the magic of Microformats sets in. Their nature being that they are humans first and machines second I can now have both served just from one source.
Having Atom feeds for all of my blog posts also enables them to be used more widely for instance I can think of a few situations where an Atom feed of my archived posts could come in very handy. I’m sure you can think of several more ways to use this.

Today I took the time to ‘microformatize‘ my blog a little bit. Each post is now fitted with an hCard for my person and the About page got a little bit of extra markup as well.
I now also try and use Microformats whenever I refer to other people, organisations or if I ever post about events and such.

So this is an ongoing process. Expect to find more and more Microformats here in the future!

One way to take advantage of the Microformats on this page and others which are using Microformats, is to install the great Tails Firefox extension.