Subject: Re: [xsl] How to use the same expression in a match and a select test From: David Carlisle <davidc@xxxxxxxxx> Date: Mon, 3 Dec 2007 13:44:31 GMT |
for the job of lifting block elements out of html p I'd use for-each-group rather than for-each (as you are using xslt2) but to answer your question you can use a function <xsl:function name="my:is-block" as="xs:boolean"> <xsl:param name="e" as="xs:element"/> <!-- normally I'd use self:: here to be more namespace aware but given you are doing case insensitive matching, I'd do this--> <xsl:sequence select="lower-case(local-name($e))=( 'body','div',........')"/> </xsl:function> so you can then use match="*[not(my:is-block(.))]" David ________________________________________________________________________ The Numerical Algorithms Group Ltd is a company registered in England and Wales with company number 1249803. The registered office is: Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom. This e-mail has been scanned for all viruses by Star. The service is powered by MessageLabs. ________________________________________________________________________
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] How to use the same expre, David Carlisle | Thread | RE: [xsl] How to use the same expre, Michael Kay |
Re: [xsl] How to use the same expre, Mukul Gandhi | Date | Re: [xsl] How to use the same expre, Sascha Mantscheff |
Month |