Re: Strange definition of Frame in Cougar DTD
Doug Sheppard (sirilyan@dlcwest.com)
Tue, 29 Apr 1997 10:30:14 -0600
Message-ID: <33662215.56E4D9D2@dlcwest.com>
Date: Tue, 29 Apr 1997 10:30:14 -0600
From: Doug Sheppard <sirilyan@dlcwest.com>
To: Masayasu Ishikawa <mimasa@vega.aichi-u.ac.jp>
CC: www-html@w3.org
Subject: Re: Strange definition of Frame in Cougar DTD
Masayasu Ishikawa wrote:
>
> Hi,
>
> I checked 18-Apr-97 version of Cougar DTD and found a strange definition
> related to Frame. In Cougar DTD, FRAMESET element is defined as:
>
> <!ELEMENT FRAMESET - - (FRAMESET|FRAME)+>
>
> There's no space for NOFRAMES, isn't it? It should be
>
> <!ELEMENT FRAMESET - - (FRAMESET|FRAME|NOFRAMES)+ >
Netscape's own implementation implies that the first is correct.
> or at least
>
> <!ELEMENT FRAMESET - - ( (FRAMESET|FRAME)+ & (NOFRAMES?) )>
>
> I think NOFRAMES element should be defined as COMPULSORY element
> for Frame document, because without NOFRAMES, Frame document becomes
> totally useless for user agents that don't support Frame.
How so? Without *some sort of* information not in the FRAME element,
the document becomes useless. The use of NOFRAMES was syntactic sugar
that Netscape originally introduced and I for one never see a need for
it (but see below). To a non-frame-supporting browser, there's no real
difference between
<NOFRAMES>
<BODY>
&body.content
</BODY>
</NOFRAMES>
and
<BODY>
%body.content
</BODY>
(Perhaps the latter breaks on some frame implementations, but *I*'ve
never had any trouble with it on the frame-aware browsers I've tried,
and Netscape has been remarkably poor about providing support for
questions of their HTML extensions.)
The most recent HTML-WD on frames gives NOFRAMES as a container within
the body; browsers that don't understand NOFRAMES will ignore it as an
unknown tag, while those that do will not render its content. In a
(presumably) Cougar-compliant browser,
<BODY>
<NOFRAMES>
<IMG SRC="nav.png" ALT="Navigation bar" USEMAP="#map">
</NOFRAMES>
%body.content
</BODY>
will only display the navigation bar image if the browser does not
currently have frame support activated.
-Doug