sca-assembly message
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]
Subject: [ISSUE 62] What is the default value for many and mustSupply on Properties? Discussionand proposed resolution
- From: Mike Edwards <mike_edwards@uk.ibm.com>
- To: "OASIS Assembly" <sca-assembly@lists.oasis-open.org>
- Date: Tue, 23 Sep 2008 14:14:12 +0100
Folks,
I was given an action at last week's
Assembly TC to stimulate discussion on the resolution to Issue 62.
This note is to kick off the discussion.
First, let me cleanly split the discussion
between the @many attribute and the @mustSupply attribute.
These need to be treated separately.
The document line numbers all refer
to sca-assembly-1.1-spec-cd01-rev2.doc
The recommendations below form the basis
of a resolution to the issue.
A) @many attribute.
This is defined in 3 places:
1) Component Type
- line 376
2) Component
- line 990
3) Composite
- line 1477
For Component Type, it is described
as optional. No default is specified.
RECOMMEND:
Add the following to the end of the
paragraph following line 376.
"If many is not specified, it takes
a default value of false."
For Component, it already states that
the attribute value is an override and can
only restrict what is stated on the
component type (ie many=false can override
many=true).
What is not stated is what the default
is if the attribute is not specified.
RECOMMEND:
Add the following to the end of the
paragraph following line 990:
"If many is not specified, it takes
the value defined by the component type of the
implementation used by the component."
For Composite, the @many attribute is
a simple declaration. The existing text
makes this clear and also states that
if absent, the default value of many is false.
No changes required.
B) @mustSupply attribute:
This is defined in 3 places:
1) Component Type
- line 379
2) Component
- line 990
3) Composite
- line 1480
For Component Type, it is described
as optional. No default is specified.
RECOMMEND:
Add the following to the end of the
paragraph following line 379.
"If mustSupply is not specified,
it takes a default value of false."
For Component, the @mustSupply attribute
makes no sense whatsoever.
@mustSupply is an instruction FROM THE
IMPLEMENTATION TO THE
COMPONENT that the component has to
do something. There is no sense in
the component giving itself an instruction.
RECOMMEND:
Remove the @mustSupply attribute from
<property/> within a <component/>
- this will affect the text around line
990, plus the XSD at the end of document.
For Composite, since it is an implementation
type, it is reasonable for it to be
able to state that the property value
must be supplied by a using component
- the composite can choose whether to
supply a default value, just like other
implementation types.
The paragraph at line 1480 already says
that the default value for the
@mustSupply is false.
No changes required.
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]