Make that rpc/encoded ;) -----Original Message----- From: Cory Wilkerson Sent: Thursday, September 04, 2003 11:39 AM To: '[EMAIL PROTECTED]' Subject: RE: why oh why - soapenc & minOccurs -- some resolution!
Anne, I should have clarified, it was meant to represent rpc/literal. I guess it all boils down to whether or not the minOccurs attribute should have an affect on how a type is interpreted. If I've specified the type as xsd:int with minOccurs=0, is it valid for a toolkit to make the assumption that, since it could be absent from the payload (and by extension, nillable???), it has to be represented as soapenc:int? Thanks for all your help, Cory -----Original Message----- From: Anne Thomas Manes [mailto:[EMAIL PROTECTED] Sent: Thursday, September 04, 2003 10:30 AM To: [EMAIL PROTECTED] Subject: RE: why oh why - soapenc & minOccurs -- some resolution! A doc/literal schema should not use use soap encoding data types. Anne At 08:40 AM 9/4/2003 -0500, you wrote: >I'm kind of hoping that someone will back me up and confirm that this *is* >a bug. > >Cory > >-----Original Message----- >From: Mike Perham [mailto:[EMAIL PROTECTED] >Sent: Thursday, September 04, 2003 8:35 AM >To: [EMAIL PROTECTED] >Subject: RE: why oh why - soapenc & minOccurs -- some resolution! > > >Cory, don't forget to enter a bug or this will just get lost... > >-----Original Message----- >From: Cory Wilkerson [mailto:[EMAIL PROTECTED] >Sent: Wednesday, September 03, 2003 10:28 PM >To: [EMAIL PROTECTED] >Subject: FW: why oh why - soapenc & minOccurs -- some resolution! > > >Make that org.apache.axis.wsdl.symbolTable.Utils > >-----Original Message----- >From: Cory Wilkerson >Sent: Wednesday, September 03, 2003 10:26 PM >To: [EMAIL PROTECTED] >Subject: RE: why oh why - soapenc & minOccurs -- some resolution! > > >Aha -- because if the minOccurs attribute = 0, then Axis replaces the >qname that woulda been "xsd:int" (where xsd = >http://www.w3.org/2001/XMLSchema) with "soapenc:int" (where soapenc = >http://schemas.xmlsoap.org/soap/encoding/). This all takes place in >org.apache.axis.wsdl.symbolTable#getNillableQName -- it appears that the >Axis developers are coupling the concept of nillable and minOccurs = 0 >as per this comment from the source: > > // If we have a minoccurs="0"/maxoccurs="1", this is >just > // like a nillable single value, so treat it as >such. > >I don't mean to drag everyone into this, but is that correct? If the >thing *doesn't* occur, I suppose it could be represented as xs:nil, but, >seeing as how Axis is generating this from WSDL that clearly states the >type is of type "xsd:int" -- I don't think the the toolkit should be >making judgments as to whether or not it can swap in/out namespaces. >After all, the server side will most likely be expecting to see a value >from the xsd namespace. > >The issue gets further muddied when you consider that the soapenc's >(http://schemas.xmlsoap.org/soap/encoding/.) representation of int is >just a restriction on xsd's int (http://www.w3.org/2001/XMLSchema). > >I guess this is one of the reasons the ws-i people put their collective >foot down. >Cory > > >-----Original Message----- >From: Cory Wilkerson [mailto:[EMAIL PROTECTED] >Sent: Wednesday, September 03, 2003 5:20 PM >To: [EMAIL PROTECTED] >Subject: why oh why - soapenc & minOccurs > > >All, > >Does anyone have any input as to why, when given schema such as the >following: > ><wsdl:types> > <xsd:schema targetNamespace="http://www.foo.com" >xmlns:xsd="http://www.w3.org/2001/XMLSchema"> > <xsd:element name="foo"> > <xsd:complexType> > <xsd:sequence> > <xsd:element name="bar" >type="xsd:int" minOccurs="0"/> > </xsd:sequence> > </xsd:complexType> > </xsd:element> > </xsd:schema> ><wsdl:types> > >WSDL2Java generates code that indicates that bar is of type "int" as >defined in the "http://schemas.xmlsoap.org/soap/encoding/" namespace? I >am bewildered. If I remove the minOccurs attribute, Axis will generate >the correct stub. > >Sorry for a quasi-repost -- perhaps I didn't phrase my original issue >well or no one knew the answer ;). > >Thanks, >Cory Wilkerson
