[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: XSLT2: A sequence of more than one item is not al

Subject: RE: XSLT2: A sequence of more than one item is not allowed as the first argument of contains()
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Sun, 25 Sep 2005 20:40:23 +0100
xslt2 sequence
>   I am having problem with contains() in XSLT2
> (Saxon8.5.1).  The following code is checking if the
> classname contains the word "notification":
>  
> <xsl:variable name="vKeyword" select="notification"/>

That should surely be:

<xsl:variable name="vKeyword" select="'notification'"/>


> <xsl:variable name="vClassName"
> select="Class/@classname"/>
> <xsl:if test="contains($vClassName, $vKeyword)">
>   <xsl:copy-of select="."/>
> </xsl:if>
> 
> XSLT2 using Saxon8.5.1 returns the following error:
> XPTY0004: A sequence of more than one item is not
> allowed as the first argument of contains()

This means that Class/@classname contains more than one attribute, which
means that the context node has more than one child called Class.

What to do about it? This depends on whether you want to check if *any* of
these attributes contain the keyword, or if *all* of them contain the
keyword. The 1.0 code checks if the *first* one of the attributes contains
the keyword.

Michael Kay
http://www.saxonica.com/

> 
> Using XSLT 1, Saxon8.5.1 returns no error.
> 
> What does that error mean?  How do I check if an
> attribute contains a keyword in XSLT2?
> 
> thanks,
> Xiaocun Xu
> 
> 
> 
> 		
> __________________________________ 
> Yahoo! Mail - PC Magazine Editors' Choice 2005 
> http://mail.yahoo.com

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.