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

 


Help: OASIS Mailing Lists Help | MarkMail Help

sca-policy message

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


Subject: Re: [sca-policy] ISSUE 15 -- Are policySets additive or overrideable


Section 4.6 from the resolution to Issue 38 says:

For explicitly listed policySets, the list in the component using the
implementation may override policySets from the component type. More
precisely, a policySet on the componentType is considered to be overridden,
and is not used, if it has a @provides list that includes an intent that is
also listed in any component policySet @provides list.



Then moving to section 4.10:
If you look at step C of the policySet selection algorithm it describes how
to "normalize" the attached policySets.

C. Calculate the list of explicitly specified policySets that apply to the
target element.

In this calculation, a policySet applies to a target element if the XPath
expression contained in the policySet’s @appliesTo attribute is evaluated
against the parent of the target element and the result of the XPath
expression includes the target element. For example,
@appliesTo=”binding.ws[@impl=’axis’]” will match any binding.ws element
that has an @impl attribute value of ‘axis’.



The list of explicitly specified policySets is calculated as follows:

      Start with the list of policySets specified in the element's
   @policySets attribute.
      If any of these explicitly listed policySets does not apply to the
   target element (binding or  implementation) then the composite is
   invalid. The point of this rule is that it must have been a mistake to
   have explicitly listed a policySet on a binding or implementation
   element that cannot apply to that element.
      Include the values of @policySets attributes from ancestor elements.
      Remove any policySet where the XPath expression in that policySet’s
   @appliesTo attribute does not match the target element. It is not an
   error for an element to inherit a policySet from an ancestor element
   which doesn’t apply.


C.3. is the key.  The Policy spec seems to indicate that policySets are
additive, there is no concept of overrides mentioned here.



My summary of the current spec:

policySets can be overridden when they are introduced into the infoset from
a componentType, otherwise they are aggregated/accumulated.


In the context of issue 15 (external attachment), since we've already
stated a general rule that external attachment has similar semantics to
direct attachment, then external attachment would have to occur before C
above and would abide by the rule stated in section 4.6.


Dave Booz
STSM, SCA and WebSphere Architecture
Co-Chair OASIS SCA-Policy TC
"Distributed objects first, then world hunger"
Poughkeepsie, NY (845)-435-6093  or  8-295-6093
e-mail:booz@us.ibm.com
http://washome.austin.ibm.com/xwiki/bin/view/SCA2Team/WebHome


                                                                           
             ashok malhotra                                                
             <ashok.malhotra@o                                             
             racle.com>                                                 To 
                                       OASIS Policy                        
             05/05/2008 04:30          <sca-policy@lists.oasis-open.org>   
             PM                                                         cc 
                                                                           
                                                                   Subject 
             Please respond to         [sca-policy] ISSUE 15 -- Are        
             ashok.malhotra@or         policySets additive or overrideable 
                 acle.com                                                  
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           




We had a discussion on today's call whether policySets on services,
references and bindings can be overridden by the
component or do the policySets on the component add to what's already
attached to services, references and bindings.
Here is what I found in the Assembly 1.00 spec:

412 Most of the characteristics of the services, references and
properties may be overridden by a
413 component that uses and configures the implementation, or the
component can decide not to
414 override those characteristics. Some characteristics cannot be
overridden, such as intents.
415 Other characteristics, such as interfaces, can only be overridden in
particular controlled ways
416 (see the Component section for details).

The component section does not explicitly mention whether the policySets
attached to the component add to or
override the policySets on services, references and bindings.  We need
to decide this to make progress.

Here's my 2 cents:
- a policySet that provides a qualified intent overrides a policySet
that provides the same intent in the unqualified form
- if a policySet from a component provides the identical intent as a
policySet on a service, reference and binding the
policySet from the component overrides
- in all other cases, the policySets on the component add to the
policySets on services, references and bindings
--
All the best, Ashok

---------------------------------------------------------------------
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]