Initial approach to the reading order issue

I have recently been devoting consideration to the reading order issue and
would like to share some initial thoughts.

For purposes of the present discussion, the following definitions hold:

1. "Document order" denotes the order in which the elements comprising a
document are given in the object language (E.G. HTML).

2. "Presentational order" refers to the sequence in which the elements of
a document are to be presented in the output.

Style sheet properties could be defined which enable the document order to
be modified according to specific rules so as to establish the
presentational order. This could be achieved by means of properties which
cause selected elements to be transposed within the document structure
during the formatting process. Thus, an element could be moved to the
beginning or end of the block defined by its parent element, or to the
beginning or end of its grandparent block, etc. This would enable certain
parts of the document (such as tables, perhaps also descriptions contained
within OBJECT elements etc.) to be moved to the beginning or, perhaps more
frequently in practice, the end of a section of the document, or indeed to
the beginning or end of the document itself. Selection of elements would
be based on CLASS or ID values. In the former case, all of the elements
of a particular class would be moved, with the movement operations taking
place sequentially throughout the document. It should also be possible to
move a selected element so that it precedes or follows another designated
element, the latter being identified by a specific ID value. Provision
should also be made for moving specific elements to the beginning or end
of the document, thus allowing navigation bars and forms to be relocated
as required. Perhaps this can be achieved by the generic movement controls
described above, given that the text of the document is entirely enclosed
within the BODY element; thus a command that moves the selected element or
elements to the end of the second level of the document hierarchy would
achieve the desired result (I am counting the HTML element as the first,
or outermost, level in the hierarchy).

The development of an ordering mechanism should not be considered in
isolation from the CSS work on notes. The treatment of an element within
the document as a note essentially involves two steps: (1) substituting a
reference marker (whether it be an asterisk, a sequential letter or
number, or another character) for the original element; and (2) moving the
original element to another location in the presentational order (E.G. to
the bottom of the page, the end of the paragraph or document division,
etc.). This second stage requires, at least in so far as it allows notes
to be collected at the end of a paragraph or other structural component in
the document hierarchy, the kind of control over presentational order that
has already been described. Moreover, for the purpose of spoken or braille
output, it is often convenient that notes be floated to the end of an
enclosing paragraph or section than is the case in print formatting.

However, the following example, which employs hypothetical style
properties for affecting the presentational order, would also be useful in
print:

<p class="note"> Text of note. [...]

and later in the document:
<h2 style="display: none" id="notes"> End Notes </h2>

A style property would be included in the relevant style sheet, or in the
head of the document, which would cause the notes to be moved, in order of
their occurrence in the HTML source, to a location which is defined as
immediately following the element with id="notes" (in this case, the
heading, which would not be displayed on screen due to the "display: none"
style property). Incidentally, I would like confirmation from a CSS expert
of whether, due to the default media type of SCREEN, the heading in the
foregoing example would be suppressed from screen output, but would still
appear in print or an audio rendering as desired.

Another style property would, of course, also need to be given, which
would define the kind of reference marker that would be used in the main
text of the document to indicate the note.

With regard to tables, it may be necessary to define style properties that
would enable elements to be arranged, in the presentational order, in
accordance with numerical values supplied in their ID attributes. I seem
to recall discussion of such a possibility on the list.

In closing, I wish to emphasise that I am definitely not an expert in the
document ordering issue, and have not had time to read relevant parts of
the DSSSL standard, in which a transformation language is defined that
could perhaps provide a suitable model on which to build a CSS mechanism
for rearranging the structure of documents. I am sure that members of this
working group who have had more experience in this field can quickly
decide whether the ideas expressed in this message are of any value.

Regards,

Jason.

Received on Tuesday, 30 September 1997 03:48:02 UTC