Subject: Re: [xsl] for-each question From: "Vasu Chakkera" <vasucv@xxxxxxxxxxx> Date: Tue, 13 Aug 2002 17:38:26 +0000 |
Regds Vasu
From: Mike Brown <mike@xxxxxxxx> Reply-To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Re: [xsl] for-each question Date: Tue, 13 Aug 2002 11:04:06 -0600 (MDT)
Vasu Chakkera wrote: > The problem is your template matches each book element. > this is equivalent to a pseudo code > for each book { > The books are: > Book-Name > }
No it is not. "for each" is an instruction, an operation. A template is a declaration, a definition.
A lot of XSLT newbies tend to be under the mistaken impression that xsl:template causes something to happen. Your pseudocode reinforces this confusion. They need to be told that it is actually the xsl:apply-templates that causes nodes to be selected and processed.
I would tell him that his template was equivalent to defining the following functions (Python style):
def handleAnyNode(node,result): # xsl:template if node.type == ELEMENT and node.name == 'book': # match="book" handleBookNode(node,result)
def handleBookNode(node,result): frag = ResultTreeFragment() frag.append(TextNode('The Books Are:')) # The Books Are: frag.child[0].append(Element('I')) # <I>...</I> frag.child[1].append(TextNode(currentNodeName())) # xsl:value-of result.append(frag)
And that it was his <xsl:apply-templates select="book"> that was equivalent to
calling
for node in getAllNodesMatchingXpathExpression('child::book'): handleAnyNode(node,mainOutput)
- Mike ____________________________________________________________________________ mike j. brown | xml/xslt: http://skew.org/xml/ denver/boulder, colorado, usa | resume: http://skew.org/~mike/resume/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
_________________________________________________________________ Send and receive Hotmail on your mobile device: http://mobile.msn.com
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] for-each question, Vasu Chakkera | Thread | [xsl] xsl-element not allowed direc, Christer Nordvik |
Re: [xsl] for-each question, Mike Brown | Date | [xsl] using apache fop, displaying , Judy_Kratz |
Month |