Maybe Im missing something but it seems like Belangour is asking not how to
get to the literal foo code he has as an example but instead how to test any
node for existence of a child node in a given context...
<xsl:for-each select="persons/person">
<xsl:if test="child::tel">
.... insert code
</xsl:if>
</xsl:for-each>
child::tel will bring each 'person' node into context if it has a child node
'tel'.
replace the node names with the names of the actual nodes you are trying to
select and you will get the same results...
Regards,
M.
----- Original Message -----
From: "Sergiu Ignat" <sergiu(_at_)bitsoft(_dot_)ro>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Wednesday, October 15, 2003 4:24 AM
Subject: RE: [xsl] a node child
<xsl:if test="childnodename">...</xsl:if>
<xsl:if test="@attributename">...</xsl:if>
If in the test statement you pass a name of a child or attribute it
returns true if the child exists, otherwise it returns false.
To match all the persons with a "tel" child you can try:
<xsl:apply-templates select="person[tel]"/>
There is a deatailed explanation about this in any XSLT beginer's guide.
Sergiu
Hi Andrew,
first,thanks for the response.
The example i gave was perhaps a bad example, but i want a
response in a
more general case i.e once located on a node. How could we test the
existence of a given child node ?
Thanks
Abdessamad
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list