When did you first promote typed datasets as a lightweight way of passing data between tiers? Short answer...
Lightweight is relative, but starting with .NET 2.0, becuase you could set the remoting format for datasets to binary and squeeze them down quite a bit. (I had a 3 year span where I did a ton with remoting)...
With XML web services, I pass as XML (because others threatened to shoot me if I didn't!), and keep the schema at any tier where it would be needed as a shared library. (Except for that PITA Crystal issue that we talked about a long time ago)