- From: <noah_mendelsohn@us.ibm.com>
- Date: Fri, 16 Oct 2009 16:35:06 -0400
- To: "Michael Kay" <mike@saxonica.com>
- Cc: "'Henry S. Thompson'" <ht@inf.ed.ac.uk>, "'XMLSchema at XML4Pharma'" <XMLSchema@XML4Pharma.com>, xmlschema-dev@w3.org
Michal Kay writes; > It's not clear what answers it gives for more complex > redefinition graphs. Well, it's been a long time since I've looked at it. I guess I assume that all redefinition graphs are in fact trees, I.e. each redefine can redefine only one thing, and ultimately there is a path back up to the collection of the coponents you would have had if no redefinitions at all were done. What I believe ACSOOD tries to do is, first collect all of the prototype components that are not themselves the result of redefines, then apply the redefinitions recursively, with each one being pervasive. Is there a particular sample you have in mind for which ACSOOD doesn't signal a fairly clear direction? You may well be right, but I'd be very curious to learn what it is. > And it doesn't appear to have anything to say about chameleon include. I went back and looked at it. You're right that it isn't dealt with explicitly. My suggestion would be that it be handled locally to the preparation of prototype components of each include step. Thus, if a schema with target namespace N included a schema doc with no explicit target NS, it would for ACSOOD purposes be as if the included document did have an explicit targetNamespace="N". If that same document were included in another context, then that would be handled as a completely separate include, with the same rule applied. I think this probably means that I would have to augment my list of schema document abstraction to actually make it a list of (schemadoc, targetNamespace) pairs, where in most cases the targetNamespace would be determined trivially from the schemadoc's attribute, but in the case of chameleon would be taken from the include statement. This would allow the same schemadoc to be included in the list repeatedly, once for each targetNS. Again, ACSOOD was an attempt to set down more crisply how I always thought the whole thing was working right along, though I later came to understand some of the ambiguities in the spec as written, and that other people have interpreted it differently. I also am a little unhappy with the fact that ACSOOD depends in its current form on identify of schema documents (it has a set of them), which raises some nasty questions about cases in which schemaLocation URIs differ in, e.g., upper/lowercase, but in ways that we know won't affect the referent (e.g. http://xxx vs. HTTP://xxx) ACSOOD more or less winds up treating these as distinct documents, potentially including them separately, and quite likely resulting in duplicate component errors. Otherwise, I think it's in the ballpark. Then again, I said as much in 2004, and it was clear that there were many differing opinions in the WG as to how things really work in 1.0, how they should work in 1.1, and especially in how to explain how they should work in 1.1. I really don't want to reopen all of that here. I'm just pointing to ACSOOD is a simple way of indicating what my personal assumptions have been about how redefine should work. Noah -------------------------------------- Noah Mendelsohn IBM Corporation One Rogers Street Cambridge, MA 02142 1-617-693-4036 -------------------------------------- "Michael Kay" <mike@saxonica.com> 10/16/2009 04:11 PM To: <noah_mendelsohn@us.ibm.com> cc: "'Henry S. Thompson'" <ht@inf.ed.ac.uk>, "'XMLSchema at XML4Pharma'" <XMLSchema@XML4Pharma.com>, <xmlschema-dev@w3.org> Subject: RE: Escalation mechanism for different interpretation of W3C XML-Schema specification ? > While my > ACSOOD proposal remains very incomplete and has a variety of > problems, I think it does more or less signal my thinking > about questions like this [1]. > Yes. It's close the the way I think about it. It appears to handle a chain of redefinition (A redefines B, B redefines C) in the same way as I do. It's not clear what answers it gives for more complex redefinition graphs. And it doesn't appear to have anything to say about chameleon include. Regards, Michael Kay http://www.saxonica.com/ http://twitter.com/michaelhkay
Received on Friday, 16 October 2009 20:35:59 UTC