Let's say that Object had the attribute "abstract=true", then clearly the Folder class should be generated since that would be the only type that could be instantiated and passed over the wire.
---------------------------------------------------------------------------------------------------------------- In the case that Object does not have the "abstract=true" attribute, then either Object or Folder could be passed over the wire. It certainly wouldn't offend me to generate both. It certainly could offend a user if it didn't generate Folder. +1 to generating both Object and Folder. So if an xml type is referenced, then all complexTypes that extend the referenced type should be marked as referenced. Rich Scheuerle XML & Web Services Development 512-838-5115 (IBM TL 678-5115) "St-Germain, Sylvain" To: [EMAIL PROTECTED], [EMAIL PROTECTED] <Sylvain.StGermain@ cc: cognos.com> Subject: RE: What should WSDL2Java generate on inheritance? 02/04/2002 03:07 PM Please respond to axis-dev Russel, You say "...But perhaps it SHOULD be generated because it COULD be used as an Object?" I say: "It SHOULD be generated because it WILL be used." -- Sylvain -----Original Message----- From: Russell Butek [mailto:[EMAIL PROTECTED]] Sent: Monday, February 04, 2002 1:47 PM To: [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Subject: What should WSDL2Java generate on inheritance? Folks in axis-dev, there's a discussion going on in axis-user about what WSDL2Java generates. Given: > > <complexType name="Object"> > > <sequence> > > [...] > > </sequence> > > </complexType> > > > > <complexType name="Folder"> > > <complexContent> > > <extension base="types:Object"> > > <sequence> > > [...] > > </sequence> > > </extension> > > </complexContent> > > </complexType> > > > > <message name="addInput"> > > <part name="input" type="types:Object"/> > > </message> > > <message name="addOutput"> > > <part name="result" type="xsd:string"/> > > </message> > > > > <operation name="add"> > > <input message="cm:addInput"/> > > <output message="cm:addOutput"/> > > </operation> There are 2 types here: Object, and Folder (for which Object is the base). Object is generated because it's in the addInput message which is in the add operation. Folder is NOT generated because it isn't referenced anywhere. But perhaps it SHOULD be generated because it COULD be used as an Object? Question: what is the right thing to do? Russell Butek [EMAIL PROTECTED] This message may contain privileged and/or confidential information. If you have received this e-mail in error or are not the intended recipient, you may not use, copy, disseminate or distribute it; do not open any attachments, delete it immediately from your system and notify the sender promptly by e-mail that you have done so. Thank you.