[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Namespaces, schemas, Simon's filters.
At 03:49 PM 24/08/01 -0700, Ronald Bourret wrote: >1) A fundamental assumption of XML is that element types are global. Depends what you mean by "type". As that term is used in the XML 1.0 specifition, it's basically a synonym for what SGML used to call a GI and what the DOM calls a TagName. These are indeed "global" in the sense that a name is a name is a name. Furthermore, the XML 1.0 DTD validation mechanism ties validation *only* to type. However, lots of other XML software routinely does context- sensitive processing of elements, using more information than just the type. XML Schemas (and all their competitors) wisely support this. In modern XML processing practice, element types are not "global" in any meaningful sense. Thus, I disagree with (1). >2) The namespaces spec reinforces (1) by providing technology that >allows people to make element type names be universally unique. Once again, that's just its *name*. You can apply all sorts of context-sensitive processing, so that you process two things that have the same name quite differently. Thus, I disagree with (2). >3) Local element type names are not universally unique. They are only >unique to their containing element type. (In this sense, they are >similar to unqualified attribute names.) This contradicts (1). This statement seems true (thus no surprise that it contradicts (1), which is not true). >4) If a local element type is in a namespace, (2) is no longer true. Correct, but (2) was never true. >5) To provide a workaround for (4), the XML Schemas spec allows local >element type names to be in no namespace at all. This places them >outside the scope of the namespaces spec. (Good practice: If you use >unqualified local element type names, explicitly turn off the default >namespace on the parent element in the instance document. Otherwise, >they could accidentally end up in the default namespace.) Allowing the creation of content models that include subelements with no namespace is a reasonable thing to do, and lots of people have shown use cases. I've argued that I think this is bad practice, but there's nothing inconsistent or broken about wanting to do this. >6) Point (5) resolves the technical conflict between local element type >names and the namespaces spec, albeit in a somewhat sneaky manner. It >does not solve the philosophical conflict between local element types >and (1). There is no such conflict. An element's name (or type in the XML 1.0 sense) is not and has never been the only determinant of its semantics. I fail to see the philosophical conflict. HMMMMM... is part of the problem here the heavy overloading of the word "type"? -Tim
|
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
|