[Versa] Updated ebnf with no conflicts
Jeremy Kloth
jeremy.kloth at fourthought.com
Mon Sep 26 11:09:54 MDT 2005
On Monday 26 September 2005 11:04 am, Michael Olson wrote:
> > I see them being differentiated by bindings alone. If the qname (in
> > expanded
> > form) is bound to a function where a function-reference is allowed,
> > use it.
> > There may be other issues I'm missing, but this doesn't seem difficult
> > for an
> > implementation to do.
>
> There is, because "rdf:type(all())" is a valid function call. We
> discussed it on some thread on the list, but basically it translates to
> a traverse expression of all() - rdf:type -> *. So, in the case of
> rdf:type it is _always_ a bound function call, and it is always a valid
> qname-constant.
>
> It would even be valid not in the special case as a function can always
> be defined with a qname, and can always conflict with a qname-constant.
>
> @function ext:name = all();
> list (ext:name)
So, you are saying a *function-reference* is a valid input to the list
function?
--
Jeremy Kloth
Fourthought, Inc.
http://fourthought.com/
http://4suite.org/
More information about the Versa
mailing list