[xsl] how to create variable by comparing two variables using [not]

Subject: [xsl] how to create variable by comparing two variables using [not]
From: "Dave Lang emaildavelang@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Sun, 14 Oct 2018 19:17:39 -0000
I'm having trouble comparing two variables to find out which values are present in one but not the other. My attempts to do this return the error message:

"A sequence of more than one item is not allowed as the first argument of fn:tokenize()"

Here's how I'm creating the variables I'm trying to compare:

<xsl:variable name="jpg_all_names" select="tokenize(distinct-values(($jpg_list_1, $jpg_list_2, $jpg_list_3)), '\s+')"/>
<xsl:variable name="jpg_all_links" select="sort(($jpg_link_a, $jpg_link_b, $jpg_link_c)/tokenize(., '[/=]') [last()])"/>


These variables create lists of jpg file names. I want to see which (if any) files are referenced in $jpg_all_links but not in $jpg_all_names

To do that I'm trying:

<xsl:variable name="jpgs_in_xml_not_directories" select="($jpg_all_links)[not(. = $jpg_all_names)]"/>

But it doesn't work.

Any assistance, as always, appreciated!

dave

Current Thread