Auxiliary document data, pop-ups and range links
Ishida,Richard (Richard_Ishida.rxl@eur.xerox.com)
Sat, 12 Jul 1997 05:50:57 PDT
Date: Sat, 12 Jul 1997 05:50:57 PDT
From: Richard_Ishida.rxl@eur.xerox.com (Ishida,Richard)
To: www-html@w3.org (w3c html)
Subject: Auxiliary document data, pop-ups and range links
Message-Id: <"<AF69C63381AF667C>AF69C63381AF667C@RXL-WGCMS02.RX"@-SMF->
Cc: Richard_Ishida.rxl@eur.xerox.com (Ishida,Richard)
Proposals for: access to ?auxiliary document data?
provision of ?pop-up display boxes?
the ability to specify ranges of HTML text for includes,
auxiliary document data, etc.
From: Richard Ishida
DISCLAIMER
These are intial thoughts. I would like to test the water before
spending more time on this, and if it is a good idea others could
probably take it forward more effectively. I don?t think what I am
proposing can currently be achieved with HTML 4 without the use of
scripting - please, tell me if I?m wrong. My feeling is that this
should be core HTML functionality, and not subject to the current
variable reliability and vendor dependent nature of scripting
implementations. If this has already been proposed before, please excuse me.
EXAMPLES OF INTENDED USE:
1 I am reading a document about translation technology. I come across
the term ?source matching? which is highlighted (let us say by a
dashed underline, but that is user definable). I click on the
highlighted term and a small box pops up on top of the document I?m
reading containing a definition of the term. The definition could
contain just a single sentence of text, or may contain several
paragraphs with embedded objects or images - ie. a mini HTML page). I
click on the box or hit carriage return, the pop-up disappears and I
continue reading. This has significant benefits over loading a
complete new page in that I can maintain my visual context in the
original document. Because I had told my user agent to preload the
auxiliary data into the cache, it would also make it much faster than
loading an additional page.
2 I am using an HTML document which includes non-textual icons for
navigation or other purposes. The text has been removed and the icons
made internationally acceptable because this reduces the work involved
in localising this page. As my mouse moves over the icons a small
pop-up appears containing a prompt. This is better than a tool-tip
approach, because the pop-up contains real HTML, and it is application
independent. It can be large-sized for accessibility purposes using
stylesheets, and could even contain additional images and text (eg. a
warning triangle and an associated message). As I move my mouse away
from the icon the pop-up disappears.
3 I?m in the middle of reading a boring document and I want to look
quickly at the contents, to see how much further I have to go. Again
I don?t want to lose my visual context on the original page. Perhaps
my user agent makes available the contents page, defined in a LINK
statement, via a menu selection, or perhaps a contents icon is
available in another frame, etc.. Because I told my user agent to
cache the contents page in the background, it pops up straight away in
a scrollable pop-up on the screen (defined by the author in terms of
screen width and location).
The pop-up idea is different from that of creating a new window,
because I can control the size and placement, and it doesn?t carry all
the buttons, headers, etc., so it can be used inobtrusively. It is
also easier to dismiss.
SUGGESTIONS FOR STORAGE OF THE AUXILIARY DATA
4 Auxiliary data is data which supports the current page, but is only
displayed on request.
5 Auxiliary data could be stored inline (say, within a POPUP element),
could be declared elsewhere in the current document (say, within an
AUXIL element - rather like a script declaration contains functions -
see below for the range selection concept), or could be accessed via a
URL from another document (again with the possibility of identifying
only a selected range of text within that document).
6 I would like to see the user agent preload into the cache any
external files containing auxiliary data as soon as it has loaded the
file which refers to it (although this could be made user definable).
This could make a POPUP work quite quickly once the user reached the prompt.
7 An elegant way of doing this may be to have a link type ?Auxiliary?
in the LINK element, but the user agent should probably also parse the
document for other references. I think it would help to have an
attribute for the LINK element which the author could use to
explicitly specify that a file be cached (of course if the file was
already in the cache, this wouldn?t provoke any action).
8 We should be able to specify lang and charset info as we call in or
define the auxiliary data.
SUGGESTIONS FOR ACCESS TO RANGES OF DATA
9 I would like to see the possibility of accessing a RANGE of data
within a larger set for display either via a POPUP element, as
included text, or as a new page. Maybe this could be accomplished
using the DIV element or a new RANGE element with an ID attribute.
Any link or reference to this id would pick up all the text included
in the element describing the range. The range could be specified
within the AUXIL element of the current page (see above), within the
body text of the current page, or within the body or AUXIL text of
another page accessed via a URL.
BENEFITS: Start with the glossary example above, and assume that all
my glossary information is held in a gloss.htm file which I could also
display as ?THE glossary?. I don?t want to write a term definition
more than once, but I may also want to access JUST that term
definition on other pages. In this case, I can identify a specific
range of the glossary document associated with the term I need and
display/include just that.
Keeping all snippets of auxiliary text in one or a small number of
files to service a large set of HTML pages, rather than having them as
separate files, would benefit in the following ways:
- it would be easier to create the material
- it would be easier to manage configuration control
- it may be significantly easier and faster to localise the data
(especially when it comes to configuration control across five, ten or
more languages!)
- if the whole document was cached once, it could give faster access
to specific items of auxiliary data.
10 It may also make sense to extend this idea of ranges to data which
is not strictly speaking auxiliary data. For example, any short
phrase which is repeated a number of times on a particular page could
be referred to using a range element the first time it is used and
called in to the text where needed further down the page. This could
concievably carry benefits in terms of consistency, reduced file size
and productivity in page creation.
11 Then, of course, we could look at extending our idea of accessing
small amounts of a larger corpus so that we could access data records
in a database.
SUGGESTIONS FOR IMPLEMENTATION OF THE POPUP
12 A POPUP element would need to provide access to the ?auxiliary data?
which will be displayed, and enclose a stretch of HTML which serves as
the prompt.
13 Style rules could be used to indicate how the prompt would be
highlighted, although a default may be appropriate.
14 The author should be able to specify the event which causes the
pop-up to appear and be dismissed (eg. click, mouseover, etc.). There
may be a case for a new ?CR/Enter? event used to dismiss an open pop-up??
15 We should be able to set the border of the pop-up, it?s background
colour, margins, it?s size and location on the screen and/or browser
window, etc.
16 If there is insufficient space to display all the data in a pop-up,
scroll bars should appear by default. The author should be able to
create pop-ups of a specific size, whether or not all the text fits.
Should NOSCROLL or NOWRAP options be available??
17 Should we allow pop-ups within pop-ups?
18 If we allow links within a pop-up, do we use a TARGET-like approach
to decide where the new data will go? Should we just neutralise links
within HTML when it is displayed in a pop-up??
19 Older browsers which don?t provide pop-ups may do best to ignore the
auxiliary data. (?)
Thoughts?