Re: Issues with <dl> [continued from Re: Concerns about the "l" element name <l>]

On Fri, 5 Nov 2004, Thomas O'Connor wrote:

> I can see where you are coming form, and have always. However I think you are being very restrictive in your views.  You are taking
> the element names too strictly/seriously, and not giving enough value to their descriptions provided in the recommendations.

No, it's not the element names that I base my point on, but the
_definitions_. Of course, if the name does not match the definition,
the name is poorly chosen - and should be changed if the entire language
is being revised with no requirement on compatibility with old user
agents.

The semantic definitions in HTML specifications are often vague,
but here we have the following:
"Definition lists vary only slightly from other types of lists in that
list items consist of two parts: a term and a description. The term is
given by the DT element and is restricted to inline content. The
description is given with a DD element that contains block-level content."

The same principle is expressed in the DTD comment, and reflected in the
heading (10.3) as well - it says "definition lists".

> I dispute all your references to <dl> being used for presentational
> purposes.  It simply isn't.  It used to associate for the
> purpose of creating this association, as well as creating a barrier
> between the term and value - to give a value to some term, and a
> term to some value, in the context of the information that it is
> provided with.

For which values of "associate"? Can you provide an example of a situation
where such "association" or "barrier" is actually used for something else
than formatting? Even a _theoretical_ example that is based on your idea
of "association" as the meaning of <dl>? The same way as we can at least
give ideas of what user agents and other software _could_ do with <dl>
if it were consistently used to mean a definition list - e.g., to store
the definitions into the browser's internal data structure so that it can
answer the user's question about a term's definition when reading another
part of the document. Or a search engine specifically searching for
definitions of a term on Web pages (something that Google can do but has
to do without help of markup since <dl> is so widely abused and <dt>
is virtually unused).

Why do say "term" when you mean a variable or a name? The word "term" is a
term. Consider the _descriptive_ statement "Another application of DL, for
example, is for marking up dialogues, with each DT naming a speaker, and
each DD containing his or her words." Do you seriously mean, or does the
specification seriously mean, that "Hamlet", as used in a play, is a term,
and "To be or not to be, that is a question" is a value of the term (or
or variable or name) "Hamlet". The "application" only reflects the
observation, by some authors, of the rendering of <dl> in browsers they
know, just as the "application" of <blockquote> for indenting (any
data) reflects the observation that some browsers indent <blockquote> content.

> > Even <dl><dt>E-mail</dt> <dd>jkorpela@cs.tut.fi</dd> ... </dt> does
> > not _define_ the value of E-mail, still less the _meaning of the term
> > "E-mail"_, which is what it should do if the markup were compatible with
> > the definition of <dl> semantics.
>
> It doesn't define _the_ value of E-mail, it defines _a_ value of E-mail
> in a given circumstance.

No, it doesn't. It simply tells my E-mail address. It does not say
anything about any value, for any meaning of "value".

> <dl>, <dt>, and <dd> mean definition list, definition term, and
> definition data because they define associations.

Why don't you call it an association list, then?

> The XHTML 2.0 draft  states:  " Definition lists vary only slightly
> from other types of lists in that list items consist of two
> parts: a term and a description. "[1].

Nothing new there.

> It does not say what the term is, nor what the description is.

Or what "is" is, or what "sex" is. If common English words are used
without giving them a specific definition, shouldn't they mean what they
mean in normal English? How _are_ we supposed to read the specs then?

> Despite my continued argument that <dl> was not intended in the strict
> way, I feel the W3C should revise its definition of
> definition lists - either removing the part about dialogue and stating
> that it is only for word definitions,

It already says that, though in a less restrictive way - a term is not
necessarily a word, it could be a sequence of words, an abbreviation,
or a special symbol.

> or clarifying that it
> can be used to create simply associations between terms and values.

No, that's not a matter of clarification. That would mean a change in
meaning, and should also be accompanied with a change in the element
names _and_ a rewrite of the _definition_ of the element. In effect,
a completely different element.

-- 
Jukka "Yucca" Korpela, http://www.cs.tut.fi/~jkorpela/

Received on Friday, 5 November 2004 07:03:08 UTC