<wsdl:message> (or not) - PowerPoint PPT Presentation

About This Presentation
Title:

<wsdl:message> (or not)

Description:

Pros/Cons. Pros: Eliminates message / part SOAP doc/lit binding is immediate ... Cons: Sleight-of-hand for soap:Body type. Second class support for other type ... – PowerPoint PPT presentation

Number of Views:12
Avg rating:3.0/5.0
Slides: 10
Provided by: sanjivawe
Learn more at: https://lists.w3.org
Category:
Tags: cons | pros

less

Transcript and Presenter's Notes

Title: <wsdl:message> (or not)


1
ltwsdlmessagegt (or not)
2
ltmessagegt What problem is it trying to solve?
  • Indicate the data that is sent to or received
    from a service
  • Typically the information sent is more than one
    thing
  • May contain optional pieces of data or things
    which occur repeatedly
  • Each thing is typed
  • At least two type systems are common on the Web
    Schema, MIME
  • Others must also be supported, e.g. Java

3
SOAP 1.2 Data Model
4
SOAP 1.2 DM with Attachments / PASWA
Outer Package
SOAP Envelope
Other stuff
5
Options for WSDL 1.2
  • Leave ltmessagegt
  • Doesnt support repeating stuff, optionality etc.
  • Type/element split causes binding headaches
  • Inline ltpartgt within ltoperationgt
  • See proposal by Sanjiva
  • Still has many of the problems of ltmessagegt
  • Just say input/output of an operation is a single
    complexType or element
  • Have to do some sleight-of-hand in the SOAP
    binding
  • Basically ltsoapBodygt already has a type (say
    xtBody), and this type would effectively be an
    alternate type
  • Non-XSD type systems

6
An Approach
  • ltoperation namencnamegt
  • ltinput complexTypeqname/gt
  • ltoutput complexTypeqname/gt
  • lt/operationgt
  • The type cannot be arbitrary
  • Having attributes means you cannot literally
    stuff it in ltsoapBodygt
  • We would need to go thru and precisely define
    what subset of complexType is legal and
    acceptable for a variety of bindings
  • Use the PASWA-style approach for non-XSD type
    systems
  • ltelement namexray typexsdbinary
    xmimeTypeimage/jpeg/
    gt
  • ltelement namefoo typexsdbinary
    xjavaTypejavaa.b.C/gt
  • Having to name the type sucks

7
An Approach 2
  • ltoperation namencnamegt
  • ltinputgt
  • ltcomplexTypegt
  • lt/complexTypegt
  • lt/inputgt
  • ltoutputgt
  • .
  • lt/outputgt
  • lt/operationgt
  • Alternatively we can define input as an
    extension of complexType
  • ltcomplexType nameinput extendscomplexTypegt
  • lt/complexTypegt
  • (See next page)

8
Syntax
  • ltoperation namencnamegt
  • ltinputgt
  • ltxsdsequencegt
  • lt/xsdsequencegt
  • (etc.)
  • lt/inputgt
  • lt/operationgt

9
Pros/Cons
  • Pros
  • Eliminates ltmessagegt/ltpartgt
  • SOAP doc/lit binding is immediate
  • PASWA style approach for attachments is also
    immediate
  • Gives optionality etc. as offered by XSD
  • Cons
  • Sleight-of-hand for soapBody type
  • Second class support for other type systems
Write a Comment
User Comments (0)
About PowerShow.com