Если вы хотите, чтобы ваш сервис мог использоваться любым клиентом, то передача XmlElement не является подходящим способом. Это не помещает в WSDL информацию, которую клиент может использовать, чтобы решить, что вам отправить.
Вместо этого передайте простой класс «Объект передачи данных». Это будет простой класс без поведения, только данные. Например:
public class PersonDTO
{
public int ID {get;set;}
public string Name {get;set;}
public List<AddressDTO> Addresses {get;set;}
}
public class AddressDTO
{
public string Line1 {get;set;}
public string City {get;set;}
public string PostalCode {get;set;}
}
Пусть ваш веб-метод примет один из них в качестве параметра, и он будет использоваться почти каждым клиентом в мире.