RDFa – Implications for Accessibility

Here are my initial thoughts on how I believe RDFa will benefit web accessibility. If you are new to RDFa I recommend reading the Wikipedia entry on RDFa and the W3C RDFa primer as an introduction.

A bit of background on RDFa

RDFa is a set of extensions to HTML and XHTML from W3C. With RDFa it is possible to use custom vocabularies to include machine readable data in web documents. In current web documents based on HTML or XHTML there are very limited ways of expressing information for machines. There are:

  • HTML elements that express document structure (e.g. headings, lists, tables), and rethoric (em, strong),
  • (broadly defined) HTML elements that express various technical terms (code, kbd, samp), and,
  • the content itself.

As more business domains are moving online the need to exchange data in a more structured fashion will increase. Instead of publishing data twice, once in a web document for humans and once in a separate file for machines, RDFa makes it possible to include machine readable data in web documents. (In a way, this has been possible since the modularization of XHTML, but in practice, few developers seem to have used the extension mechanisms of XHTML).

An RDFa example

Consider the following XHTML markup:

<p class="contactinfo">
	My name is Jo Smith. I'm a distinguished web engineer at
	<a href="http://example.org">Example.org</a>.
	You can contact me 
	<a href="mailto:jo@example.org">via email</a>.

Most humans will be able to understand the information but for machines this markup is too vague to parse without ambiguity. By providing more information about the content we can reduce this ambigity. First we provide information about our vocabulary in the HTML element:

<html xmlns:contact="http://www.w3.org/2001/vcard-rdf/3.0#">

Then we can use the terms of that vocabulary to provide more information for machines:

<p class="contactinfo" about="http://example.org/staff/jo">
	My name is
	<span property="contact:fn">Jo Smith</span>.
	I'm a
	<span property="contact:title">
		distinguished web engineer
	<a rel="contact:org" href="http://example.org">
	You can contact me
	<a rel="contact:email" href="mailto:jo@example.org">
		via email

One of the major benefits is that there is a standard for the vocuabulary specification and it is machine readable. You can open the URI for the vcard vocabulary used above in your browser (you may have to “view source” to see it) and see more information about the terms of the vocabulary. Another big advantage is that you can create a vocabulary specification for your business domain yourself and publish on the web. You do not have to put it through some central authority.

We have now modified the markup in our document to make it useful for both humans and machines. The document still looks the same for sighted users that look at the information in their web browser. Apart from the added benefit for search engines and desktop applications (e.g. importing this information into your adressbook now becomes easier) I believe it will have interesting implications for assistive tools as well.

What if assistive software could use RDFa information?

Since the vocabuary is created in a machine readable format it should be possible to let assistive software such as screen readers load the vocabulary specification and provide more information for the user. If you look at the vocabulary specification for vcards used above each term has a label text. For the title the specification looks like this:

<rdfs:label>Position Title</rdfs:label>

One of the simplest ways of using this information is of course to read it to the listener during the linearization of the page. Since a term can have a description too even more information could be provided to the user.

In practice, the sequence of events for a screen reader working on top of a web browser could look like this:

  1. Browser opens the web page.
  2. Screen reader parses the HTML and extracts references to all external vocabularies.
  3. External vocabularies are fetched and parsed for labels and descriptions.
  4. The screen reader announce that extended information exists and starts rendering the page.

So, by using RDFa to reduce ambiguity for machines it is likely that humans too can benefit from the added information. It will be very interesting to see what makers of assistive tools can come up with. What other use cases for RDFa with regards to accessibility can you see?


For more information on RDFa see:


  1. Dennis says at 2007-09-05 00:09:

    So is RDFa a type of Microformat?

  2. Mark Birbeck says at 2007-09-05 02:09:


    No, it’s not a type of microformat, although it’s a closely related concept. Microformats is all about defining vocabularies, whilst RDFa is about defining processing rules. In one Microformat you might use the abbr element, in another you might use the title attribute, and so on, which means that each vocabulary comes with its own set of processing rules.

    RDFa on the other hand always uses the same small set of attributes to carry the vocabularies, and only has one set of processing rules–you only need one RDFa parser.

    Also since each Microformat is unique–with its own processing rules–it makes it very difficult to mix vocabularies. RDFa is generic, so you can add as many languages as you like, even ones that haven’t yet been invented. (Obviously you’ll need to wait until they are invented…)

    One final thing; RDFa is based on RDF, so it means that you can also re-use other people’s vocabularies. With Microformats each vocabulary has to be be uniquely created. This last point is particularly important for those working in disciplines such as chemistry or medicine, where vocabularies are already defined, and all that is lacking is the ability to put the metadata into HTML documents.

    There are some other points here.



    Mark Birbeck, formsPlayer

    mark.birbeck@formsPlayer.com | +44 (0) 20 7689 9232
    http://www.formsPlayer.com | http://internet-apps.blogspot.com

    standards. innovation.

  3. Marcus Ahnve says at 2007-09-05 08:09:

    I actually had no clue about RDFa. Finally I fully understand why you’re not a fan of microformats.

  4. Peter Krantz says at 2007-09-05 09:09:

    @Mark: Thank you for your reply and explanation.

  5. Matthew Pennell says at 2007-09-05 11:09:

    We published an article on RDF a few months ago that provides some background information and simple examples of RDF: RDF For The Rest Of Us. It discusses eRDF rather than RDFa, which may be easier to grasp for web designers in terms of syntax.

  6. Richard Morton says at 2008-02-26 19:02:

    It’s interesting, and I need to read up about this before making any strong judgments, however I do worry about adding complexity in this sort of way. Generally, more complexity leads to diverging development (e.g. proprietary implementations) and makes it harder to get standards compliance. I’m not saying that this is not useful or valuable, but in the accessibility testing that I do it never ceases to amaze me that most web developers aren’t performing basic validation of their code (or if they are, they aren’t taking any notice of the results).

  7. vito says at 2008-03-21 12:03:

    According to you is there any possibility for using RDFa to obtain accessibility for ajax applications?

  8. IT Support London says at 2009-11-24 14:11:

    Thank-you for the detailed description. It’s been very useful.

  9. شات صوتي says at 2010-01-29 00:01:

    So is RDFa a type of Microformat?

  10. Andreas Kuckartz says at 2010-07-09 16:07:

    شات صوتي@
    That depends on the semantic of “type of”.

  11. IT Support London says at 2013-04-05 17:04:

    So is RDFa a type of microformat?

  12. targeted opt in email lists says at 2014-09-02 00:09:

    Hey! Would you mind if I share your blog with my twitter group?
    There’s a lot of folks that I think would really appreciate
    your content. Please let me know. Thanks

  13. art techniques says at 2014-10-02 08:10:

    Fantastic goods from you, man. I have understand your stuff previous
    to and you’re jjust extremely excellent. I resally like what
    you have acquired here, really like what you’re saying
    and the waay iin whikch yyou say it. You make it enjoyable and you still care for to keep it sensible.
    I can’t wait to read mudh more from you. This is actually a terrific web site.

  14. web design university says at 2014-10-02 12:10:

    It’s appropriate time to make a few plans for the future and it’s time to
    be happy. I have read this submit and if I may I desire to suggest you some fascinating things or suggestions.

    Perhaps you could write subsequent articles regarding this article.
    I desire to read more issues about it!

  15. gain followers instagram free says at 2015-02-22 03:02:

    Heya terrific blog! Does running a blog like thus take a large amount of
    work? I have virtually no understanding of coding but I was hoping
    to start my own blog in the near future. Anyways, if you have any ideas or tips
    for new blog owners please share. I know this is off
    topic but I simply needed to ask. Thanks!


Leave a comment

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Peter Krantz, peter.krantz@giraffe.gmail.com (remove giraffe).