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] NEW ISSUE: Abstract base type for Service and Reference


In the Tuscany model, we have used the noun "Contract" for this purpose. I 
think a noun is preferable to an adjective.  Any other ideas?

    Simon

Simon C. Nash, IBM Distinguished Engineer
Member of the IBM Academy of Technology
Tel. +44-1962-815156  Fax +44-1962-818999



"David DiFranco" <ddifranc@bea.com> 
25/10/2007 15:00

To
<sca-assembly@lists.oasis-open.org>
cc

Subject
[sca-assembly] NEW ISSUE: Abstract base type for Service and Reference






Title: Abstract base type for Service and Reference
TARGET: Assembly spec 
DESCRIPTION: The XML schema definitions for Service and Reference contain 
an identical set of elements, and also share some attributes.  It would be 
useful to have Service and Reference extend from a common base class. 
This would make it easier to deal with Services and References 
programmatically, when processing an SCA XML file, or working with code 
generated from the XML schema.
PROPOSAL: 
New proposed schema content below.  If someone can think of a better name 
for the base type than ?Bindable?, please suggest.
 
<complexType name="Bindable" abstract="true">
    <sequence>
        <element ref="sca:interface" minOccurs="0" maxOccurs="1" />
        <element name="operation" type="sca:Operation" minOccurs="0" 
maxOccurs="unbounded" />
        <choice minOccurs="0" maxOccurs="unbounded">
            <element ref="sca:binding" />
            <any namespace="##other" processContents="lax" minOccurs="0" 
maxOccurs="unbounded" />
        </choice>
        <element ref="sca:callback" 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" />
    <attribute name="policySets" type="sca:listOfQNames" use="optional"/>
    <anyAttribute namespace="##any" processContents="lax" />
</complexType>
 
<complexType name="Service"> 
    <complexContent>
        <extension base="sca:Bindable"> 
            <attribute name="promote" type="anyURI" use="required" />   
        </extension>
    </complexContent>
</complexType>
 
<complexType name="Reference"> 
    <complexContent>
        <extension base="sca:Bindable"> 
            <attribute name="target" type="sca:listOfAnyURIs" use=
"optional"/>
            <attribute name="wiredByImpl" type="boolean" use="optional" 
default="false"/>
            <attribute name="multiplicity" type="sca:Multiplicity" use=
"optional" default="1..1" />
            <attribute name="promote" type="sca:listOfAnyURIs" use=
"required" />
        </extension>
    </complexContent> 
</complexType> 
 

Notice: This email message, together with any attachments, may contain 
information of BEA Systems, Inc., its subsidiaries and affiliated 
entities, that may be confidential, proprietary, copyrighted and/or 
legally privileged, and is intended solely for the use of the individual 
or entity named in this message. If you are not the intended recipient, 
and have received this message in error, please immediately return this by 
email and then delete it.






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]