Lists Home |
Date Index |
From: "Dare Obasanjo" <firstname.lastname@example.org>
> Type inference can be ridiculously expensive and in some cases
> undecidable for complex types. Named typing and enforcing explicit casts
> by users via operations such as validate() are the best option in
> creating something reasonably implementable and understandable. Of
> course, these things are only issues because XQuery is supposed to be
> "statically typed"
Is inferencing always that difficult?
If we assume DTDs, then we have both a kind of Unique Particle
Attribute rule and no local elements or equivalents. If the DTDs were
namespace aware and allowed declarations of the WXS builtin datatypes, it seems
pretty trivial to annotate a query with the correct casts.
If we have local elements, then the path in a query would have
to also be augmented with enough of a path to ensure locality,
and other definitions of the same element name would have
to be similarly augmented so they exclude the local element.
Presumably XQuery expects the Unique Particle Attribute rule,
then presumably it just means that the intersection of
ambiguous elements in RELAX would have to be used.