On Mon, 2004-05-17 at 17:18 +0100, Davey wrote: > Al Baker wrote: > > Take a look at the Axis guide for a good list of primitives: > > http://ws.apache.org/axis/java/user-guide.html > > > > As for arrays, I think they should always be encoded as an Array and > > qualified with the namespace. > > With the SOAP-ENC namespace? I did this :) Cool. > > > > For objects, I would look at the auto translation system that is already > > in PEAR. This is more or less what PEAR will do for an incoming request > > (i.e. automatically create an object from the WSDL). > > > > I chose Struct's for objects That's what SOAP_Value in PEAR SOAP does (more or less). The tricky parts come in when you have a struct that contains another struct, array, and arrays of structs, etc. > > Do not forget WSDL simpleTypes so you can use enumerations. > > I don't understand this :/ In WSDL there's a standard for defining an enumeration, and it's done with the simpleType tag. You can work around this in PEAR SOAP by creating a complex type with a name 'enumeration', but I think it would be better to have a simpler way to do this. It would be great if the enum was ultimately some PHP array. > > > > FYI, I think what's needed more then this is something like wsdl2php > > (like Axis has wsdl2java). PEAR has a pretty flexible SOAP_Value API > > right now, but it sucks that you have to write all of your objects by > > hand. If there was something to automatically generate these, this > > would go along way to speeding up development. > > Will be working on this. Crtx_WSDL also has a Crtx_WSDL_Parser class > which will generate the framework code it can from a WSDL file. I've not > yet started to work on this, but will do in short order. > > All of this code, is PHP5 only, I should point that out. PHP5, hot damn. Unfortunately that'll just be a roadmap item for me. > - Davey > > -- > PHP Soap Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > -- PHP Soap Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php