At one of my clients, we were looking at improving the accessibility of their intranet for sight impaired users. This was my first opportunity to work with someone that uses a text-to-speech and Braille reader as their only way of browsing a site. If you pardon the pun, this was eye-opening. It's fine to think about accessibility based on reading whitepapers or blog posts, it's quite another matter to watch a sight impaired user navigate through an intranet and try to make sense of it. One thing that we quickly learnt is that any content that describes the location of an item purely based on visual indicators is not enough (e.g. "just click on the blue button")
One area that we were able to improve quickly was in the search results. Our accessibility reviewer mentioned that it would be easier to jump between each search result if they were wrapped up in H3 tags. No problem – we had this implemented that afternoon. This required modifying a property in the Search Results web part:
- Perform a search within your MOSS intranet so that you can get to the search results page
- Within Search Results, select Site Actions – Edit Page. This will allow you to make changes to the web parts on the search results page
- On the Search Core Results web part, select Edit – Modify Shared Web Part
- Within the web part properties click on the XSL Editor... button under the Data View Properties section
This is the XML transformation code that is applied to our search results. It allows us to control exactly how they are formatted.
The section that you want to change begins with <xsl:template match="Result">. This controls the HTML written out for each search result. You need to put a <H3> tag immediately before the <span class="srch-Icon"> element and the closing </H3> tag immediately after the closing </span> tag for <span class="srch-Title">
You probably will also want to adjust the formatting of these H3 elements, as by default, they are rather large, and there is too much spacing between the search result title and the other details. The easiest way to do this is to apply an inline style to your H3 element. This is what mine looks like:
<H3 style="margin-bottom:0px; font-size:100%;">
Once you have completed your changes, don't forget to publish the updated page.
You can download a copy of my modified Data View XSL Property from here

8 comments:
Thanks for sharing your experience with accessibility in SharePoint, Ivan. It's definitely great to hear how big difference there is between reading/hearing about accessibility and experiencing it with someone who has to deal with it in his everyday's life.
Was improving the search the only tip you got from you test user or were there more things that could've been improved?
Thanks Waldek
One other option we are looking to implement is to create a separate home page for sight impaired users.
This version would have a simpler layout and would omit some of the web parts that these users do not find so useful.
We plan to auto-redirect these users from the standard home page through to the customised one. Users will have the ability to navigate back to the standard one if they want.
Finally, we are planning to promote the keyboard shortcuts (https://www.surfgroepen.nl/_layouts/help.aspx?lcid=1033&cid0=MS.OSS.manifest&tid=MS.OSS.HA10173362 ) as another way to assist sight impaired users.
We hope that we will continue to get feedback on other functionality that we can improve on. I'll be sure to blog on anything of particular interest
Wouldn't it be better to create one accessible homepage and then enhance it with some optional technology like JavaScript? Like this it would be easier to maintain the site and you would make it easier to search engines to scan the page.
I don't know whether you have any additional information about the audience of the site but as far as I know many visually impaired users don't use JavaScript.
Ivan, Great Post.
I have a quick question on a different point though.
We have SP 2007 (Standard version) running as WFE (web front end) in 2 web servers and one application server (running search, index, query, etc). The application server is not in the Load balancer and the 2 front end's are. All 3 servers communicate to the SQL Server 2005.
Now the question is: Can I install 1 or 2 more instances of SP 2007 WFE in the 2 front end web servers? Assume I put 2 more instances of SP 2007 WFE in the 2 web servers, it will make 6 instances of SP 2007 WFE in 2 web servers.
All 6 instances will have its own IP address and run in the same IIS web server in the 2 web server.
Is this possible?
Thanks.
I'm not sure I follow what you are trying to do.
It sounds like you have a SharePoint Server farm with 3 servers, two of them are being used to serve web requests, the other server is being used to serve index and query requests.
If you are asking whether your farm will support 2 more web sites, then I would say yes. It will depend on the amount of traffic the farm will be handling, but assuming that it is not excessive, you should not have a problem.
If this is not what you mean, can you reword your question?
Ivan, My question is on similar lines but not on same lines!!!
We have 2 webservers load balanced and one application server for index/query/etc.
Now I can add 2 more phyiscal servers as webserver for sure under the load balancer.
But my question is can I run 2 more instances in each of the existing 2 front end servers thereby having 4 instances of MOSS 2007 instances in 2 webservers.
In Documentum, LiveLink and FileNet this sort of configuration is allowed and I am wondering whether we can pack more than one instance of MOSS 2007 in one webserver.
What are you trying to achieve by running two additional instances of SharePoint on the existing servers?
It is not possible to install the application multiple times on the same server. Also, each server can only be a member of one farm at any time.
It is possible to create multiple websites on the same farm. Would that achieve what you are looking for?
Another approach is to use hardware virtualisation (Hyper-V, VMWare or Virtual Server) to set up multiple virtual servers on your two physical servers.
The problem with that is you will be dividing up memory, processor and disk space to create these. There are also additional licensing costs.
Got it Ivan.
The reason to put say 3 instances each in 2 front end web server's which are in the server farm and under a load balancer is to make the maximum usage of the server power.
Of late, server's come with enormous power (cpu) and memory can be loaded. So why put 6 machines as web server in the server farm. I can as well as use 2 machines running 3 instances of MOSS 2007 and the load balancer will send the requests to each of these six instances depending on the load on each instance or by round robin method.
But from the looks of it you are telling me even installing more than 1 instance of MOSS in a machine is not possible technically unless otherwise we go for VMWare kind of Virtualisation. Am I right.
Post a Comment