{"id":728,"date":"2005-03-25T01:11:00","date_gmt":"2005-03-25T05:11:00","guid":{"rendered":"http:\/\/www.markbaker.ca\/wp\/2005\/03\/25\/restaurant\/"},"modified":"2005-03-25T01:11:00","modified_gmt":"2005-03-25T05:11:00","slug":"restaurant","status":"publish","type":"post","link":"http:\/\/www.markbaker.ca\/blog\/2005\/03\/restaurant\/","title":{"rendered":"RESTaurant"},"content":{"rendered":"<p><a href=\"http:\/\/blogs.msdn.com\/mikechampion\/archive\/2005\/03\/23\/400961.aspx\">Mike Champion asks<\/a>;<\/p>\n\n<blockquote cite=\"http:\/\/blogs.msdn.com\/mikechampion\/archive\/2005\/03\/23\/400961.aspx\">\n[&#8230;]we all know what a service-oriented automated restaurant would look like &#8212; just like the human-powered service-oriented restaurants that have evolved over that last couple hundred years.  What about a resource-oriented restaurant?  I can see how that would work for fast food place (GET a menu, POST an order, which returns a URI one can GET the status of the order from &#8230;.).  How about a real full-service restaurant, with a server who handles the details of the complex asynchronous interactions between a table full of people and a busy kitchen?\n<\/blockquote>\n\n<p>I could imagine an &#8220;order&#8221; document being submitted (POST) to the\nkitchen, either directly by the customer, or indirectly via the server.\nThe server probably polls (GET) the kitchen on occasion in order to be\nable to estimate arrival time of the meals, or discover when they&#8217;re\nout of some ingredient.  Or perhaps the kitchen notifies (POST) the\nserver.  Or both.  In a nutshell, documents moving around.<\/p>\n\n<p>Is there any more complex scenarios I should cover?<\/p>\n\n<p>Mike finishes up that paragraph with this;<\/p>\n\n<blockquote>\nSure, one could implement those interactions with XML and HTTP, but would a system design\nthat talks about resources and representations really be more sensible than one that talks about services an\nd requests?\n<\/blockquote>\n\n<p>I don&#8217;t know about &#8220;sensible&#8221;; that seems a rather subjective call.\nBut I do know that the resource oriented (RESTful) solution would exhibit\ngreater degrees of architectural properties such as scalability, visibility,\nand simplicity than the service oriented solution, because RESTful solutions\nembody architectural constraints which induce those properties.<\/p>","protected":false},"excerpt":{"rendered":"Mike Champion asks; [&#8230;]we all know what a service-oriented automated restaurant would look like &#8212; just like the human-powered service-oriented restaurants that have evolved over that last couple hundred years. What about a resource-oriented restaurant? I can see how that would work for fast food place (GET a menu, POST an order, which returns a [&hellip;]","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[22,40],"class_list":["post-728","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-rest","tag-xml"],"_links":{"self":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/posts\/728","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/comments?post=728"}],"version-history":[{"count":0,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/posts\/728\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/media?parent=728"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/categories?post=728"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/tags?post=728"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}