Re: HTLM 3.0 <A> definition

Wolfgang Rieger (rieger@muc.de)
Fri, 16 Dec 1994 17:39:54 +0100


>>It is common usage, that for elements which appear in inclusion exception
>>lists end tag omission is not allowed. Otherwise the place where an end tag
>>would be implied by a SGML parser would depend very much on the version of
>>the HTML DTD used, since it would be the first start tag not allowed in the
>>content of A preceding an end tag of an element enclosing the anchor tag.
>
>Sorry, call me dense but I don't see how this is any more difficult to deal
>with than the way that LI (for example) is used. Yes, A is specifically
>excluded from appearing inside an anchor, while LI can appear inside a list
>which is inside an LI, but that seems to me to be of no consequence.
>
>>That was: regarding _SGML parsers_. A WWW client would either use a simpler
>>method (deviating from them SGML standard), or clients would have to be
>>SGML-aware. Both are undesirable consequences.
>>
>>Finally, not only WWW clients would have to figure out where the A element
>>ends, but authors of HTML documents would have to do that, too.
>
>Within the limits of my understanding, that would seem to be the case already
>with LI and similar tags. I'm not so sure that having clients be SGML-aware
>is undesirable, either.

It is undesirable, because clients cannot tell, wether a document is
conforming or not. So - being SGML-aware - they would have to parse all
received documents with a certain DTD, barfing at all the non-conforming
documents they receive.

The difference between LI and A is, that

1) LI can appear only in a well-defined structural context (lists),
and
2) clients do not have to do a thing, when a </LI> is encountered or
to be implied, whereas they have to do something, when they see
the </A>-tag, nameley stop using the special anchor-rendering.

>A convention could be established that end-tag omission on an anchor is only
>used when the anchor is defining a name, never when the anchor is defining a
>hypertext link. Authors who violate this convention would get what they
>deserve.

The whole idea of SGML is replacing informal conventions with formal
specifications. That the A element is used both for link source and link
target was probably not one of the best design decision in HTML.

>As it happens, this appears to be the de-facto state of affairs, at least so
>far as WebMaker is concerned. If this is not to be the standard, then WebMaker
>needs to be changed and any documents using this technique need to be cleaned
>up.

This "feature"of WebMaker is a plain bug in my eyes, since the DTD says,
that there is no end tag omision for A. And WebMaker needs to be changed
then, yes.

Greetings

Wolfgang Rieger

---------------------------------------------
Wolfgang Rieger
c/o Buero fuer Software-Entwicklung
Frankfurter Ring 193a
80807 Munich
Germany

Tel. : +49 89 323 19 93 Fax: +49 89 323 19 93
Email: rieger@colin.muc.de
---------------------------------------------