[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: in search for more elegant XPaths
> I very often testing for element nodes that have character content with > *[string-length(normalize-space(.))>0] No need to work out the length (which can be surprisingly costly for general unicode strings) you can just do *[normalize-space(.)] as the predicate is true if teh string is non empty. (Although I have a feeling saxon for example does that rewrite for you anyway, so it may make no difference.) > <xsl:text> You haven't specified a return type for ypur fuction but if it's intended to be a string declaring it as as="xs:string" and using <xsl:sequence select="'sozial'"/> rather than <xsl:text>sozial</xsl:text> saves the cost of building a text node. <xsl:function name="ln:getCaseType" as="xs:string> <xsl:param name="case" as="element()"/> <xsl:choose> <xsl:when test="matches(.,'^[LB]?SG')"> <xsl:sequence select="'sozial'"/> </xsl:when> <xsl:when test="matches(.,'^[LB]?A(rb)?G')"> <xsl:sequence select="'arbeit'"/> </xsl:when> Those regex are a bit more lax than your tests but they need not be. 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. ________________________________________________________________________
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|