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

Re: Complex Condition problem with Attributes

Subject: Re: Complex Condition problem with Attributes
From: "Joe Fawcett" <joefawcett@xxxxxxxxxxx>
Date: Thu, 15 Sep 2005 13:40:28 +0100
joe khorasani
From: David Carlisle <davidc@xxxxxxxxx>
Reply-To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re:  Complex Condition problem with Attributes
Date: Thu, 15 Sep 2005 13:32:06 +0100

> It failes at the position @. But why?

you can't just put an axis (or an abreviated  axis such as @) straight
after a predicate: you have to separate steps in an XPath expression
with / so its
...] / @...
not
...]  @...

so
<xsl:when test="//*[contains(name(),'DebtManagement') and
(//*[contains(name(),'DebtManagement')]/@action='add' or
//*[contains(name(),'DebtManagement')]/@action='delete')">

is legal but doesn't test what you want to test.

(do you really want to use // it's very expensive operation: searching
the whole document to arbitrary depth)

"//*[contains(name(),'DebtManagement')
finds the elements you want but then (I think) you want to know if
_those_ elements have an add or delete action, but your test just
searches the entire document again (twice) finding the same eleemnts
each time.

I think you want

//*[contains(name(),'DebtManagement')[@action='add' or @action='delete']

But if you can use something other than // it is likely to be more
efficient. Or you could use a key.

David


I think you missed off a ].


//*[contains(name(),'DebtManagement')][@action='add' or @action='delete']


Joe


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.