Hi Barton,
The reason is that none of those attributes are also attributes of the HTML <table>
element. Isn't the whole point of supporting HTML tables in DocBook to re-use the
existing HTML table standard?
Not exactly. Here is what the Definitive Guide says (from
http://www.docbook.org/tdg5/en/html/html.table.html):
<blockquote>
HTML tables were introduced in DocBook V4.3 which was not in a namespace and was
defined normatively with a DTD. DTDs do not support namespaces very well. The
Technical Committee decided to simply add the HTML element names to DocBook. This
solution simplified specification, avoided issues of namespace support in DTDs, and
solved the most compelling use case: cut-and-paste of simple, text-only HTML tables
into DocBook.
Strictly speaking, it would be incorrect to put these elements in the XHTML namespace
because the DocBook common attributes are allowed on all of them and the td and th
elements have very different content models than their HTML counterparts.
</blockquote>
These are not HTML elements, they are DocBook elements whose names happen to match
HTML element names, and whose attributes and content models are similar, but not
identical. The goal was to make it easier for people who are familiar with HTML
tables to author tables in DocBook. DocBook does support all the HTML table element
names and attributes. But *additional* attributes do not break that compatibility.
Also, there is no <informaltable> element in HTML at all. Clearly that one is a
hybrid.
So if you have a text-only HTML table (no DocBook markup in table cells), you can copy
and paste it into a DocBook document, but only if it has a caption element. Without
caption, it would need to be pasted as an informaltable, since caption is required on
DocBook's table (HTML).
The proof is in the DocBook XSL.
The DocBook Technical Committee would object strenuously to that statement! The XSL is
supposed to follow the schema, not lead it. 8^)
In any case, I filed a bug report and this will be resolved at the April DocBook TC
meeting. Feel free to provide more input.
Bob Stayton
Sagehill Enterprises
[email protected]
----- Original Message -----
From: "Barton Wright" <[email protected]>
To: "Bob Stayton" <[email protected]>
Cc: <[email protected]>; "Chris Ridd" <[email protected]>
Sent: Saturday, March 19, 2011 4:01 PM
Subject: RE: [docbook-apps] pgwide support with Docbook 5
Bob,
We have come to opposite conclusions from the same facts. It appears more logical
that the four attributes you list are deliberately missing from informaltable-HTML
and are incorrectly present in table-HTML and should be removed.
The reason is that none of those attributes are also attributes of the HTML <table>
element. Isn't the whole point of supporting HTML tables in DocBook to re-use the
existing HTML table standard?
The proof is in the DocBook XSL. Try making a DB 5 document that contains a
table-HTML using the pgwide="1" attribute. The document will validate fine, but on
transformation to HTML, no pgwide attribute is passed to the HTML <table> element,
and the table shows up with its default width. By contrast, add width="100%" and you
get the pgwide effect as desired.
-----Original Message-----
From: Bob Stayton [mailto:[email protected]]
Sent: Saturday, March 19, 2011 6:13 PM
To: Chris Ridd
Cc: [email protected]
Subject: Re: [docbook-apps] pgwide support with Docbook 5
Thanks for the additional info. It seems informaltable (HTML) is missing pgwide,
tabstyle, floatstyle, and orient, which are available on table (both HTML and CALS)
and informaltable (CALS). I think this may be an oversight, so I filed a bug report
regarding the missing table attributes on informaltable (HTML). We will see what the
DocBook Technical Committee says.
Bob Stayton
Sagehill Enterprises
[email protected]
----- Original Message -----
From: "Chris Ridd" <[email protected]>
To: "Bob Stayton" <[email protected]>
Cc: <[email protected]>
Sent: Saturday, March 19, 2011 2:02 PM
Subject: Re: [docbook-apps] pgwide support with Docbook 5
On 19 Mar 2011, at 01:31, Bob Stayton wrote:
Hi Chris,
pgwide is permitted on table, both CALS and HTML tables. Here is the definitive
guide:
http://www.docbook.org/tdg5/en/html/cals.table.html
I looked in the DTD and the RelaxNG schema, and see pgwide available on table.
How
did you conclude that it was not permitted?
XXE reported it as invalid.
I think we are using HTML tables, not CALS tables.
<http://www.docbook.org/tdg5/en/html/html.informaltable.html> has no pgwide.
Maybe HTML tables were a tactical mistake on our part!
Chris
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]