Semantics is the science of language structure. Microformats are a means to add meaning to internet documents. With classic HTML you can e.g. mark that a paragraph is an address with the address-tag. However, a machine can't recognize where the name or where the street is. Microformats specify a number of classes that you can use to mark all parts of an address. E.g. you put the first name into a pair of span-tags and give it the class "given-name". The same you do with the last name - the class-name would be "family-name".
You can mark all parts of an address in this manner. The result is a program that knows which class is what, can split up the address and work with that. For example you can move an address to your Outlook Address Book with a single click (see Live Clipboard
There are several of these Microformats. Only few a are fully specified by now (hCard, hReview and some formats for the description of links.) But there are about 50 in discussion.
As an example for the technique and the way you can implement it into your own modules or templates I designed 3 publication types for Pagesetter: hCard
. You can import them into your Pagesetter installation and look at the templates. You can also build your own address books, calendars or reviews with it. I would love to see them working on the one or the other site.