Re: [xsl] Add id to next element

Subject: Re: [xsl] Add id to next element
From: "Raghavendra Nyshadham nyraghu27132@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Fri, 20 May 2022 03:08:13 -0000
Thank you for the solution! I see that I was looking the wrong way.
Instead of looking forward from <target> to <section>, I should have
looked backward at <target> from <section>.  I have modified your code
to suit the actual XML I am transforming, and it works perfectly.

Regards,
Raghavendra.

On Thu, May 19, 2022 at 11:21 PM Michael Kay mike@xxxxxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> You don't do it while processing the target element, you do it while processing the section element
>
> <xsl:template match="section">
>   <xsl:copy>
>     <xsl:attribute name="id" select="preceding-sibling::target/@refid"/>
>   </xsl:copy>
> </xsl:template>
>
> Michael Kay
> Saxonica
>
> > On 19 May 2022, at 18:18, Raghavendra Nyshadham nyraghu27132@xxxxxxxxx <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
> >
> > I am trying to write an XSLT stylesheet to transform an XML document
> > (that was generated by Python Docutils) to HTML5. Here is a fragment
> > from the source document:
> >
> > <target refid="foo"/>
> > <section>
> >
> > The <target> element specifies an identifier for the next element,
> > i.e., <section>. So I want something like
> >
> > <section id="foo">
> >
> > in the HTML output. I am unable to figure out an XSLT way to attach an
> > attribute to the next element while processing <target>. Would
> > appreciate any help.
> >
> > Thanks and regards,
> > Raghavendra.

Current Thread