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

Re: Simple Type SOAP Headers

Expand Messages
  • Simon Fell
    That s a good point. I d say its valid, although it doesn t account for everything. (a request which is valid to the schema is a valid request) You could also
    Message 1 of 5 , Aug 11, 2005
    • 0 Attachment
      That's a good point. I'd say its valid, although it doesn't account
      for everything. (a request which is valid to the schema is a valid
      request)

      You could also just allow the specific soap attrbiutes.

      <xs:complexType name="HeaderDateTimeType">
      <xs:simpleContent>
      <xs:extension base="xs:dateTime">
      </xs:simpleContent>
      <xs:attribute ref="soap:actor" />
      <xs:attribute ref="soap:mustUnderstand" />
      </xs:complexType>
      <xs:element name="ValidFrom" type="tns:HeaderDateTimeType"/>

      I remeber doing this a couple of years ago, and it caused havoc with
      every toolkit that tried to process it.

      or this, which is essentially the same as above, but probably less
      likely to trip up the tools.

      <xs:complexType name="HeaderDateTimeType">
      <xs:simpleContent>
      <xs:extension base="xs:dateTime">
      <xs:anyAttribute
      namespace="http://schemas.xmlsoap.org/soap/envelope/"
      processContents="strict" />
      </xs:extension>
      </xs:simpleContent>
      </xs:complexType>
      <xs:element name="ValidFrom" type="tns:HeaderDateTimeType"/>


      Do any of the tools that generate WSDL do this?

      Cheers
      Simon

      --- In soapbuilders@yahoogroups.com, "Kirill Gavrylyuk" <kirillg@m...>
      wrote:
      > Hi Simon,
      > .Net 1.1 behavior aside, this is an interesting issue, that I don't
      > think was discussed a lot (surprisingly).
      >
      > I do not believe that test_1header.wsdl at [1] is valid.
      >
      > The declaration of element tns:ValidFrom does not allow for SOAP
      > attributes. Element tns:ValidForm per WSDL spec will be used literally
      > in the message.
      >
      > I believe if you want to declare a header carrying a primitive type
      > values, at minimum you need to open up the attribute content.
      >
      > E.g.
      > <xs:complexType name="HeaderDateTimeType">
      > <xs:simpleContent>
      > <xs:extension base="xs:dateTime">
      > <xs:anyAttribute namespace="##other" processContents="lax" />
      > </xs:extension>
      > </xs:simpleContent>
      > </xs:complexType>
      > <xs:element name="ValidFrom" type="tns:HeaderDateTimeType"/>
      >
      > Thoughts?
      >
      >
      > -----Original Message-----
      > From: soapbuilders@yahoogroups.com [mailto:soapbuilders@yahoogroups.com]
      > On Behalf Of Simon Fell
      > Sent: Thursday, August 11, 2005 10:33 AM
      > To: soapbuilders@yahoogroups.com
      > Subject: [soapbuilders] Simple Type SOAP Headers
      >
      > I ran into some issues with SOAP Headers that are simple types when
      > using .NET 1.1. I documented the issues here
      > http://www.pocketsoap.com/weblog/2005/08/1557.html
      >
      > I was wondering how the other stacks handle this situation, there are
      > test WSDLs in the blog post if anyone has time to try out their own
      > stacks with them.
      >
      > Thanks!
      > Simon
      > www.pocketsoap.com
      >
      >
      >
      >
      >
      > -----------------------------------------------------------------
      > This group is a forum for builders of SOAP implementations to discuss
      > implementation and interoperability issues. Please stay on-topic.
      > Yahoo! Groups Links
    • Simon Fell
      ahhh, here s the pointer to when i last tried this http://www.dotnet247.com/247reference/msgs/7/36948.aspx cheers Simon
      Message 2 of 5 , Aug 11, 2005
      • 0 Attachment
        ahhh, here's the pointer to when i last tried this
        http://www.dotnet247.com/247reference/msgs/7/36948.aspx

        cheers
        Simon

        On Fri, 12 Aug 2005 01:14:59 -0000, in ws you wrote:

        >That's a good point. I'd say its valid, although it doesn't account
        >for everything. (a request which is valid to the schema is a valid
        >request)
        >
        >You could also just allow the specific soap attrbiutes.
        >
        ><xs:complexType name="HeaderDateTimeType">
        > <xs:simpleContent>
        > <xs:extension base="xs:dateTime">
        > </xs:simpleContent>
        > <xs:attribute ref="soap:actor" />
        > <xs:attribute ref="soap:mustUnderstand" />
        ></xs:complexType>
        ><xs:element name="ValidFrom" type="tns:HeaderDateTimeType"/>
        >
        >I remeber doing this a couple of years ago, and it caused havoc with
        >every toolkit that tried to process it.
        >
        >or this, which is essentially the same as above, but probably less
        >likely to trip up the tools.
        >
        ><xs:complexType name="HeaderDateTimeType">
        > <xs:simpleContent>
        > <xs:extension base="xs:dateTime">
        > <xs:anyAttribute
        >namespace="http://schemas.xmlsoap.org/soap/envelope/"
        >processContents="strict" />
        > </xs:extension>
        > </xs:simpleContent>
        > </xs:complexType>
        ><xs:element name="ValidFrom" type="tns:HeaderDateTimeType"/>
        >
        >
        >Do any of the tools that generate WSDL do this?
        >
        >Cheers
        >Simon
        >
        >--- In soapbuilders@yahoogroups.com, "Kirill Gavrylyuk" <kirillg@m...>
        >wrote:
        >> Hi Simon,
        >> .Net 1.1 behavior aside, this is an interesting issue, that I don't
        >> think was discussed a lot (surprisingly).
        >>
        >> I do not believe that test_1header.wsdl at [1] is valid.
        >>
        >> The declaration of element tns:ValidFrom does not allow for SOAP
        >> attributes. Element tns:ValidForm per WSDL spec will be used literally
        >> in the message.
        >>
        >> I believe if you want to declare a header carrying a primitive type
        >> values, at minimum you need to open up the attribute content.
        >>
        >> E.g.
        >> <xs:complexType name="HeaderDateTimeType">
        >> <xs:simpleContent>
        >> <xs:extension base="xs:dateTime">
        >> <xs:anyAttribute namespace="##other" processContents="lax" />
        >> </xs:extension>
        >> </xs:simpleContent>
        >> </xs:complexType>
        >> <xs:element name="ValidFrom" type="tns:HeaderDateTimeType"/>
        >>
        >> Thoughts?
        >>
        >>
        >> -----Original Message-----
        >> From: soapbuilders@yahoogroups.com [mailto:soapbuilders@yahoogroups.com]
        >> On Behalf Of Simon Fell
        >> Sent: Thursday, August 11, 2005 10:33 AM
        >> To: soapbuilders@yahoogroups.com
        >> Subject: [soapbuilders] Simple Type SOAP Headers
        >>
        >> I ran into some issues with SOAP Headers that are simple types when
        >> using .NET 1.1. I documented the issues here
        >> http://www.pocketsoap.com/weblog/2005/08/1557.html
        >>
        >> I was wondering how the other stacks handle this situation, there are
        >> test WSDLs in the blog post if anyone has time to try out their own
        >> stacks with them.
        >>
        >> Thanks!
        >> Simon
        >> www.pocketsoap.com
        >>
        >>
        >>
        >>
        >>
        >> -----------------------------------------------------------------
        >> This group is a forum for builders of SOAP implementations to discuss
        >> implementation and interoperability issues. Please stay on-topic.
        >> Yahoo! Groups Links
        >
        >
        >
        >
        >
        >-----------------------------------------------------------------
        >This group is a forum for builders of SOAP implementations to discuss implementation and interoperability issues. Please stay on-topic.
        >Yahoo! Groups Links
        >
        >
        >
        >
        >
      Your message has been successfully submitted and would be delivered to recipients shortly.