|
Subject: Re: dl/dt/dd matching From: Francois Belanger <francois@xxxxxxxxxxx> Date: Wed, 13 Jan 99 11:13:24 -0500 |
James Clark wrote on 12/01/99 23h40:
>Francois Belanger wrote:
>
>> How about:
>>
>> <xsl:template match="dl">
>> <table>
>> <xsl:for-each select="group(dt)">
>> <tr><xsl:apply-templates/></tr>
>> </xsl:for-each>
>> </table>
>> </xsl:template>
>>
>> <xsl:template match="dt|dd">
>> <td>
>> <xsl:apply-templates/>
>> </td>
>> </xsl:template>
>>
>> This way one can see that the tr will enclose the td.
>
>I agree this looks more intuitive, but what exactly are the semantics
>that you have in mind?
As you mentionned earlier:
>One solution is to allow nodes to be grouped together:
>
>[[A1, B1], [A2, B2], [A3, B3]]
>
>and then specify an operation f on the results of groups, thus getting
>
>f(r(A1) + r(B1)) + f(r(A2) + r(B2)) + f(r(A3) + r(B3))
but instead of specifying an operation, I would consider [[A1, B1], [A2,
B2], [A3, B3]] as the three nodes result of group() match and then apply
the template to those three nodes as usual. Since the group match acts
more like a slice (slice it as each element name), we should maybe call
it slice(ElementName).
<xsl:template match="slice(dt)">
<tr><xsl:apply-templates/></tr>
</xsl:template>
I can see here that this is modifying the input tree by creating new
parent nodes to act as a container of each slice. From previous postings
on this list, this seems to cause problems, is it in this case?
Francois Belanger
Sitepak, Bringing Internet Business into Focus
http://www.sitepak.com
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: dl/dt/dd matching, Sean Mc Grath | Thread | Re: dl/dt/dd matching, James Clark |
| Re: GOTCHA!, keshlam | Date | Re: GOTCHA!, Keith Visco |
| Month |