RE: [xsl] pulling object at their correponsing callout

Subject: RE: [xsl] pulling object at their correponsing callout
From: "JS rawat" <jrawat@xxxxxxxxxxxxxx>
Date: Thu, 24 Feb 2011 15:44:14 +0530
Figure 1 can appear multiple times but its corresponding caption should be
pulled at first callout. Means First two paragraph contains Figure 1 but
caption should associate after first paragraph. Right now I am using below:

<xsl:template match="p">
 <p><xsl:apply-templates/></p>
 <xsl:if test="link[@type='figure']">
  <xsl:variable name="figid" select="link[@type='figure']/@rid"/>
  <xsl:if test="not(preceding::link[@type='figure'][@rid=$figid])">
   <xsl:apply-templates select="//object[@id=$figid]"/>
  </xsl:if>
 </xsl:if>
</xsl:template>

-----Original Message-----
From: Michael Kay [mailto:mike@xxxxxxxxxxxx] 
Sent: Thursday, February 24, 2011 2:35 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] pulling object at their correponsing callout

On 24/02/2011 05:51, JS rawat wrote:
> Hi Team,
> Could anyone help me out to solve below below using xslt 2.0

You'll have to explain your requirements more clearly. Why does figure 1
appear three times in the input, and how do you decide which caption belongs
with which figure? (I'm assuming that your problem is something to do with
matching figures and their captions, but I've no idea what rules you are
applying.)

Michael Kay
Saxonica
>
> Input
> <article>
> <p>text text<link rid="f1" type="figure">Figure 1</link>  text 
> text</p> 
 <p>text text<link rid="f1" type="figure">Figure 1</link>  
> text text</p> 
<p>text text<link rid="f1 fl2" type="figure">Figure 
> 1-2</link>  text text</p> <p>text text<link rid="f1" 
> type="figure">Figure 1</link>  text text</p> <object id="f1" 
> position="floating" type="figure">figure caption1</object> <object 
> id="f2" position="floating" type="figure">figure caption2</object> 
> </article>
>
>
> Output
> <article>
> <p>text text<link rid="f1" type="figure">Figure 1</link>  text 
> text</p> <object id="f1" position="floating" type="figure">figure 
> caption1</object>
>
> <p>text text<link rid="f1" type="figure">Figure 1</link>  text 
> text</p> <p>text text<link rid="f1 fl2" type="figure">Figure 
> 1-2</link>  text text</p> <object id="f2" position="floating" 
> type="figure">figure caption2</object>
>
>
> <p>text text<link rid="f1" type="figure">Figure 1</link>  text 
> text</p> </article>
>
> Thanks in advance
> ...JSR

Current Thread