W3C home > Mailing lists > Public > public-html@w3.org > September 2009

Re: what is dt?

From: Shelley Powers <shelleyp@burningbird.net>
Date: Tue, 15 Sep 2009 14:48:09 -0500
Message-ID: <4AAFEF79.2010204@burningbird.net>
To: Smylers@stripey.com, public-html@w3.org
Hopefully this email will get through. Thunderbird seems to be 
completely and thoroughly broken for me now.

It's probably been redefined to using HTML5, and was counting on dialog, 
and died a sudden death...

Smylers wrote:
> Shelley Powers writes:
>
>   
>> So now, rather than "dt" being a definition term, it's become, well I
>> don't know what it's become. Something.
>>     
>
> Hi Shelley.  I think in all these cases <dt> is being used to label the
> content in the corresponding <dd>:
>
>   
>> It's used in its previous incarnation, as part of a definition list:
>>
>> <dl>
>> <dt lang="en-US"> <dfn>color</dfn> </dt>
>> <dt lang="en-GB"> <dfn>colour</dfn> </dt>
>> <dd> A sensation which (in humans) derives from the ability of
>> the fine structure of the eye to distinguish three differently
>> filtered analyses of a view. </dd>
>> </dl>
>>     
>
> "color" and "colour" are the labels for that description.
>
> But note that <dt> isn't necessarily a definition list -- it can be used
> for a list of any name-value pairs.
>
>   
For the past ten years or so, dl, dt, and dd have been defined within 
the context of a definition list. People may have used them for other 
things, but no where has there been even a hint that such use was 
"acceptable" or appropriate.

Except now, when seemingly dt and dd have become HTML5 silly putty: good 
for a hundred and one uses.

>> And now, seemingly, its a part of the so-called "details" element,
>> whose purpose is, well, I'm trying to figure that one out, "The
>> details element represents additional information or controls which
>> the user can obtain on demand", not being particularly helpful.
>>     
>
> It's a way of making additional details about something available to
> users without them necessarily being exposed all the time.  For example
> on your Twitter homepage the sidebar has 'Trending Topics' and
> 'Following', whose contents can be expanded or collapsed.
>
>   
>> I'm assuming its a pure Ajax type thing,
>>     
>
> Not really -- using <details> doesn't require any asynchronicity,
> JavaScript, or XML (though pre-HTML5 implementations obviously need
> JavaScript to achieve the same results as <details> will).
>
>   
>> meant to be exposed when something is clicked.
>>     
>
> Yeah.
>
>   

We have managed in the last decade or so to handle this type of behavior 
using CSS and/or JavaScript. If this behavior, not markup, not page 
element, behavior, is now deserving of its own element, why stop there? 
Where is dropdown menu? Where is tab? Where is accordion? Where is 
alternative table row?

At some point in time the HTML WG has to stop trying to define the 
entire behavior of the web in some new semantic element.

What boggles me the most, is that the same time this change was made, 
dialog was eliminated. Yet dialog is the one that people have been 
trying to mark up effectively for the last ten years.

Boggles

>> Anyway, dt within details is supposed to provide the summary of the
>> details. So, I guess it's now "definition term" and "details term".
>>     
>
> Again, the <dt> is labelling the content
>   

Suggestion: use any search engine, check for dt, dd, and dl. In the 
first several pages of returned results, find me one instance where 
people aren't talking about these elements in the context of a 
definition list.

>> Now, dt is used in figure, as caption:
>>
>> <p>In <a href="#l4">listing 4</a> we see the primary core interface
>> API declaration.</p>
>> <figure id="l4">
>> <dt>Listing 4. The primary core interface API declaration.</dt>
>> <dd>
>>  <pre><code>interface PrimaryCore {
>>  boolean verifyDataLine();
>>  void sendData(in sequence&lt;byte> data);
>>  void initSelfDestruct();
>> }</code></pre>
>> </dd>
>> </figure>
>> <p>The API is designed to use UTF-8.</p>
>>     
>
> And there the <dt> is labelling the figure, whose contents are in the
> <dd>.
>
>   

If we're redefining semantics, which is the exact  same thing as saying 
we're rejecting semantics, then why not at least use something that is 
meaningful? Such as caption?

Why on earth are we using such inappropriate elements, when there's one 
to hand that at least sounds about right?

>> I guess dt means...actually, I give up. I don't think that dt means
>> anything anymore.
>>     
>
> Having <dt> always label its associated <dd> seems consistent.  The main
> problem is its non-intuitive name (though that's hardly unique among
> HTML elements); all the good names already have other behaviour in
> existing browsers, and it seems folks aren't prepared to wait a few
> years before <details> or <figure> are usable.
>
> Smylers
>
>   

Look at Figure now. The thing is so painful to look at, it's like 
fingernails across a chalkboard.

We have a Figure element, we might expect to see caption, but we see dt 
instead, causing a mental jerk, because dt has been used for the past 
ten years for something else, and then we're throwing the figure content 
into a dd element.

Ugh, ugly, ugly.

This was such a bad decision. No thought either, just throw something 
out because some "super friends" had a hissy about legend. I agree by 
the way, about the use of legend, but their suggestion was for "label".

It's unfortunate that decisions are seemingly being made because some 
people are well known, based on quick impulses, because really the HTML5 
author just doesn't care.

It's unfortunate that such decisions are leading to even a worse 
specification.

Shelley
Received on Tuesday, 15 September 2009 19:48:55 UTC

This archive was generated by hypermail 2.3.1 : Monday, 29 September 2014 09:39:08 UTC