Re: [xsl] Comparing possibly empty string sequences

Subject: Re: [xsl] Comparing possibly empty string sequences
From: Martynas Jusevicius <martynas.jusevicius@xxxxxxxxx>
Date: Tue, 23 Mar 2010 16:13:40 +0100
Thanks Ken & Martin! I'm still digging into XPath & XSLT 2.0 :)

On Tue, Mar 23, 2010 at 3:57 PM, G. Ken Holman
<gkholman@xxxxxxxxxxxxxxxxxxxx> wrote:
> Ouch!  Of course I should have written:
>
>  as="xsd:string*"
>
> and not select= as I was thinking about the constraints but typing out of
> habit.  Too distracted today.
>
> . . . . . . . . . . Ken
>
> At 2010-03-23 15:51 +0100, G. Ken Holman wrote:
>>
>> At 2010-03-23 15:47 +0100, Martynas Jusevicius wrote:
>>>
>>> a question somewhat related to my previous one.
>>> Say I have $classes, a sequence of classnames (strings), possibly empty.
>>
>> Fine ... cardinality 0 to many.
>>
>>> Now I want to select elements which @class attribute contains any of
>>> the classnames from $class:
>>> h:*[@class/tokenize(., '\s+') = $break-classes)]
>>>
>>> In other words, select elements where tokenized @class intersects with
>>> $class.
>>>
>>> It works fine unless $classes is an empty sequence, in which case I
>>> get an error:
>>> "XTTE0570: An empty sequence is not allowed as the value of variable
>>> $classes"
>>
>> That is a declaration problem, not an executon problem.  You don't show
>> your declaration for $classes, but I'm assuming the declaration does not
>> accommodate a cardinality of zero.
>>
>> If it is:
>>
>>  <xsl:variable name="classes" select="xsd:string+"...
>>
>> ... then change it to:
>>
>>  <xsl:variable name="classes" select="xsd:string*"...
>>
>> I hope this helps.
>>
>> . . . . . . . . . Ken
>
>
> --
> XSLT/XQuery training:         San Carlos, California 2010-04-26/30
> Principles of XSLT for XQuery Writers: San Francisco,CA 2010-05-03
> XSLT/XQuery training:                 Ottawa, Canada 2010-05-10/14
> XSLT/XQuery/UBL/Code List training: Trondheim,Norway 2010-06-02/11
> Vote for your XML training:   http://www.CraneSoftwrights.com/s/i/
> Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/s/
> G. Ken Holman                 mailto:gkholman@xxxxxxxxxxxxxxxxxxxx
> Male Cancer Awareness Nov'07  http://www.CraneSoftwrights.com/s/bc
> Legal business disclaimers:  http://www.CraneSoftwrights.com/legal

Current Thread