Glen, I have been fighting against this sort of questions from several weeks now,
I start a sample project that is on Jira about correct handling, unfortunately I haven't found an answer from someone who know, neither I have found the way to produce correct code for server, client faults. Anyway my idea, is to only expose the exception that can be handled by the client, like InvalidCountryNameFault or MaxRequestQuantityOverLimit, mark these as Client Fault, and any other exception like (RuntimeException), DBNotAvailable, etc (things client can't handle, ServiceException) as a general exception marked as Server Fault, but as I said, I haven't found the way to do this. Regards, -- David Castañeda R.