[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Aligning Parallel Columns


Subject: Re: [xsl] Aligning Parallel Columns
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Sat, 15 Jan 2011 07:22:50 -0500

At 2011-01-15 13:11 +0100, Jeroen Hellingman wrote:
I have two texts, one being the translation of the other. I want to
print them side by side in an HTML table, such that translated
paragraphs are aligned.

Sometimes, additional paragraphs have been added in the translation, and
sometimes, paragraphs have been merged, so the relationship is not
always one-on-one, but corresponding paragraphs will have the same id
in both documents.

e.g., documents one and two:

        <div id="ch1">
            <p name="a1">Eerste Alinea.</p>
            <p name="a1.1">Zomaar ertussen.</p>
            <p name="a2">Tweede Alinea.</p>
            <p name="a3">Derde Alinea.</p>
        </div>

        <div id="ch2">
            <p name="a1">First Paragraph.</p>
            <p name="a2">Second Paragraph.</p>
            <p name="a2.1">Something added here.</p>
            <p name="a3">Third Paragraph.</p>
        </div>

And the result I wish to produce looks something like:

    <table>
        <tr><td>Eerste Alinea.</td>  <td>First Paragraph.</td></tr>
        <tr><td>Zomaar ertussen.</td><td/></tr>
        <tr><td>Tweede Alinea.</td>   <td>Second Paragraph.</td></tr>
        <tr><td/>                       <td>Something added here.</td></tr>
        <tr><td>Derde Alinea.</td>   <td>Third Paragraph.</td></tr>
    </table>

Technically, this is a kind of full outer join of both documents.

Any suggestions on how to tackle this with XSLT (2.0 welcome)?

Use for-each-group on the name attributes. You will end up with five groups. As you walk through each of the five groups, looking at each element's parent will tell you which side of the table the item belongs in.


I hope this helps.

. . . . . . . . . . . . . Ken

--
Contact us for world-wide XML consulting & instructor-led training
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/s/
G. Ken Holman                 mailto:gkholman@xxxxxxxxxxxxxxxxxxxx
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal


Current Thread
Keywords