Re: Frames and Documents (fwd)

Paul Prescod (papresco@calum.csclub.uwaterloo.ca)
Fri, 06 Sep 1996 13:48:09 -0400


Message-Id: <1.5.4.32.19960906174809.0075470c@csclub.uwaterloo.ca>
Date: Fri, 06 Sep 1996 13:48:09 -0400
To: MegaZone <megazone@livingston.com>, www-html@w3.org, www-style@w3.org
From: Paul Prescod <papresco@calum.csclub.uwaterloo.ca>
Subject: Re: Frames and Documents (fwd)

At 12:59 PM 9/4/96 -0700, MegaZone wrote:
>>The way to do away with the various problems that TARGETs, bookmarks, titles
>>etc present is to always have a document as a main document that may create
>>frames (that either contain part of the same document or other documents).
>>ALL links refer to what is now known as the _top frame, and if these
>>documents contain the same or other frames, that's fine. Otherwise they
>>occupy the whole window, as they should.
>
>This is terrible.  So we get to reproduce the same data on EVERY page if
>we want the same frame?  If this is the case, you may as well not bother
>as the public will ignore such a system completely and simply continue to
>use Netscape's system.  A standard that has LESS capabilities then the 
>current de facto standard may as well never exist.

I don't have any problem with having documents from different URLs appearing
in different frames, but don't you think that the syntax for linking
together the different documents should be orthogonal from the syntax for
determining what frames they go in? I am thinking about something like this:

<HEAD>
<TITLE>This is my table of contents</TITLE>
<STYLE>
/* specifies that the target of "chapter" links go into a frame of a certain
size in a certain location */
</STYLE>
</HEAD>
<A CLASS="chapter" TITLE="Chapter 1" HREF="chapter1.html" >Chapter 1</A>
<A CLASS="chapter" TITLE="Chapter 2" HREF="chapter2.html">Chapter 2</A>

And then a style sheet could specify how the chapters are layed out when you
follow a link to one. This is very backwards compatible. On the other hand,
if you wanted to make it one long document, you would do this instead:

<HEAD>
<TITLE>This is my document</TITLE>
<STYLE>
/* specifies that "chapter" DIVisions go into a frame of a certain size in a
certain location */
</STYLE>
</HEAD>
<A CLASS="chapter" TITLE="Chapter 1" HREF="#chapter1" >Chapter 1</A>
<A CLASS="chapter" TITLE="Chapter 2" HREF="#chapter2">Chapter 2</A>
<DIV CLASS="chapter" TITLE="Chapter 1" NAME="chapter1">
<H1>Chapter 1</H1>
...

Both the calling link's style sheet and that of the targetted document
should have opportunity to influence which frame the document goes in, (and
probably the calling link would win in case of conflict).

You should also be able to use transclusion, instead of hypertext linking,
if that is appropriate:

<HEAD>
<TITLE>This is my document</TITLE>
<STYLE>
/* specifies that "chapter" OBJECTs go into a frame of a certain size in a
certain location */
</STYLE>
</HEAD>
<OBJECT CLASS="chapter" TITLE="Chapter 1" HREF="chapter1.html" >Chapter 1</A>
<OBJECT CLASS="chapter" TITLE="Chapter 2" HREF="chapter2.html" >Chapter 2</A>

And then in a UA with OBJECT but not FRAME (not necessarily a browser...),
the different parts would be interpreted as one logical document, and in a
browser with FRAME, they would be one logical document, but presented across
frames.

Note that I have used <A - based links for backwards compatibility. You
could also use <LINK for the same thing.

 Paul Prescod