Subject: Re: [xsl] Param Element From: Karl Stubsjoen <kstubs@xxxxxxxxx> Date: Thu, 2 Jun 2005 21:59:13 -0700 |
Sorry : ) Structure is: <in_proc> <row /> <row /> ... </in_proc> On 6/2/05, Michael Kay <mike@xxxxxxxxxxxx> wrote: > > Michael: the content of the source xml is the persisted state of the > > supplied xm data param. > > That tells me absolutely nothing about the structure of either. > > Let's be concrete. Is the outermost element of your source XML caled <row> > or is it called <in_proc>? If it's called <row> then I can point to one set > of errors in your stylesheet, if it's called <in_proc> then I can point to a > different set. It's possible that your stylesheet is written to allow it to > be either, but that seems unlikely. > > Michael Kay > http://www.saxonica.com/ > > > xm data param may or may not contain new > > data. This data is appended to the xml source when it is new. There > > is an id column named "activityid" which allows me a guarantee of > > unique matches. > > > > > > > > > > On 6/2/05, David Carlisle <davidc@xxxxxxxxx> wrote: > > > > > > It is working... > > > > > > This seems unlikely. > > > > > > I'm still a little confused on the parm(s) but no worries! > > > > > > On 6/2/05, Karl Stubsjoen <kstubs@xxxxxxxxx> wrote: > > > > Here is what I have, but not confident that it is > > working... it seems > > > > that my check for uniqueness is failing, I get no > > results. Isn't it a > > > > fair test to ask of a value it it exists in a set of > > values as I am > > > > here: > > > > <xsl:if test="$current_id = $activity_id"> > > > > Where activity_id is a set of ID values as defined below.. > > > > > > > > <xsl:param name="xm" select="in_proc" /> > > > > > > > > <xsl:variable name="activity_id" select="in_proc/row/@id"/> > > > > > > > > <xsl:template match="/"> > > > > <in_proc> > > > > <xsl:apply-templates select="row"/> > > > > <xsl:apply-templates select="$xm/row" mode="append"/> > > > > </in_proc> > > > > </xsl:template> > > > > > > > > <xsl:template match="row"> > > > > <xsl:copy-of select="."/> > > > > </xsl:template> > > > > > > > > <xsl:template match="row" mode="append"> > > > > <xsl:variable name="current_id" select="@id"/> > > > > <xsl:if test="$current_id = $activity_id"> > > > > <xsl:copy-of select="."/> > > > > </xsl:if> > > > > </xsl:template> > > > > > > > > </xsl:stylesheet> > > > > > > > > > > > > > > > > > <xsl:apply-templates select="row"/> > > > <xsl:template match="row"> > > > <xsl:copy-of select="."/> > > > </xsl:template> > > > > > > is equivalent (but slower, probably) to > > > <xsl:copy-of select="row"/> > > > it just copies all the row elements. In this case however it prduces > > > nothing as there are no row element children of the current > > node (the > > > only child of / is a in_proc element (I guess, you have not > > shown your > > > input format) > > > > > > <xsl:if test="$current_id = $activity_id"> > > > this test is always true (given the default value of $xm) > > as $current_id > > > is an attribute node from the set $activity_id > > > Even if you supply an xm parameter so that the tests may be false, > > > > > > <xsl:apply-templates select="$xm/row" mode="append"/> > > > <xsl:template match="row" mode="append"> > > > <xsl:variable name="current_id" select="@id"/> > > > <xsl:if test="$current_id = $activity_id"> > > > <xsl:copy-of select="."/> > > > </xsl:if> > > > </xsl:template> > > > > > > is equivalent to > > > > > > <xsl:copy-of select="$xm/row[@id = $activity_id]"/> > > > > > > David > > > > > > > > ______________________________________________________________ > > __________ > > > This e-mail has been scanned for all viruses by Star. The > > > service is powered by MessageLabs. For more information on > > a proactive > > > anti-virus service working around the clock, around the > > globe, visit: > > > http://www.star.net.uk > > > > > ______________________________________________________________ > > __________
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Param Element, Michael Kay | Thread | RE: [xsl] Param Element, Michael Kay |
RE: [xsl] Param Element, Michael Kay | Date | Re: RFC: [xsl] Recursive Template I, omprakash . v |
Month |