xsl-list
[Top] [All Lists]

Re: [xsl] How to pass into an XSLT program an arbitrarily long sequence of parameter values, from the command line?

2020-06-16 13:57:12
On 16.06.2020 20:51, Roger L Costello costello(_at_)mitre(_dot_)org wrote:
Hi Folks,

My XSLT program has this top-level parameter:

<xsl:param name="airport-identifiers" as="xs:string+" />

I invoke the XSLT program from the command line. I want to pass to the 
parameter a sequence of values. I figured that this would do the job:

java -jar saxon9ee.jar test.xml -xsl:test.xsl -o:result.xml  
airport-identifiers=KBOS,KJFK

But that didn't work. My XSLT program just thinks there is one airport identifier, named 
"KBOS,KJFK"

Is it possible to pass into an XSLT program an arbitrarily long sequence of 
parameter values? If so, how?

I would probably opt to pass in that single string and then use

  tokenize($airport-identifier, ',')

to tokenize it.

http://saxonica.com/html/documentation9.9/using-xsl/commandline/
suggests you can use

  ?airport-identifiers=('KBOS', 'KJFK')

where the value is interpreted as an XPath expression but depending on
the command line shell it might be hard to get that really passed on to
Saxon without being interpreted by the command line shell.
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--

<Prev in Thread] Current Thread [Next in Thread>