I posted a problem earlier which turns out to boil down to complex types. The code below works but outputs an element named 'c-gensym4' and I can't find a way to make define that element name. Please help! XML <smiles xsi:type="namesp2:ArrayOfString"> <c-gensym4 xsi:type="xsd:string">data</c-gensym4> </smiles> Produced by SOAP::Data->name( smiles => \SOAP::Data->value( $data # produces element 'c-gensym6' # SOAP::Data->name("string" => $data ), )->type('string') )->type('ArrayOfString'); tia Lee