The growth of interest in so-called microformats shows the there is a real need for, and interest in, such a solution. The technique used is to agree that certain patterns of HTML usage can be 'codified' to represent some agreed upon metadata. For example, the following HTML mark-up:
<div class="vcard">
<a class="url fn" href="http://tantek.com/">
Tantek Çelik
</a>
<div class="org">Technorati</div>
</div>
leverages the use of CSS classes to reuse pieces of the mark-up as metadata, and so represent a vCard. This approach is the same as that used by GRDDL, which uses XSLT to take an XHTML document and extract from it pieces of metadata.
But the problem with both solutions is that they don't scale, and so don't allow the mark-up data to become part of the Semantic Web. In both cases they require already existing metadata formats (vCard, iCalendar, and so on) to have a 'partner' or 'mirror' definition created--usually called the same name but with an 'h' in front--which guides document production.
Despite these problems, the goal of initiatives like microformats is important, since it sets out the possibility of carrying metadata in an ordinary HTML document. But ultimately, without addressing the problem of scale, we are not much closer to our goal of building a Semantic Web that parallels the visible web we've used for years.