sca-policy message
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]
Subject: [NEW ISSUE] Need Support for Mutually exclusive intents
- From: Mike Edwards <mike_edwards@uk.ibm.com>
- To: "OASIS Policy" <sca-policy@lists.oasis-open.org>
- Date: Wed, 21 Nov 2007 10:32:12 +0000
RAISER: Mike Edwards
TARGET: Policy Framework Specification
DESCRIPTION:
The current Policy Framework does not
provide a means to define intents
and/or qualified intents which are mutually
exclusive. There is a need to be
able to define intents which are mutually
exclusive and for the exclusion to
be checked by tooling and runtimes to
avoid the error of specifying
exclusive intents on a single artifact.
In addition, there should be rules
defined for the handling of mutually
exclusive intents which are attached at
different levels in the assembly tree.
PROPOSAL:
Intents and Qualified Intents may either
be additive or they may be mutually exclusive.
For additive intents, a single artifact
may have multiple intents/qualified intents applied
to it and all of the intents/qualified
intents apply to that artifact. For mutually exclusive
intents, only one of the set of mutually
exclusive intents/qualified intents can be applied
to a given artifact. If multiple of
the mutually exclusive intents/qualified intents are
applied to one artifact, it is an error.
Intents and qualified intents are additive
by default. Mutually exclusive intents must be
explicitly declared using an exclusion
list in the definition of the intent concerned.
Mutually exclusive intents are only
exclusive of the set of intents in the exclusion list
- for all other intents or qualified
intents they are additive.
For an intent or a qualified intent,
the exlusion list is defined as part of the <intent.../>
declaration, using a new @excludes attribute,
which contains a list of the excluded intents
as a set of QNames. For qualified intents,
"*" may be used as a wildcard to indicate the
exclusion of all (other) qualified intents
with the same intent name root:
Examples:
<intent name="SomeIntent"
constrains="..." excludes="IntentFoo IntentBar" />
- the intent SomeIntent is mutually
exclusive with the intents IntentFoo and IntentBar
<intent name="SomeIntent.QualifierA"
excludes="SomeIntent.*" />
- the qualified intent SomeIntent.QualifierA
is mutually exclusive with all other qualified
forms of the SomeIntent intent
Note that if one intent declares itself
to be exclusive of some other intent, it is not
required that the other intent also
names the original intent in its exclude list, although
it is good practice to do this.
Treatment of Intents in a composition
hierarchy
Where one intent is applied to a given
artifact in a composition and another intent is
applied to one of its parents, which
intents apply to the artifact differs depending on whether
the two intents are Additive or Mutually
Exclusive.
- Where the intents are Additive, both
intents apply to the artifact and its child artifacts.
- Where the intents are mutually exclusive,
only the intent attached directly to the artifact
applies to the artifact and to its child
artifacts.
Yours, Mike.
Strategist - Emerging Technologies, SCA & SDO.
Co Chair OASIS SCA Assembly TC.
IBM Hursley Park, Mail Point 146, Winchester, SO21 2JN, Great Britain.
Phone & FAX: +44-1962-818014 Mobile: +44-7802-467431
Email: mike_edwards@uk.ibm.com
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]