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: [ISSUE 64] Specification inconsistent on whether a default value forProperty on a Constraining Type is allowed or not - PROPOSAL



Folks,

The following is a proposal to RESOLVE Issue 64:

Line numbers refer to sca-assembly-1.1-spec-cd01-rev2.pdf:

The basic idea is to accept that the text in lines 2231 - 2236 is correct and that the constraining type
cannot set values for services, references or properties.  This then requires changes in the pseudo
schema and in the real schema, which are detailed below:

(Pseudo schema) Replace lines 2266 - 2269 with the following:

<property name="xs:NCName" (type="xs:QName" | element="xs:QName") many="xs:boolean"?/>*


Change the XSD definition of constrainingType between lines 3986 - 4001 to include:
<service/> subelement which is of a new "ConstrainedService" type
<reference/> subelement which is of a new "ConstrainedReference" type
<property/> subelement which is of a new "ConstrainedProperty" type.

<element name="constrainingType" type="sca:ConstrainingType"/>
   <complexType name="ConstrainingType">
      <sequence>
         <choice minOccurs="0" maxOccurs="unbounded">
            <element name="service" type="sca:ConstrainedService"/>
            <element name="reference" type="sca:ConstrainedReference"/>
            <element name="property" type="sca:ConstrainedProperty" />
         </choice>
         <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
      </sequence>
      <attribute name="name" type="NCName" use="required"/>
      <attribute name="targetNamespace" type="anyURI"/>
      <attribute name="requires" type="sca:listOfQNames" use="optional"/>
      <anyAttribute namespace="##other" processContents="lax"/>
</complexType>

Add ConstrainedService, ConstrainedReference and ConstrainedProperty type definitions after line 3985:

<complexType name="ConstrainedService">
   <sequence>
      <element ref="sca:interface" minOccurs="0" maxOccurs="1"/>
      <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" />
   </sequence>
   <attribute name="name" type="NCName" use="required" />
   <attribute name="requires" type="sca:listOfQNames" use="optional" />
   <anyAttribute namespace="##other" processContents="lax" />
</complexType>

(This type allows for an interface definition and the name and requires attributes)

<complexType name="ConstrainedReference">
   <sequence>
      <element ref="sca:interface" minOccurs="0" maxOccurs="1"/>
      <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" />
   </sequence>
   <attribute name="name" type="NCName" use="required" />
   <attribute name="multiplicity" type="sca:Multiplicity" use="optional" default="1..1" />
   <attribute name="requires" type="sca:listOfQNames" use="optional" />
   <anyAttribute namespace="##other" processContents="lax" />
</complexType>

(This type allows for an interface definition and the name, multiplicity and requires attributes)

<complexType name="ConstrainedProperty">
   <complexContent>
      <attribute name="name" type="NCName" use="required"/>
      <attribute name="type" type="QName" use="optional"/>
      <attribute name="element" type="QName" use="optional"/>
      <attribute name="many" type="boolean" default="false" use="optional"/>
      <anyAttribute namespace="##other" processContents="lax"/>
   </complexContent>
</complexType>

(This type has attributes only and cannot hold a value.  It also cannot indicate "mustSupply" since
this is a feature of an implementation.)


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]