Assuming you are writing the client and server, and both are in php, the service should probably take a string Use __tostring() to covert a mongoid to the hex string, which you can cover back with the mongoid constructor. If that's not the case, I can suggest workarounds based on what you can control. If you don't control the service, you should post the past of the wsdl defining what it's expecting for the mongoid. On Jun 26, 2013 8:01 AM, "Nikolay Sukhikh" <_mk_@ukr.net> wrote: > I'm trying to pass function parameter of type MongoId through SoapClient. > The problem is that MongoId objects have public property '$id' and > SoapClient generates invalid XML for them: > > <param xsi:type="SOAP-ENC:Struct"><$**id > xsi:type="xsd:string">**51ca25b506e4e9872800000a</$id>**</param> > > Is there any way to workaround this? > > -- > PHP Soap Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > >