Subject: Re: [xsl] Re: FXPath - A comment on EXSL From: Jeni Tennison <mail@xxxxxxxxxxxxxxxx> Date: Thu, 1 Mar 2001 13:41:24 +0000 |
Hi David, > As the FXPath grammar is written, IfExpr has higher precedence than > AndExpr so it will be parsed as > > if (and) then (*) else (- 2) I'm no parser writer, but when you said: > If I've not overlooked something, the FXPath grammar can be parsed > with a single token lookahead. This is what's currently needed for > XPath 1.0. I thought that single token lookahead had something to do with only needing to look ahead a single token to be able to work out what a token means. Perhaps my naivety is showing through, but in your example: > or and and or and or or and or then you *know* that the first 'or' must be an element name because if it were an operator name then it would have something in front of it, so you *know* that the first 'and' has to be an operator name, so you *know* that the second 'and' has to be an element name and so on. So you can tokenise it all successfully before working out what kind of expression has priority. With: if and then * else - 2 then you look at the first 'if' and all you know is it could be an element name or the 'if' keyword. So you look ahead a single token, and see the 'and', but this doesn't help - the 'and' could be an element name (in which case the 'if' is a keyword) or it could be an operator (in which case the 'if' is an element name). In fact you have to tokenise the entire expression before you choose to interpret the 'if' as a keyword because the if expression has a higher priority than the and expression. Before then, you don't know whether it's going to work out to be: if and then * else (can only be an and expression) if and then * else or (can only be an if expression) if and then * else or foo (can only be an or expression) Perhaps I've misinterpreted the term 'single token lookahead'? Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Re: FXPath - A comment on EXS, David Rosenborg | Thread | Re: [xsl] Re: FXPath - A comment on, David Rosenborg |
[xsl] conditional include and param, ronald heller | Date | Re: [xsl] Re: FXPath - A comment on, David Rosenborg |
Month |