[Bug 8404] Refocus the figure element back to being a figure


--- Comment #36 from Shelley Powers <shelleyp@burningbird.net>  2009-12-01 04:26:41 ---
(In reply to comment #35)
> There are many, many examples in the literature of code and tables being
> labeled as "figures".  Here are but two examples obtained with 15 seconds of
> searching on Google Books:
> Code listing as figure:
> http://books.google.com/books?id=Za1ypU8u9BAC&lpg=PP9&dq=%22Figure%205%22&pg=PA96#v=onepage&q=%22Figure%205%22&f=false
> Table as figure:
> http://books.google.com/books?id=Fsz234KPVz8C&pg=PT120&dq=%22Figure+5%22&ei=I4wUS8raFJjQNPHJ2ZQL#v=onepage&q=%22Figure%205%22&f=false
> There is no confusion caused by using non-images in figures.  It is a common
> idiom that people are used to.

Actually, there was confusion about what figure contained just this week, in
the thread that I linked in an earlier comment. 

It is not a common idiom. And people are confusing illustration and function.

For instance, in the example you displayed from the Dummies book, that was an
illustrative figure. The table values themselves were created just for
illustration purposes. It was an illustration of a balance sheet. And very
likely, when the author created the book, the balance sheet was probably a
screenshot, added into the book as a PNG or a TIF. However it was added,
though, the data in the table itself, was meaningless -- it existed purely as a

As for the code example, it's not a true code examples, of which the book has
several. It's an illustration of a common concept of programming. As such, it's
not meant as an example for a person to copy and try out. It's meant to
illustrate a generic programming concept. 

These two examples work in a hard copy book. A table in a book is only as
meaningful on the context of its usage. But in a web page, a table element is
supposed to be part of a table model, and part of the DOM. That doesn't match
the data in the example you pulled up. 

There's a disconnect here. We look at something like DocBook and it shows
tables in a figure. But figure itself is defined as, " A formal figure,
generally an illustration, with a title". Whatever is in the figure element is
illustrative, a visual aid. It's not meant to have meaning beyond being a
visual aid. 

It's the same as when I illustrated how to use a Photoshop dialog in my
Painting the Web book. Would you really expect that figure to convert to an
HTML form in a web page? Extrapolating that to your example: would you really
want the table entries you showed in your example, Tab, to be part of the DOM?
It's meaningless data--picked out of the air for illustration purposes. 

Do I want HTML tables in figures? Of course not, because we have nothing in the
HTML5 specification that when HTML tables are included in figures, the data
contained in the element is illustrative only, so the data and the elements
should not be loaded into the page's DOM. 

I appreciate that Maciej brought up the book model in this bug, because it
strengthens the argument I have about eBook in the bug related to splitting off
section 6, on the browser object model [1]. However, there are constraints with
user agents that support a DOM that don't necessarily apply to eBooks, which

These subtle differences shouldn't be an issue, though, if we respect the
environment for each use of HTML. Books don't have a DOM, so people can plunk
tables anywhere they want, even in figures. Web pages loaded in browsers,
however, are impacted when tables are just plunked in anywhere -- it impacts on
the DOM.

When we convert books to web pages that have figures that contain tables, if
those tables are illustrative and not data, then they should be added into the
page as snapshots, as images. If the tables are data tables, then we shouldn't
enclose them in a figure. We should include the table, as is, and reference it
as Table 5, rather than Figure 5. 

Because that's what's happening in the examples you provided.


[1] http://www.w3.org/Bugs/Public/show_bug.cgi?id=8365

Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Tuesday, 1 December 2009 04:26:45 UTC