COMPOSITE (was Re: APPLET = FIG)

Paul Burchard (burchard@horizon.math.utah.edu)
Mon, 5 Jun 95 20:48:19 EDT

Brian Behlendorf <brian@organic.com>
> On Mon, 5 Jun 1995, James C Deikun wrote:
[...scripting discussion deleted...]
>
> > <LINK> could serve a
> > similar purpose.
>
> Conceivably, but what would the REL values be, and what
> would they mean? Would <LINK REL="input"
> HREF="java.app"> mean to take this HTML page as input to
> the script? Hmm, this would deal with the
> script-controlling-multiple-places issue nicely.

While I like <LINK REL=Script>, it's too global to be the general
solution for scripting. Think about VRML, and it'll be especially
clear that you want be able to take advantage of the hierarchical
document structure and bind the script to a subdocument.

Unfortunately, HTML does not have any support for link composition,
so we can't use <A REL="Script">...subdocument...</A> to perform
this binding. I'd hate to be responsible for the introduction of a
new special-purpose tag, so let me use this as an opportunity to
raise the issue of link composition again.

Since my last attempt at link composition for HTML was shot down as
a semantic quagmire, let me float a simpler idea (so simple it's
almost silly). All we really need is a _nestable_ form of <A> which
takes REL seriously. Then the composition semantics only have to
deal with two items at once -- the object referenced by the link,
and the content of the element itself. REL already handles this
just fine.

Since <A> is too well-established to tamper with (even in such a
minor way) we'll have to make this a new element; call it
<COMPOSITE> for now. And, as long as we're making <COMPOSITE> a
conservative upgrade from <A>, we might as well give it more
sophisticated control over anchor layout. This largely eliminates
the need for a separate <FIG> element.

So for example, a figure would be replaced by a composite anchor
having REL=Figure:

<COMPOSITE REL=Figure HREF="pic.jpg" HEIGHT=100 WIDTH=100>
alternate text
</COMPOSITE>

Similarly, binding a script to a subdocument would be accomplished
by composing the script with the contents of the anchor, according
to REL=Script:

<COMPOSITE REL=Script HREF="http://www/script.class#x=1;y=3" ...>
this part of the document will
be controlled by the script
</COMPOSITE>

The SGML declaration of COMPOSITE would be exactly as for FIG,
except that:
* COMPOSITE would be nestable (and could contain IMG elements)
* the SRC attribute would be renamed to HREF
(If we want to completely elimimate FIG, we'll also have to think
about what to do with the already awkward IMAGEMAP attribute.)

--------------------------------------------------------------------
Paul Burchard <burchard@math.utah.edu>
``I'm still learning how to count backwards from infinity...''
--------------------------------------------------------------------