JIN, thank you for an interesting and informative post on REST. However, I do have issues with two aspects of it.
First, much of the post is focused on HTTP and I do not believe that Fielding ties REST transport to any specific protocol (https://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm).
And second, REST was not intended to be only a database access mechanism. The whole concept of representational state transfer is far too powerful to be limited in that way (https://medium.com/nerd-for-tech/designing-a-rest-api-3a070398750f).
I would be very interested in your thoughts on these issues.