Bill Fenner wrote:
> With the introduction of the start-column property, I can get my
> schema's tables to start rendering like tables.  The schema for this
> table is like:
> 
> <table>
> <h>Header 1</h>
> <h>Header 2</h>
> <c>Row 1 Column 1</c>
> <c>Row 1 Column 2</c>
> <c>Row 2 Column 1</c>
> <c>Row 2 Column 2</c>
> </table>
> 
> Previously, xxe simply couldn't render the table because of the lack
> of table-row wrapper elements.  With the new start-column property, I
> can get each row into the right column:
> 
> texttable > c {
>        display: table-cell;
>        start-column:
> concatenate(xpath("if((count(preceding-sibling::c) + 1) mod
> count(../h) = 0, count(../h), (count(preceding-sibling::c) + 1) mod
> count(../h)) - 1"));
> }
> 
> This gives me a layout like
> Header 1
>                Header 2
> Row 1 Column 1
>                Row 1 Column 2
> Row 2 Column 1
>                Row 2 Column 2
> 
> in a kind of staggered diagonal style.  With 3 columns, each row takes
> 3 rows, etc.
> 
> I'd love to have the same control over rows, somehow, without having
> the row container object.  I'd gladly implement it in css or java.  Am
> I dreaming?
> 

I'm afraid the answer is yes. I don't see how you could implement that
without elements acting as table rows.

What you want to do is an item of our TODO list: support user-defined
displays.

Something like that:

texttable {
    display: name.fenner.xxe.TextTable;
}

where name.fenner.xxe.TextTable is a Java[tm] class you'll have to write.

(User-defined displays are a generalization of what we'll have to do in
order to implement MathML.)

Reply via email to