Am 14.10.2018 um 03:49 schrieb Dave Lang emaildavelang(_at_)gmail(_dot_)com:
Hi again everyone - back with another beginner question.
I'm working in Oxygen and am using Saxon.
I'm searching through a bunch of xml files in search of jpg names. I'm
creating variables as follows:
<xsl:variable name="allxml"
select="collection('..//xml/?select=*.xml;recurse=yes')"/>
<xsl:variable name="jpgs" select="$allxml//element/@n"/>
$jpgs looks like:
dir1/jpg001.jpg dir1/jpg002.jpg dir1/jpg003.jpg
etc.
I want to strip away the dir info, but am having a hard time. I've
tried using tokenize and substring-after but both return similar errors.
"A sequence of more than one item is not allowed as the first argument
of fn:tokenize() ("dir1/jpg001.jpg", "dir1/jpg002.jpg")."
The variable jpgs is a sequence of attribute nodes, if you want to apply
a function to each item in the sequence of nodes you can use
$jpgs/tokenize(., '/')[last()]
and get a sequence of strings.
In XSLT 3 with XPath 3 you can also use
$jpgs!tokenize(., '/')[last()]
--~----------------------------------------------------------------
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
--~--