- From: Jacek Kopecky <jacek.kopecky@systinet.com>
- Date: Mon, 03 Nov 2003 13:22:40 -0800
- To: Umit Yalcinalp <umit.yalcinalp@oracle.com>
- Cc: WS Description List <www-ws-desc@w3.org>
Umit,
I have a few rephrasing suggestions:
On Sun, 2003-11-02 at 13:30, Umit Yalcinalp wrote:
> Per my action item dated 2003-10-30 (it was 2003-10-23, but not
> recorder), here is the proposed wording for the rpc rules splitting the
> rules into two buckets and incorporating the agreed items [1] on Oct
> 23rd 2003 concall.
>
> --umit
>
> [1] http://lists.w3.org/Archives/Public/www-ws-desc/2003Oct/0058.html
>
>
>
> ______________________________________________________________________
> 2.3.1.1 Operation Style
>
> An Interface Operation component contains a {style} property. This
> property can only contain a URI value. However, it is OPTIONAL for
> this property to have a value. If the {style} property has a value,
> this implies specific rules that were used to define the {body}
> properties of all {message reference}s within that component
> designated by the URI.
[replacing the last sentence above]
If the {style} property has a value, it implies the rules that were used
to define the properties of that operation component.
>
> The specification defines rules that MUST be followed when the style
> attribute has one of the following values:
[instead of the above sentence]
This specification includes the following three operation styles:
>
> *
> RPC Style (see 2.3.1.1.1 RPC Style
> <http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl12/wsdl12.html#RPCStyle>)
>
> *
> Set-Attribute Style (see 2.3.1.1.2 Set-Attribute Style
> <http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl12/wsdl12.html#AttrSetStyle>)
>
> *
> Get-Attribute Style (see 2.3.1.1.3 Get-Attribute Style
> <http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl12/wsdl12.html#AttrGetStyle>)
>
>
> 2.3.1.1.1 RPC Style
>
> The RPC style is selected by assigning the Interface Operation
> component's {style} property the value
> http://www.w3.org/@@@@/@@/wsdl/style/rpc.
>
> Use of this value states that XML Schema [XML Schema: Structures
> <http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl12/wsdl12.html#XMLSchemaP1>]
> was used to define the schemas of the {body} properties of all
> {message reference} components of the Interface Operation
> component.
>
> Those schemas MUST adhere to the following rules:
>
> * The content model of input and output {body} elements are defined
> using a complex type that contains a sequence from XML Schema.
>
> * The sequence MUST only contain elements. It MUST NOT contain other
> structures such as xs:choice.
>
> * The sequence MUST contain only local element children.
>
> * The child elements MAY contain the following attributes:
> xsi:Nillable, minOccurs and maxOccurs.
>
> * The localPart of input element's QName MUST be the same as the
> Interface operation component's name.
>
> * The localPart of the output element's QName is obtained by
> concatenating the name of the operation and the string value
> "Response", i.e. concat(operation/@name,"Response").
>
> * Input and output elements MUST all be in the same namespace.
[rephrasing the above rule]
* Input and output elements MUST both be in the same namespace.
> * The complex type that defines the body of an input or an output
> element MUST NOT contain any attributes.
>
> * If an element that appears as a child of an input element also
> appears as a child of an output element, it MUST be declared by
> using the same type.
[Are we lacking a rule forbidding the (input|output) sequence to contain
an element multiple times?]
>
> Furhermore, the following rules MAY BE used to map between a message
> and a signature of a remote procedure call. These rules are suggested
> conventions to accomodate mapping.
>
>
> * If an element is a child of the input element and an element
> with the same name is not a child of the output element, then it
> represents an input parameter.
>
> * If an element is a child of the output element and an element
> with the same name is not a child of the input element, then it
> represents an output parameter.
>
> * If an element that occurs as a child element both in the input
> and the output elements, then it represents an in/out parameter.
>
> * Each element represents a single parameter irrespective of its
> cardinality.
>
> * The parameter order is specified by using the parameterOrder attribute.
>
> [TBD: Needs parameterOrder to be specified in detail]
>
> * The return value is specified by the return attribute.
>
> [TBD : Needs return attribute to be specified in detail and may be
> omitted pending action on the definition of parameterOrder]
>
>
Received on Monday, 3 November 2003 16:22:56 UTC