reviewed copy of the XML-CDL spec; <import>

Here is an updated copy. It extends the "formatting only changes" version of the doc I sent out last week 1. explicit mention of failure conditions on resolution and stuff 2. detail on how we expect import to work. Query on what the meaning of /.. is? that is, what happens when you try and go up from root. Unix says 'stop at /', windows says 'stop at the base dir of that system', Ant says 'break in unusual ways', but that may be fixed. I worry about relative references in import. 1. Should someone be able to supply a set of docs to resolve in a single deployment? 2. what schemas are to be mandated. For reference, smartfrog lets you only deploy one doc, but since all import paths #import "/absolute/paths/only/something.sf" are resolved in the classloader, you can add other .sf files to the classpath to deploy. Which works when you are deploying over RMI (as the client effectively expands the stuff inline), but not via SOAP or the like. -Steve

I haven't really been involved in the details of this before, so please ignore me if I make a fool of myself with stupid questions .. but I've been reading the XML CDL spec - I was particularly interested in the template and reference resolution semantics, and I have some general questions, and some specifics on the template resolution (more on references later, if you think this is useful) Specifics: 1) 7.2.1 - there doesn't seem to be an explicit statement of how the "extends" resources on sub-elements are resolved (as in the given example). I'm assuming that that "extends" attributes on any sub-elements are evaluated before the "extends" attributes on the element itself - is this correct? 2) 7.2.2 (1) - I'm assuming that any "extends" attributes on sub-elements of n' are evaluated at this time (as above). Is this correct? I think the above two points are important, otherwise it looks as if it might be possible to inherit the "extends" attributes, and things might get complicated (?) 3) 7.2.2.1 (2.2) I think the e should be e' ? 4) In the "hierarchical prototype reference" example on page 16, am I right in thinking that the first extends="WebServer" is redundant (in this case)? This is just to confirm my understanding of the semantics - things might be different, for example if (1) and (2) above were different. More general: 5) Are the template/reference semantics identical to SmartFrog? I've probably missed the discussions on "why" certain things are being done the way they are, but it would be really helpful to have some indication of this where there are important reasons. I was particularly interested in .... 6) It doesn't look like there is any multiple inheritance - is this correct? Was it considered? 7) The fact that inheritance applies to the immediate children only seems to cause some difficulties - was there some specific reason for doing things this way? 8) Is it possible to separate the template resolution phase from the other phases? ie. Could I write a transform that took an arbitrary CDL document and generated a semantically equivalent document that contains no templates? If this is the case, why would would I not want to resolve out all the templates before deploying the document? I hope this makes some sense ... Many Thanks Paul
participants (2)
-
Paul Anderson
-
Steve Loughran