XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
How to count number of "concat()" args in XPath expression


I wanted to know the (huge) argument number count of a "concat()" call in
a customer stylesheet.

Since I did not want to write my own XPath expression parser I made use of
the "Too many arguments to user-created function" error of DataPowwer XSLT
Processor. As can be seen below Saxon 6.5.5 (XSLT 1.0) processor can be
used for that, too.

I created a small stylesheet with a "func:concat()" user defined function.
In that I inserted 900 parameters created by
$ for((p=100; p<1000; ++p)) do echo "<xsl:param name=\"$p\"/>"; done

Finally I modified "concat()" call to "func:concat()".

Binary search and recompile finally identified the argument count 814(!).

My question is, whether determining the argument count can be achieved
easier (with any tool/language). Can XSLT 2.0 (3.0) help here?


<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
   xmlns:func="http://exslt.org/functions";
>
  <func:function name="func:concat">
<xsl:param name="a100"/>
<xsl:param name="a101"/>
...
...
<xsl:param name="a911"/>
<xsl:param name="a912"/>
<!--<xsl:param name="a913"/>-->
    <func:result select="$a912"/>
  </func:function>
...
...
  <xsl:template match="/">
                <xsl:value-of select="func:concat('SELECT',
...


Mit besten Gruessen / Best wishes,

Hermann Stamm-Wilbrandt
Level 3 support for XML Compiler team and Fixpack team lead
WebSphere DataPower SOA Appliances
https://www.ibm.com/developerworks/mydeveloperworks/blogs/HermannSW/
https://twitter.com/HermannSW/     http://www.stamm-wilbrandt.de/ce/
----------------------------------------------------------------------
IBM Deutschland Research & Development GmbH
Vorsitzende des Aufsichtsrats: Martina Koederitz
Geschaeftsfuehrung: Dirk Wittkopp
Sitz der Gesellschaft: Boeblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS