RE: Namespace prefixes for functions and operators considered confusing

Actually they are in a namespace that is made the default namespace, but
you can also use the fn: prefix (you can write data() or fn:data()). 

Some reasons why the functions are in the fn: namespace and not in the
no-namespace:

1. user's that write their own local functions in the prolog do most
likely not want to assign namespaces to them.
2. the namespace allows better version management for future versions
(breaking bug fixes etc.).

Your proposal to not but the built-in functions into a namespace
certainly could have been chosen as well. As Michael Kay explained,
there was quite some discussion about this and in my personal opinion,
both approaches are viable...

Best regards
Michael

> -----Original Message-----
> From: Elliotte Rusty Harold [mailto:elharo@metalab.unc.edu]
> Sent: Sunday, November 16, 2003 5:23 AM
> To: Michael Rys; public-qt-comments@w3.org
> Subject: RE: Namespace prefixes for functions and operators considered
> confusing
> 
> At 11:23 PM -0800 11/15/03, Michael Rys wrote:
> >The functions in XPath 1.0/XSLT 1.0 already use the notion of
namespaces
> >for scoping function libraries. Since we need such a mechanism and
need
> >to be backwards compatible with XPath 1.0/XSLT 1.0, there is really
no
> >other choice. The reason that op: is specially handled is because
these
> >functions are not accessible and are only used for definitional use.
> 
> XSLT 1.0 uses these only for extension functions, not for built-in
> functions. Furthermore, for extension functions XSLT does use the
> in-scope namespaces as declared on the elements. Neither of these
> applies here. We're talking about built-in functions in XSLT
> 2.0/XQuery, and furthermore the prefix fn is not actually used in
> XSLT stylesheets, XQuery queries, and presumably not in other
> yet-to-be-invented uses of XPath 2.0 either.
> 
> I reiterate:
> 
> 1. The XPath 2.0 built-in functions are not in a namespace.
> 2. There is nothing in the namespaces specification that in any way
> allows functions to be placed in a namespace.
> 3. There is nothing in an XSLT 2.0 stylesheet or an XQuery query that
> in any way suggests that the functions are in a namespace.
> 
> And therefore, the verbiage in the functions and operators draft
> claiming that these functions are in a namespace is untrue,
> unhelpful, and unnecessary. It should be removed.
> 
> --
> 
>    Elliotte Rusty Harold
>    elharo@metalab.unc.edu
>    Effective XML (Addison-Wesley, 2003)
>    http://www.cafeconleche.org/books/effectivexml
> 
>
http://www.amazon.com/exec/obidos/ISBN%3D0321150406/ref%3Dnosim/cafeaula
it
> A

Received on Monday, 17 November 2003 02:55:36 UTC