Subject: Re: [xsl] pulling object at their correponsing callout From: Brandon Ibach <brandon.ibach@xxxxxxxxxxxxxxxxxxx> Date: Thu, 24 Feb 2011 14:13:58 -0500 |
This looks pretty close to a complete solution (along with a template to suppress the "object" elements in their original locations). I'd just incorporate the "tokenize" function to break the @rid values into sequences of ID tokens. Perhaps replace the outer xsl:if with an xsl:for-each, iterating over the each ID token in each link[@type='figure'] (keeping in mind that there may be more than one link in a para, right?). -Brandon :) On Thu, Feb 24, 2011 at 5:14 AM, JS rawat <jrawat@xxxxxxxxxxxxxx> wrote: > 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 |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] pulling object at their c, JS rawat | Thread | [xsl] Natural sort of strings, Vladimir Nesterovsky |
Re: [xsl] Where (how) to use XML/XS, Brandon Ibach | Date | [xsl] I would like to know how I ca, ycao5 |
Month |