Anyway, after I installed the application and tested one of my pages, I came across an accessibility warning I had never encountered before. The warning message looked something like “This appears to be a list of links. Perhaps this should be marked up with ARIA landmark role ‘Navigation’.” I had never heard of ARIA landmark roles, so I ran off to try to do some research on the subject. About all I was able to find in my first attempt were some abstracts from the W3C.
That was enough to get me started, though. I thought I understood the concept, and I began editing my site template to include those roles. I added roles for my main navigation, my sub-navigation, my breadcrumb, my search engine and more. I then saved the template and reloaded my home page. Much to my chagrine, I found that my page no longer validated as XHTML 1.0 Transitional. A bit dejected, I undid all of the changes to my template and hung my head for a while.
This evening, however, I decided to do a little more research on the subject. I then found a two-year old article on A List Apart explaining the ARIA landmark roles in depth. It seems that the only way to allow my pages to validate properly is to actually extend the DTD. Unfortunately, this only seems possible with XHTML 1.1. Unfortunately, as of this posting, XHTML 1.1 is still mostly unusable to develop Web sites, due to issues with the MIME type and DTDs.
I’m curious – Are you using ARIA landmark roles? If so, are you validating your pages in some way? What DTD are you using for your pages? I would be very interested to hear more about this whole topic if you’ve found any good resources.