OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

sca-assembly message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [sca-assembly] Issue 17 proposal


I missed the other half. Thanks for pointing that out. For some reason I 
thought issue 24 [1] dealt with that. AFAICT, 17 and 24 are the same.

SCA does not define a component model a la WSDL 2.0. All we have is 
Infoset. Not sure what you were thinking wrt to a formal proposal. I 
would be interested in seeing it. Wrt Qname resolution, my inclination 
is to say that all the resolutions happen in the context of the 
including composite. When u do an include there is no encapsulation, 
everything belongs to the including composite. The including composite 
defines the scope (property names, target names etc -- target names in 
either composite can freely mix service names from both composites) and 
the resolution mechanism. IOW, given a composite that contains one or 
more sca:include elements, there exists an equivalent composite without 
any sca:include elements whose characteristics are exactly the same. The 
rules in my proposal are for mapping a composite with include elements 
to one without.

Given that we don't have a formal component model a la WSDL 2.0, maybe 
equivalence rules is how we should state it in the spec.

Comments?

-Anish
--

[1] http://www.osoa.org/jira/browse/ASSEMBLY-24

Scott Vorthmann wrote:
> Anish,
> 
> I think the proposal as you've laid it out is reasonably sound, but I 
> think it addresses only half of issue 17 as captured.  I don't see 
> anything in your proposal to define when QNames, etc. are resolved.  (I 
> regard this as the thornier half of 17.)  Further, since your proposal 
> defines include at something like an XML Infoset level, it almost 
> exacerbates the QName problem... how would you require that "QNames have 
> already been resolved" if include is happening at this low level?
> 
> My suggestion is that we need to define include at the level of naming, 
> not at the level of XML.  In essence, we'd be saying that wire elements 
> (including those implied by "target=") in either composite can freely 
> mix component/service names from either composite.  Something similar 
> would be required for property names.  This achieves the goal of 
> include, and makes the XML issues moot.  I'd be happy to make a more 
> formal proposal along these lines, but perhaps we could have a little 
> discussion first.
> 
> Scott
> 
> On Feb 5, 2008, at 12:31 AM, Anish Karmarkar wrote:
> 
>> I took an action to provide a proposal to resolve issue 17 [1]. Here 
>> it is.
>>
>> The proposal in this email was discussed as an errata for SCA 1.0 in
>> OSOA, but it was decided that it resulted in too much change to be
>> considered an errata and therefore not implemented. The proposal below
>> was worked on by several folks in OSOA including Henning Bloom, Dave
>> Booz, Scott Vorthmann (hope I didn't miss anyone). But it should not be
>> construed that they agree with all the aspects of this proposal.
>>
>> I. Current problems with the spec:
>>
>> 1) inclusion is not defined recursively. I.e., it does not say what is
>> supposed to happen if an included composite contains an include (which
>> the spec says is allowed).
>> 2) It is defined as a textual include, which it most certainly isn't.
>> 3) Attributes (namespace decl, 'local' etc) on the included composite
>> are completely ignored.
>> 4) The current wording also says (through an example) that the composite
>> resulting from the inclusion must be complete. This isn't true if there
>> is recursive inclusion. Only a deployable composite needs to be complete.
>>
>> II. Proposal:
>>
>> 1) Attributes 'targetNamespace', 'name', 'constrainingType' and 'local'
>> on the included composite are thrown away. For constraints on 'local'
>> see #4 below.
>> Rationale: composite inclusion results in losing the
>> encapsulation/scoping. Element children of the included composite are
>> now part of the including composite and are scoped to the the including
>> composite. Therefore, the attributes 'targetNamespace' and 'name' of the
>> included composite have no relevance.
>> 2) All NS decl on the included composite are inherited by the each of
>> the child elements of the included composite if they are inscope (not
>> overridden).
>> Rationale: Element and attributes are (and can be) of type xs:QName.
>> This requires inscope NS decl/binding.
>> 3) Attribute 'autowire', if specified on the included composite, is
>> included on all containing component elements unless the containing
>> component already specifies that attribute.
>> Rationale: By sticking autowire on the composite it is inherited by the
>> contained composites. It is a nice short cut. The intention of the
>> creator of the composite is to autowire the components, therefore this
>> should be retained on inclusion.
>> 4) If the included composite has the value 'true' for the attribute
>> 'local' then the including composite must have the same value for the
>> 'local' attribute. If not, that is considered an error.
>> Rationale: This is based on the assertion that local="true" is a
>> constraint, and that constraints must not be arbitrarily removed.
>> Components which are not required to be collocated, can be collocated,
>> where as the converse is not necessarily true.
>> 5) Attributes 'requires' and 'policySet', if present on the included
>> composite, are "merged" with corresponding attribute on the containing
>> component, service and reference elements. "merge" here means a set 
>> union.
>> Rationale: since they are constraints that must not be overridden, they
>> are merged.
>> 6) Extension attribute ,if present on the included composite, must
>> follow the rules defined for that extension. Authors of attribute
>> extensions on the composite element must define rules for inclusion.
>> Rationale: depending on the extension, there may be various ways to deal
>> with attribute extensibility. It does not seem right to define a one
>> size fits all. Perhaps a default behavior may be appropriate.
>>
>> III. Note
>>
>> This proposal does *not* address the issue of xml:base occurring on the
>> <composite> element of the included composite. I think it is important,
>> but given the fact that artifacts in SCA (composites, bindings etc) are
>> identified by QNames, this is less of a problem.
>>
>> IV. Wording changes:
>>
>> Word document with change bars for relevant parts of section 6.6 (WD02)
>> attached. Note that I have not modified/added examples to demonstrate
>> the changes. We might want to add additional examples to illustrate the
>> changes.
>>
>> Comments?
>>
>> -Anish
>> -- 
>>
>> [1] http://www.osoa.org/jira/browse/ASSEMBLY-17
>> <assembly-issue-17-proposal.doc><ATT8019818.txt>
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe from this mail list, you must leave the OASIS TC that
> generates this mail.  You may a link to this group and all your TCs in 
> OASIS
> at:
> https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]