HTML 3 Tables: Caption/Note and Axes
Wed, 22 Feb 95 08:13:49 EST

===========Part One: Dave Asks about ICADD Tables=======================

In the HTML3.0 DTD, Dave asks:

Table content model: To avoid wide cells, Braille needs some
kind of note element. The cell content is moved to a note,
and a reference to this is placed in the cell in question.
Couldn't we just use foot notes (FN) here?

This is the full explanation of what's going on here: The big deal in
Braille is real estate, that is, you get roughly 40 characters per
line, you try to use them as compactly as you are able.

Occasionally in tables, you find one or two cells which contain
textual content, perhaps a paragraph or set of phrases. (It doesn't
matter how long they actually are, as long as they are longer than
the average cell content for that column.

A Braille expert building a table attempts to build the table being
as faithful as possible to the original visual representation, that is,
the table is set up with rows and columns, and the contents of any
particular cell should fit into the column.

However: If a cell's contents if especially long, that content is
usually moved to *before* the table starts, and marked with an
indicator much like a footnote marker. The blind person reads this
first, notes the indicator, and knows, when he or she runs into the
same indicator within a table cell, to substitute the contents of the
note for the contents of the cell.

Unfortunately (from the point of view of the simplicity of a table
model) this is not the same as a footnote for several reasons:
1) It appears before the table not after.
2) Most importantly, it is a by-product of the Braille translation
process -- it is *not* a reflection of existing original text. A blind
person may yet run into footnotes on the table; they need to be
distinguishable as such. (In multi-page tables, for example, key
footnotes may be repeated in a footer on each page. These are not like
those at all, and would be confusing if they found their way into a

===========Part Two: A Question Dave Didn't Ask=========================

I'm very glad that the HTML3 table model has certain key features that
enable its translation into the ICADD table model (which enables Braille,
synthesized voice and large print representation). Because of the
requirements of the voice and of Braille (which may also require that
a table be pivoted: rows to become columns and vice versa in order to
make a narrower table while preserving the relationships that existed
in the original), Dave has added the axis attributes to table cell model:

<!ATTLIST (%cell)
colspan NUMBER 1 -- columns spanned --
rowspan NUMBER 1 -- rows spanned --
align (left|center|right|justify) #IMPLIED
valign (top|middle|bottom) top -- vertical alignment --
nowrap (nowrap) #IMPLIED -- don't wrap words --
axis CDATA #IMPLIED -- axis name, defaults to element content --
axes CDATA #IMPLIED -- comma separated list of axis names --

I think for the sake of correctness, these should be separated out:

Only TH has the AXIS attribute. This is where you give each row or
column a one-word name to allow software to tell you where you are
in the table by reading all applicable column and row headers.

Only TD has the AXES attribute. This is where software might store
the names of all the applicable AXIS values of the applicable row or
column header cells. (This assumes some software won't be able to
calculate these on the fly, particularly in tables which may stretch
across physical pages in some representations.)

I would still like to see the TR model be
(TH*, TD*)
instead of the current
(TH | TD)*
in order to recognize and encourage the fact that (for machine
processabilitiy if nothing else) a mechanism which starts with the
table cell need look up and to the left in order to determine all
the applicable AXISnames for its content.

This is the voiced representation of three cells from
a table with two layers of row heads and two layers of column heads:

TEA : Jasmine : Bagged : Ounce : 62 cents
TEA : Oolong : Bagged : Ounce : 48 cents
COFFEE : Mocha : Package : Pound : $6.88


Yuri Rubinsky +1 416 239-4801
Chairman, SGML Open (800) 387-2777 (from US only)
President, SoftQuad Inc. uucp: {uunet,utzoo}!sq!yuri
Suite 810 56 Aberfoyle Crescent Internet:
Toronto, Ontario, Canada M8X 2W4 Fax: +1 416 239-7105