Subject: Back to Basics: XPath and Context Node From: John Robert Gardner <jrgardn@xxxxxxxxx> Date: Mon, 8 May 2000 21:32:19 -0400 (EDT) |
Greetings: Watching my recent exchange--and many others--it seems XPath remains a constant nuance that causes many a good script to stumble--at least certainly my own. IN order to have mercy on the list, and David, Michael, and Mike, and Steve who are infintiely patient with some of my thrashings, I'm trying to parse the short but dense spec in detail. This is unbearably basic, but I'm in the midst of a self-imposed RTFM, and want to be sure-- from the W3C spec at www.w3c.org/TR/xpath.html, sections 1ff, re. "context node." It seems the point of departure, semantically and conceptually, for describing any expression (and location path is a subset of expression, per the spec: "One important kinds of expression is a location path"), so I have several questions, based on spec quotes (please understand i'm reading this from a rhetorical sciences, not technical sciences background, so some of the "obvious" may be lost on me): sect 1: . . . "Several kinds of expressions change the context node; only predicates change the context position and context size." Q: by implication, then, predicates do not change the context node? Sect. 2: "child::para selects the para element children of the context node." Q: so, if I have this xsl < . . . .std. header stuff and PI . . .> <xsl:template match="/"> <xsl:apply-templates /> <xsl:template> <xsl:template match="child::para or child::*"> ---some stuff --- </xsl:template> The context node for my child:: matches is the root "/", yes? and my location path is essentially redundant b/c child::* includes all para's anyway, obviating the "or," right? Sect 2: A relative location path consists of a sequence . . . separated by /. . . . An absolute location path consists of / optionally followed by . . ." Q: anything beginning with / is an absolute path, and nothing that doesn't begin with / can be an absolute path, therefore it is relative (wish I'd remembered my BNF foray in my one AI class . . .)? Sect 2.1: Location steps: . . ."The final node set is the node-set selected by the location step" Q: reading the BNF preceding this question, am I right that location steps only occur in RelativeLocationPaths (cf. [3] immediately before 2.1)? And, then, is the location step in this case <=> with the "location path" -- same thing as? Sect 3.2 Function calls: . . . "A FunctionCall expression is evaluated by using the FunctionName to identify a function in the expression evaluation context function libarary, evaluating each of the arguments, converting each argument to the type required by the function, and finally calling the funtion, passing it the converted arguments." Q: Anyone courageous to unpack this-- particularly the astounding concatenation: "the expression evaluation context function libarary"? In the absence of an example here, it's not clear to me what exactly the "function call" is, unless --and I am certainly wrong here but it's all I can think of in my non-programmer's mindset-- "xsl:call-template"? And finally, in due deference to nomenclature issues, "xsl:call-template" or "xsl:variable" or xsl:choose -- these are properly called XSL elements, xslt elements, xslt functions, xslt operators, xslt commands, xslt template types, xslt transformers ("more than meets the eye") -- what's the accepted word for that xsl-namespaced-thing? I've also tried various FAQ's on these points, but what I'm really trying to get at is a good oldfashioned commonfolks' definition type explanation and example (and, not wanting to curry disfavor, but the shipping time on my efforts to procure a certain book are not adding up to the par set by my colleagues herein, save, heaven-forbid, Australia ;-)). =-=-=-=-=-=-=-=-=-==-=-=-= John Robert Gardner, Ph.D. XML Engineer Emory University ------------------------------------------------------------ http://vedavid.org/diss/ "If there is something you're thinking of doing, or wish you could do, begin it. In boldness there is mystery and power . . . . " -Goethe XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: The XSL-List Digest V3 #8, Peter Foley | Thread | Re: Back to Basics: XPath and Conte, Michael Fuller |
Re: The XSL-List Digest V3 #8, Peter Foley | Date | Re: Back to Basics: XPath and Conte, Michael Fuller |
Month |