- From: David Ezell <David_E3@VERIFONE.com>
- Date: Fri, 8 Sep 2006 11:05:49 -0400
- To: "Webb Roberts" <webb.roberts@gtri.gatech.edu>, "Mark Goodhand" <mrg@decisionsoft.com>
- Cc: <xmlschema-dev@w3.org>
- Message-ID: <2554CD143BF133449AB61786FA333CDEF4BA5C@TPANTMAIL.verifone.com>
Both of the following comments seem to have merit, but it's either unclear how to implement them or why they'd be important in XML as opposed to OO. N.B. when I joined the schema WG I was an OO programmer, and it was not at all clear to me what was good for OO wouldn't be good for XML. The reasons this logic really doesn't hold completely are subtle, not completely self-evident, and therefore unsatisfying. I offer the following comments realizing that you'll have to buy in to this idea before you see my answer as anything other than sandbagging. Mark Goodhand wrote: > I've long found it frustrating that in order to reuse schema > components, you have to make them global. You mentioned that you are frustrated by this fact. Can you elaborate? Is that databinding doesn't work as you expect, or some other problem? Many members of the Schema WG believe that you should be able to create local complex types and reuse them at that scope, assuming that's what you're requesting. (Note that the schema component model could allow this construct, but the XML serialization syntax has no way to express it.) This belief (which I've held at times and may hold again) is IMO based in the idea of OO scoping. You have to remember that you can't hide data in XML. It's not that the idea is bad, it's that the two systems are not isomorphic. Webb Roberts wrote: >The other big need for this that I've seen is when doing extensions of >restrictions: The restriction can't be an anonymous type; it has to have a name. So, even >though the final type (the extension) is the only type you want to be used, both the >restriction and its extension are available for use. If you can see a glimmer of reason in the above argument, then let me push you a little further to see that the Schema REC defines "abstract" to define types you don't want used directly. Granted that's not the same as not available, but "abstract" sends a strong signal that a type is not to be used without refinement of some kind. Best regards, David Ezell
Received on Friday, 8 September 2006 15:04:55 UTC