I'm relatively new to web services and I was wondering why, when authors
create a web service that queries a database, that they don't just
return the dataset object in the exposed method as in the following
fragment:

[WebMethod]
public System.Data.DataSet someQuery(string queryString)
{
[...]

return dataset;
}

What I usually see is that authors return a class, which describes the
structure of the results (like a table definition).

Is this just per convention or is there another explanation?

Thank you in advance,

--
Sean