Loading ...
Sorry, an error occurred while loading the content.

Re: Round 4 - Illegal Fault Soap Messages for Encoded case

Expand Messages
  • Bob Cunnings
    Hi, Oh, sorry, I missed the point. You are addressing one of the more confusing cases in WSDL 1.1 sec. 3.5 and the subject of some debate in the past, which I
    Message 1 of 6 , Jul 1, 2003
    • 0 Attachment
      Hi,

      Oh, sorry, I missed the point. You are addressing one of the more confusing
      cases in WSDL 1.1 sec. 3.5 and the subject of some debate in the past, which
      I recall only as being inconclusive.

      It reads, referring to the case use="literal" with <part> referencing a
      type:

      "In the second, the type referenced by the part becomes the schema type of
      the enclosing element (Body for document style or part accessor element for
      rpc style)."

      This may make sense if the type referenced is an complex type, but doesn't
      if the type is a simple type, because the SOAP "Body" and "detail" complex
      types can only have element content as immediate children [1], or at least
      that is my understanding of the situation. In SOAP 1.1 sec. 4.3 the same
      language is used as in the case of the detail element, stating that body
      entries are encoded as independent elements.

      So I've always thought that you simply can't do this, even though the WSDL
      mechanisms allow it, since the result conflicts with the SOAP 1.1 rules. The
      WSDL reader here doesn't handle this second case at all, it accepts type
      references in <part> only if use is encoded, avoiding the issue entirely.

      So I'm of no help on this point. Maybe someone else has insights into this
      or can better recall the outcome of discussions in the past.

      RC

      [1] http://schemas.xmlsoap.org/soap/envelope/


      > Hi Bob,
      > I understand how faults will work when the message part is
      > referring to an element and the use is literal.
      >
      > I was more interested to see how soap fault messages will look like
      > when wsdl message part refers to an abstract type and the use is
      > literal.
      >
      > I mean,
      > <message name="StringFault">
      > <part name="part2" type="xsd:string" />
      > </message>
      >
      > Use is Literal.
      >
      > Appreciate your help,
      > thanks,
      > adi
      >
    • Pete Hendry
      Although section 2.3 says * *type*. Refers to an XSD simpleType or complexType using a QName. section 2.3.1 contradicts this with if the message contents are
      Message 2 of 6 , Jul 1, 2003
      • 0 Attachment
        Although section 2.3 says

        * *type*. Refers to an XSD simpleType or complexType using a QName.

        section 2.3.1 contradicts this with

        "if the message contents are sufficiently complex, then an alternative
        syntax may be used to specify the composite structure of the message
        using the type system directly"

        I think this makes the intention clear ("composite structure") but
        contradicts the definition of "type" above. One reason the simpleType
        may be included is for MIME where the part may be base64Binary or
        hexBinary which are simpleTypes.

        Because the spec is so vague (on just about everything!) different
        implementator can read into it differently and so provide different
        functionality. However, if interop is important to you then I would
        avoid using simple types with "type" (with the exception of defining
        MIME message parts).

        Pete



        Bob Cunnings wrote:

        >Hi,
        >
        >Oh, sorry, I missed the point. You are addressing one of the more confusing
        >cases in WSDL 1.1 sec. 3.5 and the subject of some debate in the past, which
        >I recall only as being inconclusive.
        >
        >It reads, referring to the case use="literal" with <part> referencing a
        >type:
        >
        >"In the second, the type referenced by the part becomes the schema type of
        >the enclosing element (Body for document style or part accessor element for
        >rpc style)."
        >
        >This may make sense if the type referenced is an complex type, but doesn't
        >if the type is a simple type, because the SOAP "Body" and "detail" complex
        >types can only have element content as immediate children [1], or at least
        >that is my understanding of the situation. In SOAP 1.1 sec. 4.3 the same
        >language is used as in the case of the detail element, stating that body
        >entries are encoded as independent elements.
        >
        >So I've always thought that you simply can't do this, even though the WSDL
        >mechanisms allow it, since the result conflicts with the SOAP 1.1 rules. The
        >WSDL reader here doesn't handle this second case at all, it accepts type
        >references in <part> only if use is encoded, avoiding the issue entirely.
        >
        >So I'm of no help on this point. Maybe someone else has insights into this
        >or can better recall the outcome of discussions in the past.
        >
        >RC
        >
        >[1] http://schemas.xmlsoap.org/soap/envelope/
        >
        >
        >
        >
        >>Hi Bob,
        >> I understand how faults will work when the message part is
        >>referring to an element and the use is literal.
        >>
        >> I was more interested to see how soap fault messages will look like
        >>when wsdl message part refers to an abstract type and the use is
        >>literal.
        >>
        >> I mean,
        >> <message name="StringFault">
        >> <part name="part2" type="xsd:string" />
        >> </message>
        >>
        >> Use is Literal.
        >>
        >>Appreciate your help,
        >>thanks,
        >>adi
        >>
        >>
        >>
        >
        >
        >
        >
        >
        >-----------------------------------------------------------------
        >This group is a forum for builders of SOAP implementations to discuss implementation and interoperability issues. Please stay on-topic.
        >
        >To unsubscribe from this group, send an email to:
        >soapbuilders-unsubscribe@yahoogroups.com
        >
        >
        >
        >Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
        >
        >
        >
        >
      Your message has been successfully submitted and would be delivered to recipients shortly.