- From: Roland Gülle <roland@7val.com>
- Date: Mon, 18 Jun 2007 09:42:23 +0200
- To: public-mobileok-checker@w3.org
It seems that there are no XPath column/line Information functions. But with Xalan, it seems that we can use the source location feature [1] that provide the SourceLocator. With the SourceLocator, we can use the NodeInfo lineNumber Xalan function [2]. I try to use this direct in the XSLT at the command line, but I get always the error: 'There is more than one method matching the function call info:lineNumber, and there is insufficient type information to determine which one should be used' Add the context or nodeList XPath, won't help, so it seems that there are problems with running this on the command-line. Here my test XSLT: ----------------- <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:info="org.apache.xalan.lib.NodeInfo" extension-element-prefixes="info"> <xsl:template match="/"> <xsl:value-of select="info:lineNumber(node())"/> </xsl:template> </xsl:stylesheet> It is only a command line problem? (I never used Xalan functions in XSLT before, but I noticed in the first CachingTest.xsl that Sean has used this - could someone help me at this problem?) Another resolution could be Expat and GetCurrentColumnNumber / GetCurrentLineNumber, but using the Xalan Source Locator seems to be the preferred way. Roland [1] http://xml.apache.org/xalan-j/features.html#source_location [2] http://xml.apache.org/xalan-j/apidocs/org/apache/xalan/lib/ NodeInfo.html#lineNumber(org.apache.xalan.extensions.ExpressionContext)
Received on Monday, 18 June 2007 07:42:41 UTC