Re: <FIG> implies <P>?

Daniel W. Connolly (connolly@beach.w3.org)
Thu, 13 Jul 1995 12:25:28 -0400

In message <Pine.3.87.9507121931.E10399-0100000@novice.uwaterloo.ca>, Ka-Ping Y
ee writes:
>Dan Connolly wrote:
>> Suffice it to say that HTML 3.0, like many other markup languages,
>> includes two idioms for graphics: the <img> element for phrase-level
>> stuff, like little funny characters or inline icons (or inline
>> math formulas or ...) and <fig> for "displayed formulas" or graphic
>> callouts or ... .
>
>Understood. But this doesn't mean that functionality should be
>*removed* from FIG. It just seems very strange to me that this extra
>limitation exist, purely as a limitation that to me yields no observable
>advantage.

Hmm... my view is that there is functionality (alternate-media
presentation) missing from <IMG>, not missing from <FIG> (the
ability to display a fig in a para).

>Correct me if this is irrational, but my impression of the purpose of
><fig> is to provide an alternate-media representation in order to enhance
>the communication of a concept

That seems right on to me.

> -- which might be associated with text
>describing or referring to that concept, or which might be completely
>independent of text. It seems the former is much more likely, though
>both of these uses are still distinctly different from the "inline" idea.

That's getting pretty subtle, but I guess I see your point.

>I'd imagine that the actual positioning of a <fig> element is not the
>key piece of information, so that browsers could be considered
>conformant whether they render a <fig> before, after, or wrapped by the
>paragraph within which it appears. I could even see a browser replacing
>figures with references, then attaching a list of figures after the text.
>But this does not mean we should remove the ability of an author to
>*suggest* where a <fig> can appear.

Good point.

>With a slight alteration -- say, the addition of the ID attribute, you
>might have
>
> <p>The bond angle between the two oxygen-hydrogen
> bonds in water is slightly larger than that
> between two carbon-hydrogen bonds in methane
> (<fig src="molecules.jpg" id="1" align="right">
> figure 1 shows models of CO2 and H2O molecules
> </fig>). This is due to the two extra pairs of
> free electrons around the oxygen atom, which
> take up more space than the bound pairs.</p>
>
>which might appear rendered as
>
> The bond angle between the two oxygen-hydrogen
> bonds in water is slightly larger than that
> between two carbon-hydrogen bonds in methane
> (see figure 1). .---------------------------.
> This is due to | |
> the two extra | |
> pairs of free | |
> electrons around | |
> the oxygen atom, `----------------figure 1---'
> which take up more space than the bound pairs.
>
>Or the alternate text "figure 1 shows models of CO2 and H2O molecules"
>could appear in the parentheses as a link to download the image.
>
>My point is that it often makes more sense for a figure to relate to
>the text (not the same as being incorporated into the text like an IMG)
>than to stand on its own.

I hate speaking for Dave, but he's no where near caught up with
his mail...

During the white-board discussion that Dave and I had, we discussed
this sort of thing, including the way FrameMaker allows you to
align figures all sorts of fancy ways with respect to the paragraph
in which they're anchored.

We considered the possibility of expressing the above situation as:

<p>The bond angle between the two oxygen-hydrogen
bonds in water is slightly larger than that
between two carbon-hydrogen bonds in methane
(see <a href="fig1">figure 1</a>)<spot id=fig1anchor>. This
is due to the two extra pairs of free electrons around the
oxygen atom, which take up more space than the bound
pairs.</p>

<fig src="molecules.jpg" id="fig1" align="right" at="fig1anchor">
figure 1 shows models of CO2 and H2O molecules
</fig>

This way, the content models aren't changed: <FIG> is still a
peer of <P>. But the <spot> element allows the author to suggest
where the figure should be anchored in the paragraph.

Do you think that would work?

Dan