Given an html form that passes the following query string:
approved=1&approved=3&approved=4&foo=bar
how do I parse/concat the query string to end up with all the
'approved' parameter values as a comma separated list?
<xsl:variable name="queryParams"
select="tokenize($URL_query_string, '&')"/>
<xsl:variable name="approvedParams"
select="for $p in queryParams[startsWith(., 'approved=')]
return subtring-after($p, 'approved=')"/>
<xsl:value-of select="concat('(', string-join($approvedParams, ','), ')')
For example: (1,3,4)
Also, during this process, can I use as="xs:integer" to verify that
the concatenated parameter values are indeed integers?
No, because the values aren't integers until you convert them to integers.
You can use "castable as xs:integer" to test whether they are capable of
being so converted.
Michael Kay
http://www.saxonica.com/
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--