[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: Can XPointers be used as a name (was Re: RDDL for names ?(wasRe:XMLSchema built-in data typenamespaceURI.))
- From: Jonathan Borden <email@example.com>
- To: Eric van der Vlist <firstname.lastname@example.org>
- Date: Mon, 12 Mar 2001 22:32:52 -0500
Eric van der Vlist wrote:
> Jonathan Borden wrote:
> > This is where RDDL and/or Entity Catalogs come in.
> Is RDDL competing with W3C XML Schema for intrusiveness :=)) ???
sigh. no, but this problem is ultimately a wrinkle on the "what's at the end
of a namepace issue" and so RDDL is no more, (nor less!) intrusive than the
namespace issue it set out to solve.
> The URI may be a good schema location for my processing needs and a bad
> choice as a base name for my datatypes.
I think we are in substantial agreement that a datatype ought be denoted by
a URI. The question is how. Looking at this issue, and in the context of XML
Schema, the problem of equating an XML Schema datatype as currently
specified by a QName into a URI is starting to look like a nasty problem.
> The prefix is a shorthand for the namespace URI that is, in principle,
> independent of the schema location.
> This is a powerful feature of W3C XML Schema that would be lost if the
> namespace URI had to match the schema location.
Right. The namespace URI matches the targetLocation, and therein lies part
of the problem. Things like namespace URIs, base URIs, QNames are properly
part of "Core XML". The "targetNamespace" sets up a tricky parallel "base
URI" path that results in subtle but not easily resolved problems:
1) Does the "targetNamespace" denote the base URI (xml:base) ? Properly no,
but a QName is dependent on the targetNamespace and hence serves as a form
of base URI for type resolution.
2) "targetNamespace" applies to included modules that don't otherwise
specify their own targetNamespace -- this significantly complicates
developing a consistent rule of QName <-> URI
> What would be wrong with my proposal to let people choose a complete
> "name" (URI) for identifying their types ?
A QName and URI identifying a type need match, and be derivable from
eachother. Specifying a standalone URI is fine in principle, as long as you
would give up specifying types as QNames and I doubt that will happen at
this stage in the game.
> Those who would like it could use a scheme based on the schema location,
> other could use the namespace URI if it's different from the schema
> location and other could use whatever they like.
> To me, it's just adding more flexibility without adding any complexity.
How would you equate this URI with a QName identifying the type? I've yet to
see a consistant and general mechanism for doing so, and this is a serious
concern to me. It certainly is a nice syntactic convention to specify types
using QNames but at what cost?