This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: questions?


At 21:29 17-09-2001, Mihir D. Gore wrote:
>If i have a operation like "insert node n as the i th  child of node p" ,
>what will be the the xsl?

To repeat a FGA[*], XSLT can't change the source.  It reads the source and 
writes output.

>for example
><book>
>         <author>P.G.Wodehouse</author>
>         <name>Good Morning Jeeves</name>
>         <price>20</price>
></book>
>
>if i  add the node <review></review> as the 3rd child of book then the xsl
>will be
>
><book>
>         <author>P.G.Wodehouse</author>
>         <name>Good Morning Jeeves</name>
>         <review>Some comments here</review>
>         <price>20</price>
></book>

What you want to do is copy the book, with the review added.  You could do 
this by starting with the identity transform (see the XSLT Recommendation) 
and adding

<xsl:template match="book">
   <xsl:copy select=".">
     <xsl:apply-templates select="*[position() &lt; 3]"/>
     <review>Some comments here</review>
     <xsl:apply-templates select="*[position() >= 3]"/>
   </xsl:copy>
</xsl:template>

-Chris

[*] Frequently given answer.
-- 
Christopher R. Maden, Principal Consultant, HMM Consulting Int'l, Inc.
DTDs/schemas - conversion - ebooks - publishing - Web - B2B - training
<URL: http://www.hmmci.com/ > <URL: http://crism.maden.org/consulting/ >
PGP Fingerprint: BBA6 4085 DED0 E176 D6D4  5DFC AC52 F825 AFEC 58DA


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]