Re: when to use 'as' attribute on a variable
>> <xsl:variable name="x" as="element()"> >> <x/> >> </xsl:variable> > > Yes. Actualy, I'm used to think about that as a tree whose the >root is not a document-node(). Mmh, yes, not really a tree. a better example that I could have given would have been <xsl:variable name="y" as="element()*"> <x/> <x/> </xsl:variable> which isn't a tree at all: it is a variable with value a sequence of two elements with no common ancestor. xslt/xpath does use "tree" informally to include document fragments that do not start with / eg xpath 2.4.1 An ordering called document order is defined among all the nodes accessible during processing of a given expression, which may consist of one or more trees (documents or fragments). In this sense $y consists of two (small) trees (each of which is a fragment) but XSLT2 has a technical notion of "temporary tree" which is the thing most often used for an in-memory tree constructed within the stylesheet to which keys etc may be applied. These are constructed by xsl:variable without an as attribute and they always construct a sequence of a single / node, so never have root a parentless element. David ________________________________________________________________________ This e-mail has been scanned for all viruses by Star. The service is powered by MessageLabs. For more information on a proactive anti-virus service working around the clock, around the globe, visit: http://www.star.net.uk ________________________________________________________________________
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format