← Prev in month
← Prev in thread
Next in thread →
Next in month →
Re: [sca-assembly] [ASSEMBLY-89] Need for a Callback annotation for WSDLinterface files - PROPOSAL update
Dave, Yes, this is a good point - and a hole in the existing specs since it's a case where the different markings of an interface turn up in different specifications today. (eg Java and Assembly) Currently, it is possible to mark a Java interface with a Java @Callback annotation to point to the callback interface. Clearly, it is then possible in the SCDL that uses such a marked interface to use the @callback attribute of the <interface/> element to point to a different interface. This would be an error, but it is not stated anywhere. This new proposal for WSDL interfaces just makes this more obvious - and everything in this case belongs to the Assembly spec ;-) So, let me take this on board and propose adding the following to the Assembly specification (where the error would get spotted in reality): Add to the end of Section 8.2, following line 2521: ---------------------------------------------------------------------------- Note that an interface document such as a WSDL file or a Java interface can contain annotations that declare a callback interface for a particular interface. Whenever such an interface is used in the declaration of an <interface/> element in SCA, it MUST be treated as being bidirectional with the declared callback interface. [ASM80010] In such cases, there is no requirement for the <interface/> element to declare the callback interface explicitly. Where a component uses an implementation and the component configuration declares an interface for a service or a reference, if the matching service or reference declaration in the component type declares an interface which has a callback interface, then the component interface declaration MUST also declare a compatible interface with a compatible callback interface. [ASM80011] Where a composite declares an interface for a composite service or a composite reference, if the promoted service or reference has an interface which has a callback interface, then the interface declaration for the composite service or the composite reference MUST also declare a compatible interface with a compatible callback interface. [ASM80012] See Section 6.4 Wires for a definition of "compatible interfaces". ---------------------------------------------------------------------------- I note that there is no normative description of the interface.wsdl element, so: Add new subsection to Section 8, following line 2635: ---------------------------------------------------------------------------- 8.5 WSDL Interface Type The WSDL interface type is used to declare interfaces for services and for references, where the interface is defined in terms of a WSDL document. This WSDL document MUST conform either to the WSDL 1.1 specification or to the WSDL 2.0 specification. [ASM80009] An interface is defined in terms of a WSDL Port Type for WSDL 1.1 and in terms of a WSDL Interface for WSDL 2.0. A WSDL interface is declared by an interface.wsdl element. The following shows the pseudo-schema for the interface.wsdl element: <!-- ConstrainingType schema snippet --> <interface.wsdl interface="xs:anyURI" callbackInterface="xs:anyURI"?> The interface.wsdl element has the following attributes: interface (1..1) - the URI of a WSDL Port Type (WSDL 1.1) or of a WSDL Interface (WSDL 2.0) callbackInterface(0..1) - an optional callback interface, which is the URI of a WSDL Port Type (WSDL 1.1) or of a WSDL Interface (WSDL 2.0) 8.5.1 Example of interface.wsdl <interface.wsdl interface=”http://www.stockquote.org/StockQuoteService#wsdl.porttype(StockQuote)” callbackIinterface=”http://www.stockquote.org/StockQuoteService#wsdl.porttype(StockQuoteCallback)”/> This declares an interface in terms of the WSDL 1.1 port type "StockQuote" with a callback interface defined by the "StockQuoteCallback" port type. ---------------------------------------------------------------------------- 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: From: David Booz <> To: Date: 19/11/2008 21:45 Subject: Re: [sca-assembly] [ASSEMBLY-89] Need for a Callback annotation for WSDL interface files - PROPOSAL What happens if both @callbackInterface and @callback are in use at the same time for a service or reference and they point to different interfaces? I would presume that's an error. Dave Booz STSM, BPM and SCA Architecture Co-Chair OASIS SCA-Policy TC and SCA-J TC "Distributed objects first, then world hunger" Poughkeepsie, NY (845)-435-6093 or 8-295-6093 e-mail: Mike Edwards ---11/19/2008 09:08:00 AM---Folks, The following is a proposal for resolving Issue 89: From: Mike Edwards <> To: "OASIS Assembly" <> Date: 11/19/2008 09:08 AM Subject: [sca-assembly] [ASSEMBLY-89] Need for a Callback annotation for WSDL interface files - PROPOSAL Folks, The following is a proposal for resolving Issue 89: (sca-assembly-1.1-spec-cd01-rev3.doc) Add the following at the end of Section 8.4, following line 2678: SCA defines an attribute which is used to indicate that a given WSDL Port Type element (WSDL 1.1) or WSDL Interface element (WSDL 2.0) has an associated callback interface. This is the @callback attribute, which can be applied to a WSDL <portType/> element or a WSDL <interface/> element. The @callback attribute is defined as a global attribute in the SCA namespace, as follows: <attribute name="callback" type="QName"/> The value of the @callback attribute is the QName of a Port Type (WSDL 1.1) or the QName of an Interface (WSDL 2.0). The Port Type or the Interface declared by the @callback attribute is the callback interface to use for the service which is annotated by the @callback attribute. Here is an example of a porttype element with a callback attribute: <portType name="LoanService" sca:callback="foo:LoanServiceCallback"> <operation name="apply"> <input message="tns:ApplicationInput"/> <output message="tns:ApplicationOutput"/> </operation> ... </portType> 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: 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 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
← Prev in month
← Prev in thread
Next in thread →
Next in month →