[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [sca-assembly] [ISSUE 117] Definition of compatible supersetand subset - Updated Proposal
On last Tuesday's call I took an action item to produce a proposal for the interface mapping rules for subset compatibility and superset compatibility, in the following cases: 1. component type service compatibility with component service 2. component service compatibility with promoted composite service 3. component type reference compatibility with component reference 4. component reference compatibility with promoted composite reference 5. component reference compatibility with component service (wiring) 6. constraining type service compatibility with component service or component type service 7. constraining type reference compatibility with component reference or component type reference Case 1: Map from component service interface to component type interface. The component type must be capable of handling anything that can come through the component service interface. Case 2: Map from composite service interface to component interface. The component must be capable of handling anything that can come through the composite service interface. Case 3: Map from component type reference interface to component interface. The component reference must be capable of handling any invocations made by the implementation through the component type reference. Case 4: Map from component reference interface to composite interface. The composite reference must be capable of handling any invocations made by the component through the component reference. Case 5: Map from reference interface to service interface. The service must be capable of handling any invocations made by the reference. Case 6: Map from constraining type service interface to component interface or component type interface. The component or component type must be capable of handling anything that can come through the constraining type interface. Case 7: Map from component reference interface or component type reference interface to constraining type interface. The constraining type reference must be capable of handling any invocations made by the component implementation or the component. Summary: In all cases the type mapping (if needed) is done by mapping the interface type of the "subset interface" to the interface type of the "superset interface". Simon Mike Edwards wrote: > > Folks, > > My proposal is that we resolve Issue 117 with the following: > > Insert a new section 7.2, following line 2493 in CD02 Rev6: > > 7.2 Interface Compatiibility > > The compatibility of two interfaces is defined in this section and these > definitions are used throughout this specification. Two forms of > compatibility are defined - Subset Compatibility and Superset > Compatibility. > > 7.2.1 Interface Subset Compatibility > > An interface B is a compatible subset of another interface A if and > only if all of points 1 through 7 in the following list apply. > > 1. interfaces A and B are either both remotable or else both local > 2. the set of operations in interface B is the same as or is a subset of > the > set of operations in interface A > 3. compatibility for individual operations of an interface is defined > as compatibility of the signature, i.e., the operation name, > input types, and output types are the same > 4. the order of the input and output types for each operation in > interface A is the same as the order of the input and output types > for the corresponding operation in interface B > 5. the set of Faults and Exceptions expected by each operation in > interface A is the same as or a subset of the set of Faults and > Exceptions > specified by the corresponding operation in interface B > > 6. For checking the compatibility of 2 remotable interfaces which are in > different > interface languages, both are mapped to WSDL 1.1 (if not already > WSDL 1.1) and > compatibility checking is done between the WSDL 1.1 mapped interfaces. > > WSDL 1.1 message parts can point to an XML Schema element > declaration or > to an XML Schema types. When determining compatibility between two > WSDL > operations, a message part that points to an XML Schema element > declaration is considered to be incompatible with a message part that > points to an XML Schema type. > > For checking the compatibility of 2 local interfaces which are in > different > interface languages, the method of checking compatibility is defined > by the > specifications which define those interface types, which must define > mapping > rules for the 2 interface types concerned. > > 7. if either interface A or interface B declares a callback interface > then both interface A and interface B declare callback interfaces > and the callback interface declared on interface A is a compatible > subset of the callback interface declared on interface B, > according to points 1 through 6 above > > 7.2.2 Interface Superset Compatibility > > An interface B is a compatible superset of another interface A if and > only if all of points 1 through 7 in the following list apply. > > 1. interfaces A and B are either both remotable or else both local > 2. the set of operations in interface B is the same as or is a superset > of the > operations in interface A > 3. compatibility for individual operations of an interface is defined > as compatibility of the signature, i.e., the operation name, > input types, and output types are the same > 4. the order of the input and output types for each operation in > interface B is the same as the order of the input and output types > for the corresponding operation in interface A > 5. the set of Faults and Exceptions specified by each operation in > interface B is the same as or a subset of the set of Faults and > Exceptions > expected by the corresponding operation in interface A > 6. For checking the compatibility of 2 remotable interfaces which are in > different > interface languages, both are mapped to WSDL 1.1 (if not already > WSDL 1.1) and > compatibility checking is done between the WSDL 1.1 mapped interfaces. > > WSDL 1.1 message parts can point to an XML Schema element > declaration or > to an XML Schema types. When determining compatibility between two > WSDL > operations, a message part that points to an XML Schema element > declaration is considered to be incompatible with a message part that > points to an XML Schema type. > > For checking the compatibility of 2 local interfaces which are in > different > interface languages, the method of checking compatibility is defined > by the > specifications which define those interface types, which must define > mapping > rules for the 2 interface types concerned. > 7. if either interface A or interface B declares a callback interface > then both interface A and interface B declare callback interfaces > and the callback interface declared on interface A is a compatible > superset of the callback interface declared on interface B, > according to points 1 through 6 above > > > > > > > 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]