Re: class inheretance (Was: Future of HTML)

Dataweaver (
Thu, 26 Mar 1998 22:23:24 -0600 (CST)

Date: Thu, 26 Mar 1998 22:23:24 -0600 (CST)
From: Dataweaver <>
To: HTML Structure list <>
cc: Liam Quinn <>
Message-ID: <>
Subject: Re: class inheretance (Was: Future of HTML)

On Fri, 27 Mar 1998, I wrote:
> Something along the lines of:
> <RELATION class="date" parent="datetime">
> <RELATION class="time" parent="datetime">
> At that point, anything that acts on elements with the "datetime"
> class would also act on elements with either the "date" class or the
> "time" class, or both, while anything that acts specifically on
> elements with the "date" class would have no effect on elements with
> the "datetime" class or the "time" class (assuming that they also
> don't have the "date" class, of course...).

Jay responded:
> <RELATION class="G.M.T" parent="datetime"> 26/03/98
> <RELATION class="P.S.T" parent="datetime"> 03/26/98
> ?

I was thinking more along the lines of:

   <STYLE ...>
   .time { text-color: blue }
   <RELATION class="G.M.T" parent="time">
   <RELATION class="P.S.T" parent="time">
   <SPAN class="G.M.T">12:30 PM</SPAN>
   <!-- "12:30 PM" will be rendered in blue -->
   <SPAN class="P.S.T">4:30 AM</SPAN>
   <!-- "4:30 AM" will be rendered in blue -->

Liam Quin also responded:
> Wouldn't normal HTML classes do the job?
> <SPAN CLASS=date>A date</SPAN>
> <SPAN CLASS=time>A time</SPAN>
> <SPAN CLASS="date time">A date and a time</SPAN>
> Remember that the CLASS attribute can take multiple classes.

Note that the intent of my proposal is not to find some method for
allowing an element to have multiple classes; I do understand that this is
already possible.  

My original example was a poor one.  The revised one above probably
illustrates my thoughts a bit better (thanks, Jay!).  

Note that _every_ G.M.T is, by definition, a time, so every element that
takes the G.M.T class would have to take the time class as well under the
current set-up.  By introducing a RELATION element or its equivelent (and
if someone can come up with a reasonable method for marking this up
_without_ introducing a new element, please speak up; I don't want to add
any more elements to HTML unless absolutely neccessary), you can specify
that one class is a subset of another, so that the inclusion of the
"subclass"  implies the inclusion of the "main class"; this has the
potential to reduce the size of a web page while increasing its clarity
and elegance. 

Again, I believe that this belongs in HTML instead of CSS because it deals
with the document's content rather than its layout.  If I'm wrong about
this, please correct me...

---- Jonathan Lang <> ----