go to content or go to sidebar

RSS Feed

The Web, Naturally!

WebOrganics » » microformats

  1. Transformr 0.5 is live
    Posted by Martin, about 1,273 days ago.

    Transformr version 0.5 is live. The 0.5 update introduces a set of performance tweaks and the ability to parse HTML fragments.

    Transformr should be also a lot easier to install on your on your own server chiefly because Transformr no longer uses the PHP tidy package, which for some reason is not included with a lot of hosting packages. Don't worry Transformr will still parse your malformed html because tidy does still exist to some extent via the W3C online Tidy service, but only when it fails to parse the source document. For best results though validate your document first (sorry I wasnt preaching).

    At the moment Transformr will transform the following microformats:

    The following microformats are also supported but are classed as experimental and shouldn't really be used in a production environment because support may be removed or changed at some point (but its up to you) they are:

    I am planning to write some stuff about the url conversions over on the new Transformr Wiki over the next couple of weeks, and some insights about what Transformr will support in future, like file uploads, tiny url's and microformats by direct input.

    What's also new for this version (0.5.X) is the source code has moved from Google Code to GitHub, because SVN is so complex compared GIT, which is amazingly simple shame I never got round to it sooner oh well. You grab a copy of the code at http://github.com/WebOrganics/TransFormr, and have fun

    Comments: 0

  2. Welcome Google to the Semantic Web
    Posted by Martin, about 1,460 days ago.

    Last week google announced on its webmaster blog something called Rich Snippets which is basically a way of marking up Structured data using microformats or/and RDFa on your web pages.

    Rich Snippets are used to mark up things like Reviews, People, Products, Businesses and organizations that Google will use in its search results pages to give a user a convenient summary of their results at a glance before visiting a web page.

    Wow! for the kind people who have been actively involved in developing and advocating Microformats and RDFa this is really good news and its been a long time coming.

    We have arrived at a new Era of SEO, as Michael Hausenblas (one of the key developers of RDFa) said "Let's call it semantic SEO", I like that, others may call it SEO3.0 or SEO++ whatever its all the same thing, Just SEO to me with more professionalism and intelligence.

    For Search Engine Optimization in particular I agree with Michael, If you use Rich Snippets then you can expect a reduction in Bounce Rates, higher conversion rates, More customers, More Money. There are I think one or two down sides to consider, the popular practice of Back-Link building and Modifying Header tags may over time become less relevant because these very small nuggets of data will have less meaning compared to the data contained in a Rich Snippet.

    A final thought from Jay Myers (one of the developers of the hProduct Microformat)

    ...microformats, RDFa, and related mark-up methods go beyond SEO and Google; they can serve as the front-end to a dynamic, smarter web of linked data. Don't implement microformats as a "silver bullet" for SEO. Implement them because your users deserve better, more concrete data regardless of the path they take to discover your products.

    Well said.

    Comments: 0

  3. Hypertext Friend of a Friend
    Posted by Martin, about 1,628 days ago.

    hFoaf (Hypertext Friend of a Friend) has recently been updated to version 0.3, this one has been an important update because basically the XSLT needed a lot of tidying, refining, which also gave me an opportunity to add a few more actions such as being able to extract things that a user has made or authored, and a more complete expansion of XFN rel="me".

    What may be a good idea now would be to give you some clues on how to build hFoaf in a quick and dirty howto, but first... hFoaf is not a microformat or a proposed one, although it does rely heavily on microformats to determine the output of a FOAF RDF document.

    The first step is to create a hcard, then add an id="" to the hcard and a class="url" with the XFN relationship rel="me"

    Example:

    1. <div class="vcard" id="weborganics">
    2. <p class="fn n">
    3. <span class="given-name">Martin</span>
    4. <span class="family-name">McEvoy</span>
    5. </p>
    6. <p><img alt="weborganics" src="http://weborganics.co.uk/images/me.jpg" class="photo"/></p>
    7. <p>Contact: <a class="email" href="mailto:weborganics@googlemail.com"
    8. id="sha1:3cc1a719a5023e9087ced9c74610b66cfbb58d54">weborganics@googlemail.com</a></p>
    9. <p>Web: <a rel="me" class="url" href="http://weborganics.co.uk/">WebOrganics</a></p>
    10. <div class="geo">
    11. <p>Location: <abbr title="53.7552" class="latitude">N 53.7552</abbr>,
    12. <abbr title="-2.3675" class="longitude">W -2.3675</abbr><p>
    13. </div>
    14. </div>

    hCard classes and how they map to FOAF are as follows...

    • "vcard" => foaf:Person
    • "fn" => foaf:name
    • "given-name" => foaf:givenname
    • "family-name" => foaf:family_name
    • "email" => foaf:email
    • "url" => foaf:homepage
    • "url org" => foaf:workplaceHomepage
    • "photo" => foaf:img

    The geo component of hcard maps to foaf:based_near and defined using the WGS84 Geo Positioning RDF vocabulary...

    • "geo" => geo:Point
    • "latitude" => geo:lat
    • "longitude" => geo:long

    Lastly The value of foaf:mbox_sha1sum uses the id="" of class email prefixed with "sha1:"

    XFN relationship values are also expanded and added to your FOAF output. rel="me" values that are links to popular social networking sites are mapped to foaf:holdsAccount, although not all rel me links are added to the output, a list of supported sites are as follows...

    • twitter
    • flickr
    • digg
    • ma.gnolia
    • last.fm
    • delicious
    • pownce
    • youtube

    Example:

    1. <a rel="me" href="http://delicious.com/weborganics">delicious</a>

    All XFN relationships are defined as foaf:knows, foaf:Person, foaf:name and foaf:weblog along with its XFN value eg: xfn:met.

    Example:

    1. <a rel="friend met" href="http://www.djkippax.com/" title="James Kippax">James Kippax</a>

    Interests and things that have been made or authored by a user are simply defined as foaf:interest maps to hAtom rel="bookmark".

    And thats it, easy eh? There is a Demo of how to use hFoaf With GRDDL along with some copy and paste code and some example output available at hFoaf Demo and also a webservice available at TransFormr that extracts a FOAF document

    Comments: 0

  4. Ubiquity the best thing since Web2.0
    Posted by Martin, about 1,722 days ago.
    Ubiquity

    Ubiquity is

    a Mozilla Labs experiment into connecting the Web with language in an attempt to find new user interfaces that could make it possible for everyone to do common Web tasks more quickly and easily

    And it does, it gives you the ability to insert maps into your email by simply typing "map" and then a location and then clicking "Insert map in page" which will basically insert the map in any editable page, so simple.

    Ubiquity has just over fifty commands to start you off, covering most common web tasks, such as the twitter command which lets you update your twitter status via your web browser, which I guess to people who use twitter is worth the xpi install alone.

    There are already a quite a few more commands in the wild for ubiquity at Mozilla Labs Including five new commands for Transformr under the Microformats heading. If you cant find what you need and fancy creating a few commands of your own, there is a super easy developer tutorial to help get you going, still seems too much you can always watch for new commands in the Herd.

    Already in just a few days Ubiquity has moved on to version 0.1.1 and development is moving on fast, if you fancy giving Ubiquity a whirl you can install the latest version Ubiquity 0.1.1 by clicking the previous link. Seems like paradise getting what you want from the web for a change? it is.

    Comments: 5

  5. Bootstrapping hAudio
    Posted by Martin, about 1,753 days ago.

    haudio

    The hAudio Microformat can now be transformed to four different flavours, RSS1, RSS2, XSPF, and RDF Music Ontology

    The Newest Format is Mo hAudio which is an attempt at extracting a basic Music Ontology. A demo is available at http://weborganics.co.uk/mo-haudio/ . One of the questions you may ask is why all the different formats , Well the first answerer is its cool isn't it? And the second would be, proof that the contributors of hAudio got the common basic semantics right. I would also say that if you are going to publish music on your website, why not publish it in hAudio because It's easy to do...

    <div class="haudio">
    <a rel="enclosure" class="fn" href="http://mywebsite.com/file/myfile.mp3" type="audio/mpeg">My Groovy Choon</a>
    </div>

    ... and you get the added benefits of all the other formats too. There Is just one more transformation (available end of august) hAudio to M3U which will pretty much make the job of bootstrapping hAudio to as many different formats as I can complete, If you think I left something out please let me know.

    Comments: 4

  6. Microformats TransFormr
    Posted by Martin, about 1,828 days ago.

    TransFormr

    I am Pleased to announce TransFormr by WebOrganics

    TransFormr combines all the tools available at the former tools.weborganics, all of X2V and a few Custom Rdf Dialects along with a few "experimental" formats!

    TransFormr is not a universal microformats transformer, just near enough, the easiest way to use TransFormr is to use the auto detect feature eg: http://transformr.co.uk/detect/http://tantek.com/. For more information about extracting individual formats please visit transformr.co.uk.

    Comments: 0

  7. Extending hCard using RDFa
    Posted by Martin, about 1,880 days ago.

    Mark Birbeck the Designer of RDFa has recently posted a couple of really good articles recently one about the first steps in adding Foaf to RDFa and a second one about using RDFa and Microformats. Both these articles has inspired me to write a little introduction about how to use the hcard microformat and extend it using RDFa.

    I am going to mark up this example of a hCard as RDFa:

    <div class="vcard" id="weborganics">
    <p><span class="fn">Martin McEvoy</span></p>
    <p><img alt="weborganics" src="http://weborganics.co.uk/images/me.jpg" class="photo"></p>
    <p>Contact: <a title="Email" class="email" href="mailto:info@weborganics.co.uk">Email</a>
    Web: <a rel="me" class="url" href="http://weborganics.co.uk/index.xhtml">WebOrganics</a></p>
    <div class="geo">
            <abbr title="53.7552" class="latitude">N 53.7552</abbr>,
            <abbr title="-2.3675" class="longitude">W -2.3675</abbr>
    </div>
    </div>

    I have included the geo part of hcard because its useful for people, clients, or customers to know where you are yes?

    First add the RDFa document type to your page:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">

    So far so good your page is now RDFa and you are ready to add some namespaces, a namespace is just a place where a set of names and definitions is stored.

    I am going to use two namespaces in this example:

    • 1. Foaf, xmlns:foaf="http://xmlns.com/foaf/0.1/"
      Foaf Is primaraly used to define People, FOAF documents are machine-readable home pages.

    • 2. Geo, xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
      Geo Is the RDF equivalent of the World Geodetic System or WGS84 and is used to represent Latitude/Longitude information about the location of things.

    There are two ways to add a namespace in RDFa one is In the <html> tag of your page or another way is in the page using say a <div> or a <span> I am going to add the namespace to the hcard markup itself:

    <div class="vcard" id="weborganics"
                    xmlns:foaf="http://xmlns.com/foaf/0.1/" 
                    typeof="foaf:Person" 
                    about="#weborganics">

    @typeof is similar to a html <div> it describes a block of some thing, in this case Its a block of foaf:Person. @about means exactly as it says what this thing is about in this case Its about the foaf:Person weborganics.

    Lets add a Name to this person:

    <p><span property="foaf:name" class="fn">Martin McEvoy</span></p>

    Easy eh?, Properties are use to add information about the subject, in this case a person, the contents are usually just text.

    Next you may want to add your picture:

    <p rel="foaf:img">
    <img alt="weborganics" src="http://weborganics.co.uk/images/me.jpg" class="photo"/>
    </p>

    @rel is used in the same way as a html rel to describe the relationships between things. The above example has a relationship of a foaf:img of the foaf:Person. In RDFa you can use @rel anywhere in your page not just in links, you may also want to add your email address and homepage url in the same way:

    <p>Contact: <a rel="foaf:mbox" title="Email" class="email" href="mailto:info@weborganics.co.uk">Email</a>
    Web: <a rel="foaf:weblog me" class="url" href="http://weborganics.co.uk/index.xhtml">WebOrganics</a></p>

    You can leave it there if you wanted which is great! but I am going to take this a little further and demonstrate how you can mark up the Geo bit of a hcard. All in one go this time using the same techniques as demonstrated above:

    <div class="geo" id="weblog" rel="foaf:based_near"
            xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">
            <span typeof="geo:Point" about="#weblog">
                    <abbr property="geo:lat" content="53.7552" title="53.7552" class="latitude">N 53.7552</abbr>, 
                    <abbr property="geo:long" content="-2.3675" title="-2.3675" class="longitude">W -2.3675</abbr>
            </span>
    </div>

    There Is one thing extra I have added I have used @content this works in the same way as the @title attribute in the abbr design pattern, Its used to carry machine readable data without it interfering with the human content, If you think about that from an accessible point of view its actually better than the current abbr design pattern.

    So there you have it a hCard marked up as RDFa in a few easy steps. I have created two examples to accompany this mini how-to. which you can simply just copy and paste with your own details.

    Microformats and RDFa work pretty well together I think, It adds Scope when previously there wasn't any, Microformats also make excellent building blocks for RDFa they give you hints on where everything should go. Thanks.

    Comments: 0

  8. Talk about hAudio RSS
    Posted by Martin, about 1,943 days ago.

    hAudio-RSS is causing a little flutter in the open media web community so much so that back in December it became part of a small discussion over at songbird nest called Portable Playlists and other POSH-ibilities presented (amongst others) by Tantek which was kindly recorded to video by Citizen Tara Hunt, so without any further rambling may I present Tantek's Demo.

    Comments: 0

  9. hAudio-RSS - Public Domain
    Posted by Martin, about 1,968 days ago.

    hAudio0.8 hAudio-RSS has been updated to version 2, the code has been modified and does not contain any suspected anti-patterns (info being scraped from the head not visible). The biggest change is that hAudio-RSS is now licensed under a Creative Commons Public Domain License. This is because microformats.org have recently required all contributions on the microformats wiki have a public domain license, which personally I find is a smart move, Anybody can freely use microformats anywhere for anything and not have to worry about possible licensing or copyright infringements. hAudio-RSS is an extension of hAudio so I feel it should have the same license. There is also a free Template that you can download of the whole hAudio-RSS v2 markup also released into the Public domain which includes, XHTML 1.0 Strict document, CSS, Bookmarklet, Buttons and guidelines. Download hRSS-template.

    The hAudio transformation service has been improved! Instead of data being just dumped onto the screen the service now saves the transformation in a store, the url that you are given when transformation is complete is a permanent url to a static xml file, every time you re-run the hAudio xslt service you will be given a new permanent url in the store, this makes it easy to keep versions, or archives of your files, you can download the xml files anytime you like, save them to your desktop, or if you like re-syndicate your xml files to feedburner, add them to the podcast.net directory and pump them through another service like Grabb.it. do what you like its your data

    Anyway lets not bore you anymore, download the template and have fun!

    Comments: 0

  10. Audio Microformat hAudio 0.8
    Posted by Martin, about 2,027 days ago.

    This Halloween as well as that awful film Halloween being on the BBC again they also promised Halloween II next week... dont worry I have plenty more repeats to chose from thanks to the miracle of satelite tv, something else not so scary happened the audio microformat hAudio reached version 0.8. The general consensus on the list is that hAudio 0.8 will be the final proposal, after a last round of talks, before hAudio gets moved on to Draft. hAudio will then become only the twelfth in a list of many exploratory discussions, to make it to Microformat Draft.

    Manu Sporny, Was the first to suggest a hAudio Microformat on Apr 6 2007, when he proposed that we...

    Create a very simple hAudio microformat, which can then be integrated into media-info

    ...which was In response to my suggestion a few days earlier on Apr 4 2007 that the community could create a music download microformat using a combination of hAtom and hReview, a brave suggestion I thought, the Important thing was the discussion did not go stale.

    Anyway check out the microformats wiki and find out what hAudio is, or have a look at the discussion, (7 months) and see what everyone got so worked up about. I have also updated the hAudio test page for any of you who are interested in publishing and testing hAudio.

    Comments: 0

  11. hAudio Microformat
    Posted by Martin, about 2,154 days ago.

    haudio

    Well! what can I say, I'm honoured to announce the birth of a new microformat that has managed to reach the status of Proposal, hAudio.

    I say honored because for some bizarre reason I managed to become a contributor whilst I was a the quest to make our very own Podcast more Organic and easier to share. I can honestly say that hAudio was one of the most hotly debated and well designed microformats since hAtom, and as a result the Format instead of taking the suggested eight weeks to complete, ended up finally taking twenty one contributors nearly twice as long.

    The full proposal and full Schema can be found at http://microformats.org/wiki/audio-info-proposal

    The demo page used for testing, and created during the hAudio discussion can be found at http://weborganics.co.uk/haudio

    I would like to give a special "nod" to one or two of the guys who headed up the discussion and design of haudio, Manu Sporny who was the leader of the whole audio info discussion, without his guidance and Logic I doubt hAudio would ever been finished. Brian Suda and Tantek Çelik who kept us from straying too far beyond the "cow paths" Scott Reynen, David Janes, and Andy Mabbett all hot debaters and seasoned microformateers, who guided those of us who were not to sure where the cow path was. For my part well, my Ideas may have been a bit off the mark a little, Indeed most would say I found it hard keeping to the job at hand. In the end I think everyone that was involved helped create the most well designed microformat there is to date.

    Comments: 0