Semantic analysis: currently no semantic analysis is performed.
Therefore the _expression_ a/(43+23)/f is correctly parsed but an error
should be raised.
> IMO, I think it would be OK to let the application that uses the XPath API find/report these errors. In the case above, if the app supports static
> typing, then it can report an error given that not(xs:integer <: node).
I think it would be great if the XPath API provides this feature that can be turned on or not. However I agree it is not critical (especially since I read again the Basic XPath functionnality level, and realized that a dynamic error is raised for "a/(43+23)/f")
function call: right now, 'function call' AST nodes are created without
knowing the name of the function, which prevent fine-grain specialisation
at construction time. The same problem occurs with sequence types. I just
need to figure out how to do it in javacc.
> Could you elaborate this a bit more?
Right now, each time a function call is parsed, an AST node is created by only passing the node id to the factory method. Therefore, applications can't create sub-objects of FunctionCallImpl by using the name of the function call. I suppose that during the call of the create method in SimpleNode it's possible to get the last token that was parsed.
Thanks!
Lionel
| Santiago Pericas-Geertsen <[EMAIL PROTECTED]>
07/28/2003 10:55 AM
|
To: [EMAIL PROTECTED] cc: Subject: Re: XPath API issues and plans |
Lionel Villard wrote:
XPath API implementation:
- Semantic analysis: currently no semantic analysis is performed.
Therefore the _expression_ a/(43+23)/f is correctly parsed but an error
should be raised.
IMO, I think it would be OK to let the application that uses the XPath API find/report these errors. In the case above, if the app supports static typing, then it can report an error given that not(xs:integer <: node).
Parser:
- function call: right now, 'function call' AST nodes are created without
knowing the name of the function, which prevent fine-grain specialisation
at construction time. The same problem occurs with sequence types. I just
need to figure out how to do it in javacc.
Could you elaborate this a bit more?
Thanks.
-- Santiago
