Re: XHTML Basic and "tables within tables"

"Anurag Wahi" <anurag.wahi@riverrun.com> wrote:

> Has it been noticed that it is possible to place a table
> within a table in XHTML Basic, by enclosing the inner table
> within a <div>..</div> block?

Of course.

> This seems to defy the attempt of avoiding tables within
> tables in XHTML Basic.

XML DTD doesn't provide an equivalent of SGML's exclusion mechanism,
so it cannot express the prohibition of "indirect" nesting.  That's why,
for example, the XHTML 1.0 specification had to explain such prohibitions
(e.g. the "a" element cannot contain other "a" elements) in Appendix B [1].

The abstract definition of the Basic Tables Module [2] prohibits
the nesting of tables, and implementations of this abstract
definition try to express such constraints as much as possible.
In DTD implementation, prohibiting the "direct" nesting of tables
is the best it can express.

Note that in TREX implementation of XHTML Modularization [3] written
by James Clark, the nesting of tables is actually prohibited in
the Basic Tables Module.  In theory, RELAX and RELAX NG could also
express this prohibition, though not as easy as TREX.

[1] http:/www.w3.org/TR/xhtml1/#prohibitions
[2] http:/www.w3.org/TR/xhtml-modularization/abstract_modules.html#s_simpletablemodule
[3] http://www.thaiopensource.com/trex/xhtml/

Regards,
-- 
Masayasu Ishikawa / mimasa@w3.org
W3C - World Wide Web Consortium

Received on Thursday, 9 August 2001 23:17:03 UTC