RE: [xsl] rendering marginal XML

Subject: RE: [xsl] rendering marginal XML
From: "Michael Kay" <mhkay@xxxxxxxxxxxx>
Date: Fri, 26 Oct 2001 19:02:14 +0100
>
> <msgSent>
> 	<time>time sent</time>
> 	<origin>me@xxxxxxxx</origin>
> 	<r>you@xxxxxxxxx</r>
> 	<recieved>time recieved</recieved>
> 	<status>Any error messages, etc</status>
> 	<r>you2@xxxxxxxxx</r>
> 	<recieved>time recieved</recieved>
> 	<status>Any error messages, etc</status>
> 	(this repeats for each recipient)
> </msgSent>
> (this repeats for each message)
>
> The problem is the <recieved> and <status> tags refer to the
> imediately preceding <r> tag.

If the structure is sufficiently regular you can add the necessary
<recipient> element by doing

<xsl:template match="r">
  <recipient>
  <name><xsl:value-of select="."/></name>
  <received><xsl:value-of
select="following-sibling::recieved[1]"/></received>
  <status><xsl:value-of select="following-sibling::status[1]"/></status>
  </recipient>
</xsl:template>

<xsl:template match="recieved|status"/>

Mike Kay


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread