Home. 
.

transparent

transparent

transparent

Altova Mailing List Archives


Re: search and replace

From: Joseph Kesselman <keshlam-nospam@-------.--->
To: NULL
Date: 2/6/2007 3:46:00 PM

If it really is an XML ID (declared as such in the DTD or schema), you 
may be able to speed that up by replacing
	//excel_database[@id=current()/text()]/@name
with
	id(current())/@name
(Take the value of the current node, do a table lookup to find the 
element which carries that id value, take its name attribute.) The 
advantage is that this avoids having to search the whole document for 
the desired entry; the disadvantage is that unless it's properly 
declared it doesn't work.

If you have to use the search approach, you may want to consider 
modifying it:
	//excel_database[@id=current()][1]/@name
... assuming that the ID is unique, this generates the same result but 
avoids wasting time searching for another instance.

BTW, testing current()/text() checks whether a single text=-node child 
has that value -- which may or may not be what you want if there's 
markup inside the current() node. If you want the string value of the 
whole node, you can just test it directly or use the string() function 
(which comes out to the same thing).

-- 
Joe Kesselman / Beware the fury of a patient man. -- John Dryden


transparent
Print
Mail
Like It
Disclaimer
.

These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on www.altova.com/list/index.html. Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.

.
.

transparent

transparent