Next in thread → Next in month →

Example: Subtable Accessibility Issue

From
Richard Schwerdtfeger <>
Date
2006-08-15T21:37:23+00:00
ID
Thread
Example: Subtable Accessibility Issue
Hiro asked me to post:

Before explaining subtable issue, let me explain the issue in HTML.

Let me show you examples of HTML tables. 

Table 1 in sample.htm shows an example of accessible table without nested table (in HTML). 

If the current cursor positions at the "NBA Nation" cell in the Table 1, a user can easily jump to the appropriate time slot cell (8:30pm) by using row header jump/read key. 

Table 1: Example of a table without any nested table

---------------------

    <h1>Table 1. Example of table with "span"</h1>

    <table border="1">

      <tr>

	<td></td>

	<th>CBS</th>

	<th>ABC</th>

      </tr>

      <tr>

	<th>8:00pm</th>

	<td rowspan="2">Gameshow Marathon</td>

	<td>America's Funniest...</td>

      </tr>

      <tr>

	<th>8:30pm</th>

	<td>NBA Nation</td>

      </tr>

    </table>

---------------------

However, in the case of Table 2 (in sample.htm), it is not possible to jump from the "NBA Nation" cell to the "8:30pm" cell by using table header jump command. 

There is no semantical relationship among between these two cells.

Table 2: Example of a table with nested tables

---------------------

    <h1>Table 2. Example of table with "nested table"</h1>

    <table border="1">

      <tr>

	<td></td>

	<th>CBS</th>

	<th>ABC</th>

      </tr>

      <tr>

	<td rowspan="2">

	  <table border="1">

	    <tr>

	      <th>8:00pm</th>

	    </tr>

	    <tr>

	      <th>8:30pm</th>

	    </tr>

	  </table>

	</td>

	<td rowspan="2">Gameshow Marathon</td>

	<td rowspan="2">

	  <table border="1">

	    <tr>

	      <td>America's Funniest...</td>

	    </tr>

	    <tr>

	      <td>NBA Nation</td>

	    </tr>

	  </table>

	</td>

      </tr>

    </table>

---------------------

ODF also has both the span method and the nested-table method as described in the Section 8.2.6 (p191) in ODF1.0 spec. 

The issue is current ODF editors automatically generate nested tables when a user merge/split a table cell in word processor documents. 

I will attach both examples in sample.odt. 

They look just the same. I can say there is a gap between the tag structure and the visual structure.

The "sample.odt" was manually created, since current editors do not have function to create tables without subtable (accessible).

Please do not modify and overwrite this file by using editors. Editors will automatically convert Example 1(without sub-table) into Example 2 (with sub-table). 

Example 1: Example of a table without sub-table (accessible)

-------------------------

      <table:table table:name="Example1" table:print="false">

	<table:table-column  table:number-columns-repeated="3"/>

	<table:table-row >

	  <table:table-cell />

	  <table:table-cell office:value-type="string">

	    <text:p>CBS</text:p>

	  </table:table-cell>

	  <table:table-cell  office:value-type="string">

	    <text:p>ABC</text:p>

	  </table:table-cell>

	</table:table-row>

	<table:table-row >

	  <table:table-cell office:value-type="string">

	    <text:p>8:00pm</text:p>

	  </table:table-cell>

	  <table:table-cell  office:value-type="string" table:number-columns-spanned="1" table:number-rows-spanned="2">

	    <text:p>Gameshow Marathon</text:p>

	  </table:table-cell>

	  <table:table-cell office:value-type="string">

	    <text:p>America&apos;s Funniest... </text:p>

	  </table:table-cell>

	</table:table-row>

	<table:table-row >

	  <table:table-cell office:value-type="string">

	    <text:p>8:30pm</text:p>

	  </table:table-cell>

	  <table:covered-table-cell />

	  <table:table-cell office:value-type="string">

	    <text:p>NBA Nation</text:p>

	  </table:table-cell>

	</table:table-row>

      </table:table>

-------------------------

Example 2: Example of a table with sub-table (inaccessible)

-------------------------

<table:table table:name="Example2" >

	<table:table-column  table:number-columns-repeated="3"/>

	<table:table-row>

	  <table:table-cell office:value-type="string">

	    <text:p/>

	  </table:table-cell>

	  <table:table-cell office:value-type="string">

	    <text:p>CBS</text:p>

	  </table:table-cell>

	  <table:table-cell office:value-type="string">

	    <text:p>ABC</text:p>

	  </table:table-cell>

	</table:table-row>

	<table:table-row>

	  <table:table-cell>

	    <table:table table:is-sub-table="true">

	      <table:table-column />

	      <table:table-row>

		<table:table-cell office:value-type="string">

		  <text:p>8:00pm</text:p>

		</table:table-cell>

	      </table:table-row>

	      <table:table-row>

		<table:table-cell office:value-type="string">

		  <text:p>8:30pm</text:p>

		</table:table-cell>

	      </table:table-row>

	    </table:table>

	  </table:table-cell>

	  <table:table-cell office:value-type="string">

	    <text:p>Gameshow Marathon</text:p>

	  </table:table-cell>

	  <table:table-cell>

	    <table:table table:is-sub-table="true">

	      <table:table-column />

	      <table:table-row>

		<table:table-cell office:value-type="string">

		  <text:p>America&apos;s Funniest... </text:p>

		</table:table-cell>

	      </table:table-row>

	      <table:table-row>

		<table:table-cell office:value-type="string">

		  <text:p>NBA Nation </text:p>

		</table:table-cell>

	      </table:table-row>

	    </table:table>

	  </table:table-cell>

	</table:table-row>

      </table:table>

(See attached file: sample.htm)(See attached file: sample.odt)

-------------------------

Rich Schwerdtfeger

Distinguished Engineer, SWG Accessibility Architect/Strategist

Chair, IBM Accessibility Architecture Review  Board

blog: http://www.ibm.com/developerworks/blogs/page/schwer
Title: nested table example

  
  

    Table 1. Example of a table with "span"
    
      

	
	CBS
	ABC
      

      

	8:00pm
	Gameshow Marathon
	America's Funniest...
      

      

	8:30pm
	NBA Nation
      

    

    Table 2. Example of a table with "nested table"
    
      

	
	CBS
	ABC
      

      

	
	  
	    

	      8:00pm
	    

	    

	      8:30pm
	    

	  
	
	Gameshow Marathon
	
	  
	    

	      America's Funniest...
	    

	    

	      NBA Nation
	    

	  
	
      

    
  

sample.odt
Next in thread → Next in month →