support both soap and xml clients