473,395 Members | 1,608 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

Accessibility, Table and JAWS

Here, I confront with two questions:

First, some background info. I'm converting content of multimedia
files into accessible/508 compliant HTML documents, also, 'accessible'
has a narrow definition here, refers to visually impaired persons, the
environment primarily uses JAWS screen reader.

1) Since each 'unpredictable' source file is not huge, I'm not using
some tool to generate its equivalent HTML file on the fly. Here's a
sample HTML file which should be 'accessible'.
The question is, when using the technique of Scope="Rowgroup", the Abbr
attribute seems required in order for JAWS to read both Column Header
as well as Row Header while the ID attribute won't do neither Title.
Is that a rule or the sort? How would other major Screen Reader read
the following? FYI, this is of course also associated with reader
configuration, see below as a separate question.

<html>
<head>
<title>Products FEA Overview: Technical Reference Model
(TRM)</title>
</head>
<body>
<h3 align="left"><font size="+1" color="#000000"><b>Products FEA
Overview: Technical Reference Model (TRM)</b></font></h3>
<table border="1" summary="FEA Technical Reference Model">
<thead>
<tr>
<th scope="col" id="accessDelivery" colspan="2">Service Access
and Delivery</th>
</tr>
</thead>
<tbody>
<tr>
<th id="access" scope="rowgroup" rowspan="5" valign="top"
abbr="access channels">Access Channels</th>
<th></th>
</tr>
<tr>
<td scope="row">Web Browser</td>
</tr>
<tr>
<td scope="row">Wireless / PDA</td>
</tr>
<tr>
<td scope="row">Collaboration / Communications</td>
</tr>
<tr>
<td scope="row">Other Electronic Channels</td>
</tr>

<tr>
<th id="delivery" scope="rowgroup" rowspan="6" valign="top"
abbr="delivery channels">Delivery Channels</th>
</tr>
<tr>
<td scope="row">Internet</td>
</tr>
<tr>
<td scope="row">Intranet</td>
</tr>
<tr>
<td scope="row">Extranet</td>
</tr>
<tr>
<td scope="row">Peer to Peer (P2P)</td>
</tr>
<tr>
<td scope="row">Virtual Private Network (VPN)</td>
</tr>

</tbody>
</table>
</body>
</html>

2) I have a eval copy of JAWS for Windows, the HTML options under
Configuration Manager seems freaky, for Table option, I chose All
Tables and for Headings I selected Speak heading with Voice (also tried
Headings with Level), was expecting to hear something like Column
Header, xyz, but no. What's going on?

Thanks.

Sep 1 '06 #1
11 3265
NickName wrote:
Here, I confront with two questions:

First, some background info. I'm converting content of multimedia
files into accessible/508 compliant HTML documents, also, 'accessible'
has a narrow definition here, refers to visually impaired persons, the
environment primarily uses JAWS screen reader.

1) Since each 'unpredictable' source file is not huge, I'm not using
some tool to generate its equivalent HTML file on the fly. Here's a
sample HTML file which should be 'accessible'.
The question is, when using the technique of Scope="Rowgroup", the Abbr
attribute seems required in order for JAWS to read both Column Header
as well as Row Header while the ID attribute won't do neither Title.
Is that a rule or the sort? How would other major Screen Reader read
the following? FYI, this is of course also associated with reader
configuration, see below as a separate question.
[code snipped]

In my opinion you don't need any special attributes at all (though of
course you need to use TH). This is a simple table in which cell's
relates to all the TH cells directly to its left and above it. Rowspans
and colspans are recognized for this purpose. I did my own study of this
a couple of years ago and found that both JAWS and IBM Home Page Reader
successfully dealt with tables of this nature without use of scope,
header, or id attributes.

Frankly, for this particular table, I suspect that the second column
shouldn't be subdivided and rowspanned by the first. In a table, each
row of data ought to correspond to a unique combination of the available
headers. Put another way, there ought to be only one row of data for
each header in the rightmost column of row headers, and likewise for
columns. I would set this up as [attributes omitted]:

<tr>
<th>Access Channels</th>
<td>
<ul><li>Web Browser</li><li>Wireless / PDA</li><li>...</li></ul>
</td>
</tr>
<tr>
<th>Delivery Channels</th>
<ul>
.... etc.

with the lists styled to remove the left margin and bullets.
Sep 1 '06 #2
There are a couple of things that were not conveyed in my previous
positng.
Chiefly, as you can see there are 'layered' column headers, for
instance,
Service Access and Delivery is a top level Column Header and
Access Channels or Delivery Channels are sub/lower level Column Header.
Not sure the simple Table elements of TH alone would suffice for the
Screen Reader.

Using List elements sounds good, am rebooting to check it out (poor
JAWS)

Harlan Messinger wrote:
NickName wrote:
Here, I confront with two questions:

First, some background info. I'm converting content of multimedia
files into accessible/508 compliant HTML documents, also, 'accessible'
has a narrow definition here, refers to visually impaired persons, the
environment primarily uses JAWS screen reader.

1) Since each 'unpredictable' source file is not huge, I'm not using
some tool to generate its equivalent HTML file on the fly. Here's a
sample HTML file which should be 'accessible'.
The question is, when using the technique of Scope="Rowgroup", the Abbr
attribute seems required in order for JAWS to read both Column Header
as well as Row Header while the ID attribute won't do neither Title.
Is that a rule or the sort? How would other major Screen Reader read
the following? FYI, this is of course also associated with reader
configuration, see below as a separate question.

[code snipped]

In my opinion you don't need any special attributes at all (though of
course you need to use TH). This is a simple table in which cell's
relates to all the TH cells directly to its left and above it. Rowspans
and colspans are recognized for this purpose. I did my own study of this
a couple of years ago and found that both JAWS and IBM Home Page Reader
successfully dealt with tables of this nature without use of scope,
header, or id attributes.

Frankly, for this particular table, I suspect that the second column
shouldn't be subdivided and rowspanned by the first. In a table, each
row of data ought to correspond to a unique combination of the available
headers. Put another way, there ought to be only one row of data for
each header in the rightmost column of row headers, and likewise for
columns. I would set this up as [attributes omitted]:

<tr>
<th>Access Channels</th>
<td>
<ul><li>Web Browser</li><li>Wireless / PDA</li><li>...</li></ul>
</td>
</tr>
<tr>
<th>Delivery Channels</th>
<ul>
... etc.

with the lists styled to remove the left margin and bullets.
Sep 1 '06 #3
Ahe, thought there was a reason that I did not use List elment.
In JAWS, when moving to / pointing to a particular cell, with List,
an elment won't be read while in my previous example, both Column
header and Row header and cell content is read in this sequency.

NickName wrote:
There are a couple of things that were not conveyed in my previous
positng.
Chiefly, as you can see there are 'layered' column headers, for
instance,
Service Access and Delivery is a top level Column Header and
Access Channels or Delivery Channels are sub/lower level Column Header.
Not sure the simple Table elements of TH alone would suffice for the
Screen Reader.

Using List elements sounds good, am rebooting to check it out (poor
JAWS)

Harlan Messinger wrote:
NickName wrote:
Here, I confront with two questions:
>
First, some background info. I'm converting content of multimedia
files into accessible/508 compliant HTML documents, also, 'accessible'
has a narrow definition here, refers to visually impaired persons, the
environment primarily uses JAWS screen reader.
>
1) Since each 'unpredictable' source file is not huge, I'm not using
some tool to generate its equivalent HTML file on the fly. Here's a
sample HTML file which should be 'accessible'.
The question is, when using the technique of Scope="Rowgroup", the Abbr
attribute seems required in order for JAWS to read both Column Header
as well as Row Header while the ID attribute won't do neither Title.
Is that a rule or the sort? How would other major Screen Reader read
the following? FYI, this is of course also associated with reader
configuration, see below as a separate question.
[code snipped]

In my opinion you don't need any special attributes at all (though of
course you need to use TH). This is a simple table in which cell's
relates to all the TH cells directly to its left and above it. Rowspans
and colspans are recognized for this purpose. I did my own study of this
a couple of years ago and found that both JAWS and IBM Home Page Reader
successfully dealt with tables of this nature without use of scope,
header, or id attributes.

Frankly, for this particular table, I suspect that the second column
shouldn't be subdivided and rowspanned by the first. In a table, each
row of data ought to correspond to a unique combination of the available
headers. Put another way, there ought to be only one row of data for
each header in the rightmost column of row headers, and likewise for
columns. I would set this up as [attributes omitted]:

<tr>
<th>Access Channels</th>
<td>
<ul><li>Web Browser</li><li>Wireless / PDA</li><li>...</li></ul>
</td>
</tr>
<tr>
<th>Delivery Channels</th>
<ul>
... etc.

with the lists styled to remove the left margin and bullets.
Sep 1 '06 #4
NickName wrote:
There are a couple of things that were not conveyed in my previous
positng.
Chiefly, as you can see there are 'layered' column headers, for
instance,
Service Access and Delivery is a top level Column Header and
Access Channels or Delivery Channels are sub/lower level Column Header.
Not sure the simple Table elements of TH alone would suffice for the
Screen Reader.
No, you have one column header, "Service Access and Delivery", which
spans two columns, and you have two row headers, "Access Channels" and
"Delivery Channels". My comments related to that. But even though you
have just one layer of column headers and one layer of row headers, my
comments hold even if you do have several layers of column and row
headings as long as data cells can be related to their headers by the
software by scanning to the left and upwards. As I said, I tested this
on JAWS and IBM Home Page Reader, and this was a couple of years ago.
Sep 1 '06 #5
You're right in that "Access Channels" and "Delivery Channels" are
indeed Row Headers.
Another thing is, similar structure would replicate further down the
table as well.
Thanks for taking the time to share your knowledge/experience about
accessibility.

Harlan Messinger wrote:
NickName wrote:
There are a couple of things that were not conveyed in my previous
positng.
Chiefly, as you can see there are 'layered' column headers, for
instance,
Service Access and Delivery is a top level Column Header and
Access Channels or Delivery Channels are sub/lower level Column Header.
Not sure the simple Table elements of TH alone would suffice for the
Screen Reader.

No, you have one column header, "Service Access and Delivery", which
spans two columns, and you have two row headers, "Access Channels" and
"Delivery Channels". My comments related to that. But even though you
have just one layer of column headers and one layer of row headers, my
comments hold even if you do have several layers of column and row
headings as long as data cells can be related to their headers by the
software by scanning to the left and upwards. As I said, I tested this
on JAWS and IBM Home Page Reader, and this was a couple of years ago.
Sep 1 '06 #6
ok, after taking another look at the source file, I now realize why I
call it layered/multile level Column Headers, it looks that way, funny
thing is, I implement the second level as Row Header while "calling it
column header".

NickName wrote:
You're right in that "Access Channels" and "Delivery Channels" are
indeed Row Headers.
Another thing is, similar structure would replicate further down the
table as well.
Thanks for taking the time to share your knowledge/experience about
accessibility.

Harlan Messinger wrote:
NickName wrote:
There are a couple of things that were not conveyed in my previous
positng.
Chiefly, as you can see there are 'layered' column headers, for
instance,
Service Access and Delivery is a top level Column Header and
Access Channels or Delivery Channels are sub/lower level Column Header.
Not sure the simple Table elements of TH alone would suffice for the
Screen Reader.
No, you have one column header, "Service Access and Delivery", which
spans two columns, and you have two row headers, "Access Channels" and
"Delivery Channels". My comments related to that. But even though you
have just one layer of column headers and one layer of row headers, my
comments hold even if you do have several layers of column and row
headings as long as data cells can be related to their headers by the
software by scanning to the left and upwards. As I said, I tested this
on JAWS and IBM Home Page Reader, and this was a couple of years ago.
Sep 1 '06 #7
NickName <da****@rock.comscripsit:
Here, I confront with two questions:
The questions would be easier to analyze if you had posted the URL of a real
page. (The markup you posted is presumably just a sketchy snippet and does
not illustrate the situation well.)

A few general remarks:
<h3 align="left"><font size="+1" color="#000000"><b>Products FEA
Overview: Technical Reference Model (TRM)</b></font></h3>
That's not optimal for accessibility or maintainability. It's better to use
just simple <h3>...</h3markup and use CSS for styling. Besides, why is the
_top_ heading <h3and not <h1>?
<table border="1" summary="FEA Technical Reference Model">
The summary attribute just repeats part of the heading. How would it be
useful? If you expect the attribute to do some good, it should explain the
structure of the table, expressing something that might be evident from the
visual appearance but not evident at all to a person using a non-visual user
agent.
<th id="access" scope="rowgroup" rowspan="5" valign="top"
abbr="access channels">Access Channels</th>
What's the point of an "abbreviation" that just repeats the unabbreviated
expression? It woud be better to omit the abbr attribute _or_ make it
contain something shorter, like abbr="channels", if you think that users
will find that more comfortable. Think about how the attribute will be
_used_ by user agents that use it for something. It's typically used when
reading the content of a cell together with texts that identify its row and
column. The question is whether "channels" (or maybe "access") would be
sufficient then.

--
Jukka K. Korpela ("Yucca")
http://www.cs.tut.fi/~jkorpela/

Sep 1 '06 #8
If you're still there--I found that an old exhibit of mine is still up
at www.gavelcade.com/table2.html. See example 1. It contains no special
attributes, while subsequent examples (other than example 2, which is a
different table) do. JAWS dealt at least as well with example 1 as with
any of the other examples. Moreover, once it found any special
attributes at all, JAWS fell apart on parts of the table where I didn't
use those attributes and it *should* then have been able to figure out
the headings by following the default rules. The moral is: either be
prepared to mark up the attributes *fully*, or don't bother at all.
Sep 1 '06 #9
In message <11**********************@74g2000cwt.googlegroups. com>,
NickName <da****@rock.comwrites
>You're right
You're not.

A: Because it messes up the order in which we read text
Q: Why is top posting such a bad thing?
A: Top posters
Q: What's the most annoying thing on usenet?

--
Andy Mabbett
Say "NO!" to compulsory ID Cards: <http://www.no2id.net/>

Free Our Data: <http://www.freeourdata.org.uk>
Sep 2 '06 #10
See my comments below, thanks. General comment: did not put in 100%
effort in doing that, fault on my part.

Jukka K. Korpela wrote:
NickName <da****@rock.comscripsit:
Here, I confront with two questions:

The questions would be easier to analyze if you had posted the URL of a real
page. (The markup you posted is presumably just a sketchy snippet and does
not illustrate the situation well.)
Correct.
A few general remarks:
<h3 align="left"><font size="+1" color="#000000"><b>Products FEA
Overview: Technical Reference Model (TRM)</b></font></h3>

That's not optimal for accessibility or maintainability. It's better to use
just simple <h3>...</h3markup and use CSS for styling. Besides, why is the
_top_ heading <h3and not <h1>?
I knew it's crapy. A colleague wanted to use H3 instead of H1, for
things like that I'm accomodating.
<table border="1" summary="FEA Technical Reference Model">

The summary attribute just repeats part of the heading. How would it be
useful? If you expect the attribute to do some good, it should explain the
structure of the table, expressing something that might be evident from the
visual appearance but not evident at all to a person using a non-visual user
agent.
Good point on putting in something else other than repeating header.
<th id="access" scope="rowgroup" rowspan="5" valign="top"
abbr="access channels">Access Channels</th>

What's the point of an "abbreviation" that just repeats the unabbreviated
expression? It woud be better to omit the abbr attribute _or_ make it
contain something shorter, like abbr="channels", if you think that users
will find that more comfortable. Think about how the attribute will be
_used_ by user agents that use it for something. It's typically used when
reading the content of a cell together with texts that identify its row and
column. The question is whether "channels" (or maybe "access") would be
sufficient then.
Your sort of answer your own question here. The key 'anomaly' here is
the lack of certainty of JAWS configuration for a sighted person. A
few weeks ago we saw a blind person using JAWS it read like Column
header xyz and Row header abc, however, both my colleague and I have
not been able to configure JAWS to do the exact same when reading a
particular cell. As for the {content} of ABBR attribute, it seems that
JAWS would read it as Row Header, hence, I have to comply. Once again,
it seems that the eval copy of JAWS and commerical JAWS may differ in
Configuration functionality other than the freaky 40 minutes timeout
for the eval.
--
Jukka K. Korpela ("Yucca")
http://www.cs.tut.fi/~jkorpela/
Sep 5 '06 #11

Harlan Messinger wrote:
If you're still there--I found that an old exhibit of mine is still up
at www.gavelcade.com/table2.html. See example 1. It contains no special
attributes, while subsequent examples (other than example 2, which is a
different table) do. JAWS dealt at least as well with example 1 as with
any of the other examples. Moreover, once it found any special
attributes at all, JAWS fell apart on parts of the table where I didn't
use those attributes and it *should* then have been able to figure out
the headings by following the default rules. The moral is: either be
prepared to mark up the attributes *fully*, or don't bother at all.
Your examples look good. I ran a quick test for each of them. For
whatever reason, I used the Ctrl + Alt + KeyPad (5) to read current
cell with references to Column header(s) and Row header(s) if any. All
seems working except the last one, which omits the top two levels of
column headers, so, for instance, if my cursor is at cell (C8R5) of
Example 7 table, JAWS would read it as follows:
Horse Canada xx
instead of
Animals Mammals Horse Canada xx

Also, though example 1 and 2 are perfectly correct, I find them
illogical to construct while the ones that I've constructed seem
logical to me and works.

Sep 5 '06 #12

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: dnb | last post by:
What follows is a rough outline of what I've been trying to do and thedifficulties I've encountered: I'm trying to make an applet accessible. I've used the Java Accessibility API toprovide an...
2
by: George Hester | last post by:
I have a disibility. But the disibility I am thinking of is that of blindness. My understanding is that someone who is blind relies on a attribute of tags be they in forms or anchors. And that...
4
by: Harlan Messinger | last post by:
I've had this in the back of my head for a while. Take a look at Example 1 on http://gavelcade.com/table.html There are three levels of column headings. All table accessibility discussions...
54
by: richard_quick_uk | last post by:
Hi, If anyone's got the time I'd really appreciate any feedback on the accessibility of this site: http://www.cata.co.uk/_index.a­sp
52
by: Andy Dingley | last post by:
I'm using this at present: <p title="Publication date" ></p> Works fine on screen, but Fangs/Jaws just reads it as "left bracket twenty-eight slash zero slash two thousand five fifteen colon...
0
by: Veli-Pekka Tätilä | last post by:
Hi, My first post here. I've found some serious accessibility flaws in the Python 2.4 docs and wish they could be rectified over time. I'm very new to Python and initially contacted docs at python...
0
by: Sushant Bhatia | last post by:
Hi all. I'm in a bit of a pickel. I need to be able to interface with JAWS programatically in C#.NET and so far all I have been able to find is documentation on how you can call scripts. I...
4
by: waltborders | last post by:
Hi, Because the blind are unable to use a mouse, keyboard navigation is key. A major difficulty is that not all windows forms controls are keyboard 'tab-able' or 'arrow-able' or have "tab...
2
by: Brian Cryer | last post by:
I'm working on a project using VB.NET where the customer is very fussy about accessibility. One of the requirements that I'm trying to meet is that tables should have a summary, for example (and...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.