One of the most challenging tasks in building a Sharepoint web site is to make it accessible, this happens because when Sharepoint 2007 (MOSS) was built the accessibility was not a priority of Microsoft in this product. Since the release of MOSS there have been released solutions to overcame this problem, as well as, good practices and real experiences form Microsoft, MVP’s and other partners.
So to follow up this trend it is time for me to describe how we did it to achieve level AA of accessibility in a MOSS web site.
Define the level of accessibility needed
First of all it is very important to define the level of accessibility needed, because depending on the requirements this can be easyer (it is never easy) or much more troublesome. In our case we were requested to deliver a Level AA accessibility, which raise us quite a few extra challenges.
When you have your accessibility level set the first thing you should do is to read about it, rules, what to use, things to avoid, validation software or websites. In a few words try to find out what is needed to get the level required, and if you take into account this information the project will be much smoother, because you know from the start what to use and what to avoid.
You can check some of this information on the following websites:
- Web Content Accessibility Guidelines 1.0
- WAI – Web Accessibility Initiative
- TAW Web Accessibility Test (the test tool I personally recommend, you can download and use the off-line version with the settings you need)
- HiSoftware Cynthia Says Portal (Another very good test tool)
During the development process always test the accessibility level of the web site !
How to start in MOSS
To build an accessible web site in MOSS be aware that you should only use publishing components (not all) or your own developed components, because those are the ones that you can control what is generated has accessible HTML. If you talk to any MOSS developer working on accessible sites one of the main complaints is that MOSS generates a lot of non-accessible HTML, and this non-compliant code cannot be controlled by the developer, that results in the need to develop components that do the same task but we control the generated HTML.
Another danger on the accessibility is the contents that the site will have, we can build a complete accessible web site, but if a user doesn’t fill and Image ALT the accessibility will be broken, and it is not the responsibility of MOSS or of our development. It is very important to raise awareness to the content creators and managers on the accessibility rules.
Build your development environment
One of the most important tasks you will have on the beginning of the project is to try and have the exactly same environment in development has the one the client will have in production. This will prevent unnecessary last minute surprises like different versions of MOSS, or problems in deployment to a DMZ.
So, check for hardware (if possible, but nowadays the Virtual Machines can help on this one) and Software versions for you to have the exact scenario, this means going to the detail of the Service Packs and hotfix’s. This can seem a detail but let me tell you that some of the issues the MOSS SP1 should fix, can appear again and are only fixed with post-SP1 hotfix’s . . . yes, this happened to me!
Choosing the Template to work with
For you to have a clean start on the development of the web site you need to define one of two options I personally suggest in Templates to use, either you use the Hisoftware Accessibility Kit for Sharepoint (AKS) or use the Minimal Master Page from Heather Solomon. These are the two best starting points I recommend.
The difference between these two solutions are that the AKS provides a number of accessible Moss templates to be used like the ones that come out of the box with MOSS, and some more reusable components like placeholders and webparts. The Minimal Master Page is “empty” with only the basic needed to work, and allow you to build you entire Master Page from scratch, this enables you to have a greater control on the development of the Templates.
The rest of the article continues in”Building accessible Sharepoint sites – Part 2“.