A less-painful way of adding dictionaries to HTML...

Rob (wlkngowl@unix.asb.com)
Tue, 30 Sep 1997 15:51:08 -0500


Message-Id: <199709301959.PAA24113@unix.asb.com>
From: "Rob" <wlkngowl@unix.asb.com>
To: Aymeric Poulain Maubant <Aymeric.PoulainMaubant@enst-bretagne.fr>
Date: Tue, 30 Sep 1997 15:51:08 -0500
CC: www-html@w3.org
In-reply-to: <199709301100.NAA23544@melimelo.enst-bretagne.fr>
Subject: A less-painful way of adding dictionaries to HTML...


This is yet another idea, but seems the best way (and in theory could be 
added right now without breaking validated pages):

Maybe the simplest way to implement a dictionary of terms, acronyms and 
abbreviations:

  <link rel=Dictionary href="dictionary.html">

Where "dictionary.html" contains plain old definition lists:

  <dl> <!-- note a case where multiple DT elements occur before DD -->
  <dt>US
  <dt>USA <!-- we don't need U.S.A. as punct. is ignored -->
  <dd>United States of America
  <dt>HTML
  <dd>Hypertext Markup Language
  </dl>

(Other elements outside of definition lists would be ignored by a browser 
that parses the definitions.)

A dictionary-aware browser would recognize the definition terms in a 
document and provide some mechanism for returning the definition 
(possibly specified in style sheets).  The terms could have CSS and ACSS 
classes or IDs to indicate how it should be marked up or pronounced 

And note using DT/DD rather than an attribute with a definition allows 
for more elaborate explanations or definitions!

ACRONYM, ABBREV, etc. would become obsolete. Words (ignoring
punctuation) would be checked with entries in the dictionary. Phrases may 
be a bit more complex... so possibly an attribute added to SPAN or a DICT 
(for "dictionary") element to signal that something should be checked.

As for markup rules: given a term SFN which "Stands for Nothing", there 
are many ways a browser can handle this:

  (1) display/pronounce "SFN (Stands for Nothing)"
  (2) highlight SFN in some way, so when the user selects it some
        form of pop-up window/footnote with the definition appears
  (3) a hypertext-link to the dictionary file where that term occurs
  (4) some other way

Also (adjustable for each term via style sheets or some other method):

  (1) whether the above behavior should only be for the first occurrence
        of a term in a document (preferred; also keeps a document from
        turning into 'hyperwocky')
  (2) behavior should be manually turned on for specific occurences
        using an attribute in SPAN or DICT
  (3) behavior should be for every occurrence of the term

Some kind of reference selector is needed for cases where words or 
acronyms have multiple meanings.

At most one other element is added, or maybe a couple of extra attributes 
added to SPAN (and ACRONYM?).

This method seems best since it does not require major editing of 
existing documents to be of use, and browsers/user-agents which do not 
recognize dictionaries will not choke on it (but users may still be able 
to take advantange of it, even if manually reading the dictionary file).

Rob


-----
"The word to 'kill' ain't dirty    | Robert Rothenburg wlkngowl@unix.asb.com
 I used it in the last line        | http://www.asb.com/usr/wlkngowl
 but use the short word for lovin' | http://www.wusb.org/mutant
 and Dad you wind up doin' time."  | PGP'd mail welcome (ID 0x5D3F2E99)