Re: [xsl] Replacing images with alt tags - PART 2

Subject: Re: [xsl] Replacing images with alt tags - PART 2
From: "Thomas B. Passin" <tpassin@xxxxxxxxxxxx>
Date: Thu, 18 Apr 2002 14:48:02 -0400
[Michael Kay]

> > >
> > > <xsl:template match="a/img">
> > > <!-- this should replace images with alt text only when img is the
> > > link-->
> > >    <xsl:value-of select="@alt"/>
> > >  </xsl:template>
> > >
> > >  <xsl:template match="p/img">
> > > <!-- replace images with alt text only when img is within a <p>-->
> > >    <xsl:value-of select="@alt"/>
> > >  </xsl:template>
> > >
> > >  <xsl:template match="img">
> > > <!-- replace images with alt text in <p> tags when its not within
> > > tags-->
> > >    <p><xsl:value-of select="@alt"/></p>
> > >  </xsl:template>
> > >
> >
> > The way you are doing it will produce different results
> > depending on the
> > context in which you call apply-templates.  If you are within
> > a <p> element,
> > for example, no p/img is likely to be found, but img will.
>
> Wrong. Whether or not a given node matches a pattern has nothing whatever
to
> do with the apply-templates call.

I know, Mike, but the results - I mean, which templates get invoked - do
depend on the context, right?  If I want to select an "img" element but
there are no "img" children of the context node, no templates will be
instantiated to process an "img" node.    That's all I was referring to.

I was assuming that Jacob Glenn had used <xsl:apply-templates
select='img'/>, but I see that I didn't say that.  If he did use
select='img' as I assumed, a template with match='a/img' would not
necessarily be invoked, while a template with match='img' would.

On the other hand, if he had just used <xsl:apply-templates/>, he would have
gotten his expected results (at least, I did in the test case I tried), so I
assumed that that's not what he did.

If he used some different approach, what I said would be irrelevant, and
maybe he will tell us what he really did and what the source xml looks like.

Tom P


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


Current Thread