Subject: RE: [xsl] External XML Doc help From: "Passin, Tom" <tpassin@xxxxxxxxxxxx> Date: Mon, 17 Mar 2003 16:57:04 -0500 |
[ Karl Stubsjoen] > <xsl:template match="myexternalxml"> > <xsl:copy-of select="document('myxmldoc.xml)//testint/test"/> > </xsl:template> > > > This works great... spits out all the xml in the document > "myxmldoc.xml". > However, I need to loop through a nodelist within this > document and I'm not > sure how to set up my templates to do this. How would I, > lets say, loop > through all test nodes in the following "myxmldoc" xml document: > > <testing> > <test>1234</test> > <test>1234</test> > <test>1234</test> > <test>1234</test> > </testing> > document()/ gives you the root of your external xml file. You have to do something that changes the context node to that document, then you can do anything you like with it. For example - <xsl:template match="myexternalxml"> <xsl:for-each select="document('myxmldoc.xml')/testing"> <xsl:apply-templates select='test'/> </xsl:for-each> </xsl:template> Here, xsl:for-each changes the context to the (one and only) "testing" node in the external file. Or - <xsl:variable name='tests' select="document('myxmldoc.xml')/testing/test"/> <!-- then, within a template, --> <xsl:apply-templates select='$tests'/> .... <!-- outside the above template: --> <xsl:template match='test'> ... do something here ... </xsl:template> Here, the xsl:apply-templates changes the context for you. If you could have "test" elements in your main source document and you do not want the same template to process "test" elements from both documents, then use template modes - <xsl:variable name='tests' select="document('myxmldoc.xml')/testing/test"/> <!-- then, within a template, --> <xsl:apply-templates select='$tests' mode='externals'/> .... <!-- outside the above template: --> <xsl:template match='test' mode='externals'> ... do something here ... </xsl:template> Cheers, Tom P XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] External XML Doc help, Karl Stubsjoen | Thread | RE: [xsl] External XML Doc help, David . Cantrell |
RE: [xsl] External XML Doc help, David . Cantrell | Date | RE: [xsl] External XML Doc help, David . Cantrell |
Month |