I have heard enough about `RESTful service should be stateless. All state info should be stored in client. And each request should contain all the necessary state info`.

But why? What's the benefit of doing that? `Only when I know its benefit/motivation can I use it properly.`

What if my client have a huge amount of state? Suppose there's an online document editing application. Does client have to send the full text he/she is editing when calling server's RESTful API? Or is this scenario simply not suitable for RESTful approach?