|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: DSDL: use cases: namespace declaration notation
james anderson wrote: > > I find this abusive and no more correct than renaming x and y as Fred > > and Ginger. > > Taken to the extreme, this characterisation implies that all element > sets should include a fixed namespace declaration in their > "top-level" element(s). In which case the NAMESPACE notation is superfluous. I finally see what you're getting at. You feel that xmlns "attributes" must be in the DTD anyway, so the NAMESPACE notation is redundant. Since the "validation DTD" will define validation in different terms (two part names v. lexical names, data types, etc.) than XML 1.0, there is a better solution: treat the xmlns thingies as namespace declarations, not attributes. This means you don't need to declare them in the DTD and can use the NAMESPACE notation, which is much cleaner and easier to use/understand. > > They were not in any namespace, so when used in a compound > > document, they should continue not to be in any namespace. > > Does the "default" namespace mean something different in a document > definition than it means in the document entity? I don't believe so. It identifies the namespace (if any) to be used with unqualified names. > The notion of "not in any namespace" is bogus. Technically, it isn't. To quote from the namespaces spec: "If the URI reference in a default namespace declaration is empty, then unprefixed elements in the scope of the declaration are not considered to be in any namespace." However, I'm happy to agree that it is equivalent to having a namespace with a null URI. > Unprefixed qualified > names which appear outside of the scope of a default > namespace declaration are identified with universal names in a > distinguished "null" namespace. For which there is an implicit > declaration. Again, that's technically an implementation detail. Nothing in the namespaces spec requires it. > If there were not true, such names would be incommensuarable and > validation would not be possible. I'm not sure what "incommensurable" means, but I don't follow why validation is not possible. You simply have two sets of validation rules -- one for validating names in namespaces and the other for validating names not in namespaces. You can, of course, join these into a single code line by using a "null" namespace for the latter but, as I said, that's an implementation detail. > How is one to use a declaration with indefinite scope to emulate the > lexical scope of attribute-based declarations within the > document entity? One doesn't. Why is this a requirement? (Note that the proposed validation DTD is no different from other schema languages in this respect. Neither is intended to perform lexical validation of QNames.) -- Ron
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|
|||||||||

Cart








