<?xml version="1.0"?>
<!-- RSS generated by Radio UserLand v8.2.1 on Wed, 06 Sep 2006 10:19:15 GMT -->
<rss version="2.0">
	<channel>
		<title>Nicholas Gall: Service-Oriented Architecture</title>
		<link>http://radio.weblogs.com/0126951/categories/serviceOrientedArchitecture/</link>
		<description>Posts directly discussing SOA.</description>
		<language>en-us</language>
		<copyright>Copyright 2006 Nicholas Gall</copyright>
		<lastBuildDate>Wed, 06 Sep 2006 10:19:15 GMT</lastBuildDate>
		<docs>http://backend.userland.com/rss</docs>
		<generator>Radio UserLand v8.2.1</generator>
		<managingEditor>nick.gall@metagroup.com</managingEditor>
		<webMaster>nick.gall@metagroup.com</webMaster>
		<category domain="http://www.weblogs.com/rssUpdates/changes.xml">rssUpdates</category> 
		<skipHours>
			<hour>18</hour>
			<hour>20</hour>
			<hour>19</hour>
			<hour>17</hour>
			<hour>21</hour>
			<hour>23</hour>
			<hour>7</hour>
			<hour>0</hour>
			</skipHours>
		<cloud domain="radio.xmlstoragesystem.com" port="80" path="/RPC2" registerProcedure="xmlStorageSystem.rssPleaseNotify" protocol="xml-rpc"/>
		<ttl>60</ttl>
		<item>
			<title>Cisco launches Application-Oriented Networking.</title>
			<link>http://radio.weblogs.com/0126951/categories/serviceOrientedArchitecture/2005/06/22.html#a186</link>
			<description>&lt;font size=&quot;2&quot;&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;Yesterday, Cisco finally &lt;/span&gt;&lt;a style=&quot;font-family: arial;&quot; href=&quot;http://www.furl.net/item.jsp?id=3544585&quot;&gt;announced AON&lt;/a&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;
(Application-Oriented Networking), which is basically the ability to
process Web services in a Cisco router. I hope this will wake up the
SOA/WS-* world to the fact that for Web services to be anywhere near as
big a deal as we are all claiming, then it had better be understood as
a new application-level network based the SOAP envelope. Web services
is not an RPC, its not a bus (not even an ESB)--its a fully routable
SOAP network with SOAP intermediaries handling both business as well as
technical functions.&lt;/span&gt;&lt;br style=&quot;font-family: arial;&quot;&gt;
&lt;br style=&quot;font-family: arial;&quot;&gt;
&lt;span style=&quot;font-family: arial;&quot;&gt;
Let me also remind everyone that AON also stands for Aspect-Oriented
Networking. As I&apos;ve mentioned before in my blog (see Endpoint services
vs. protocol services and Aspect-oriented Networking), the SOAP header
processing model enables SOAP features that are effectively aspects.
Let me point out some others who are making the connection: &lt;/span&gt;&lt;a style=&quot;font-family: arial;&quot; href=&quot;http://www.furl.net/item.jsp?id=3543746&quot;&gt;Carlos Perez&lt;/a&gt; (&lt;a style=&quot;font-family: arial;&quot; href=&quot;http://www.furl.net/item.jsp?id=3223256&quot;&gt;twice&lt;/a&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;),&amp;nbsp; &lt;/span&gt;&lt;a style=&quot;font-family: arial;&quot; href=&quot;http://www.furl.net/item.jsp?id=3543821&quot;&gt;Jason Brome&lt;/a&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;, &lt;/span&gt;&lt;a style=&quot;font-family: arial;&quot; href=&quot;http://www.furl.net/item.jsp?id=3543844&quot;&gt;Michael Curry&lt;/a&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;, and &lt;/span&gt;&lt;a style=&quot;font-family: arial;&quot; href=&quot;http://www.furl.net/item.jsp?id=3543770&quot;&gt;Loosely Coupled&lt;/a&gt;&lt;span style=&quot;font-family: arial;&quot;&gt; (sort of). And my favorite reference is this paper, &lt;/span&gt;&lt;a style=&quot;font-family: arial;&quot; href=&quot;http://www.furl.net/item.jsp?id=3544913&quot;&gt;Identical Principles, Higher Layers: Modeling Web Services as Protocol Stack&lt;/a&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;, which I discussed in a &lt;/span&gt;&lt;a style=&quot;font-family: arial;&quot; href=&quot;http://radio.weblogs.com/0126951/2004/09/16.html#a144&quot;&gt;previous entry&lt;/a&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;.&lt;/span&gt;&lt;br style=&quot;font-family: arial;&quot;&gt;
&lt;/font&gt;



</description>
			<guid>http://radio.weblogs.com/0126951/categories/serviceOrientedArchitecture/2005/06/22.html#a186</guid>
			<pubDate>Wed, 22 Jun 2005 11:55:03 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=126951&amp;amp;p=186&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0126951%2F2005%2F06%2F22.html%23a186</comments>
			</item>
		<item>
			<title>A SOA for Shipping - The 20-Ton Packet.</title>
			<link>http://radio.weblogs.com/0126951/categories/serviceOrientedArchitecture/2005/06/02.html#a184</link>
			<description>&lt;font size=&quot;2&quot;&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;One of my favorite example of &lt;/span&gt;&lt;a style=&quot;font-family: arial;&quot; href=&quot;http://radio.weblogs.com/0126951/2004/02/18.html#a98&quot;&gt;Service-Oriented Architecture&lt;/a&gt;&lt;span style=&quot;font-family: arial;&quot;&gt; outside of IT is &lt;/span&gt;&lt;a style=&quot;font-family: arial;&quot; href=&quot;http://www.furl.net/item.jsp?id=3314771&quot;&gt;intermodal containerized shipping&lt;/a&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;. So I can&apos;t believe that I haven&apos;t blogged about the great Wired magazine article, &lt;/span&gt;&lt;a style=&quot;font-family: arial;&quot; href=&quot;http://www.furl.net/item.jsp?id=3314738&quot;&gt;The 20-Ton Packet&lt;/a&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;,
that makes the same analogy between the Internet and container shipping
that I do. My analogy goes somewhat deeper into the concept of &lt;/span&gt;&lt;a style=&quot;font-family: arial;&quot; href=&quot;http://www.furl.net/item.jsp?id=3180949&quot;&gt;spanning layer&lt;/a&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;, etc., but the article is great, nonetheless.&lt;/span&gt;&lt;br style=&quot;font-family: arial;&quot;&gt;
&lt;/font&gt;</description>
			<guid>http://radio.weblogs.com/0126951/categories/serviceOrientedArchitecture/2005/06/02.html#a184</guid>
			<pubDate>Thu, 02 Jun 2005 09:40:29 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=126951&amp;amp;p=184&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0126951%2F2005%2F06%2F02.html%23a184</comments>
			</item>
		<item>
			<title>200 SERVICES! That&apos;s great - but how many clients?</title>
			<link>http://radio.weblogs.com/0126951/categories/serviceOrientedArchitecture/2005/06/01.html#a182</link>
			<description>&lt;font size=&quot;2&quot;&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;Here&apos;s another Jeff Schneider with another great &lt;a href=&quot;http://schneider.blogspot.com/2005_05_22_schneider_archive.html#111676870297276527&quot;&gt;post about service reuse&lt;/a&gt;. Here&apos;s a highlight:&lt;br&gt;
&lt;br style=&quot;font-family: arial;&quot;&gt;
&lt;/span&gt;
&lt;/font&gt;
&lt;div style=&quot;margin-left: 40px;&quot;&gt;&lt;font style=&quot;font-style: italic;&quot; size=&quot;2&quot;&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;Service Architects love to brag about the number of services - and I
let them. Actually, I encourage them to brag. However, I&apos;m quick to
challenge these same people with a very simple question:&lt;/span&gt;&lt;/font&gt;&lt;br style=&quot;font-family: arial; font-style: italic;&quot;&gt;
&lt;br style=&quot;font-family: arial; font-style: italic;&quot;&gt;
&lt;font style=&quot;font-style: italic;&quot; size=&quot;2&quot;&gt;&lt;strong style=&quot;font-family: arial;&quot;&gt;&quot;200 SERVICES! That&apos;s great - but how many clients???&quot;&lt;/strong&gt;&lt;/font&gt;&lt;br style=&quot;font-family: arial; font-style: italic;&quot;&gt;
&lt;br style=&quot;font-family: arial; font-style: italic;&quot;&gt;
&lt;font style=&quot;font-style: italic;&quot; size=&quot;2&quot;&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;This simple question usually makes the most pompous architect fall to their knees in shame.&lt;/span&gt;&lt;/font&gt;&lt;br style=&quot;font-family: arial;&quot;&gt;
&lt;/div&gt;
&lt;font size=&quot;2&quot;&gt;&lt;br style=&quot;font-family: arial;&quot;&gt;
&lt;span style=&quot;font-family: arial;&quot;&gt;Of course, this then begs the age old
question of how to design services that are highly reusable, which
leads to discussions of &lt;/span&gt;&lt;a style=&quot;font-family: arial;&quot; href=&quot;%0ACreated:%20%2004/22/2005%0AUpdated:%20%2005/24/2005%2012:19%20PM%0ACurrent%20Phase%20is%20Management%20Review%0ADo%20not%20commit%20before:%0A%09Commentary%0A%09Daniel%20Sholler,%20AIM%20and%20Web%20Services%20Portals%0A%09Ray%20Valdes%0ANicholas%20Gall%09%0A%0ATitle%20%20No%20REST%20for%20the%20WS-Weary%0A%0ASummary%20%0A%0AAs%20many%20organizations%20begin%20programs%20to%20develop%20systems%20in%20a%20service-oriented%20manner,%20practitioners%20have%20become%20aware%20of%20the%20architectural%20style%20known%20as%20REST%20%28REpresentational%20State%20Transfer%29.%20This%20style%20strives%20to%20capture%20the%20architectural%20style%20and%20the%20technologies%20%28URL,%20HTTP,%20and%20HTML%29%20that%20successfully%20powered%20the%20World%20Wide%20Web,%20as%20the%20foundation%20of%20service-oriented%20interactions.%20The%20REST%20style%20of%20system-to-system%20interaction%20has%20been%20positioned%20as%20a%20simpler%20alternative%20to%20SOAP,%20WSDL,%20and%20the%20ever%20growing%20set%20of%20specifications%20based%20on%20them%20%28informally%20referred%20to%20as%20WS-*%29.%20The%20REST%20approach%20will%20become%20commonplace%20for%20content-centric%20applications,%20and%20the%20implied%20design%20style%20will%20be%20incorporated%20into%20many%20WS-*%20protocols,%20REST%20is%20not%20and%20will%20not%20be%20a%20replacement%20for%20Web%20Services.%20%0A%0A%0A%0ABody%0AThere%20has%20been%20a%20long-standing%20debate%20among%20members%20of%20the%20technical%20community%20%20regarding%20different%20approaches%20to%20evolving%20the%20World%20Wide%20Web%20%20from%20human-to-system%20interaction%20to%20%20system-to-system%20interaction.%20Over%20the%20past%20four%20years,%20the%20temperature%20of%20the%20debate%20has%20at%20times%20flared%20white-hot%20among%20communities%20such%20as%20the%20W3C%20Technical%20Architecture%20Group,%20and%20in%20related%20email%20lists%20and%20weblogs.%20One%20of%20the%20axes%20of%20this%20debate%20is%20a%20distinction%20between%20proponents%20of%20the%20Web%20Servcies%20model%20%28based%20on%20SOAP%20and%20the%20attendent%20WS-*%20standards%20%28reference%20Charles%27%20note%20on%20WS%20standards%20selection%29%20%29%20and%20advocates%20of%20REST%20%28REpresentational%20State%20Transfer%29,%20who%20believe%20the%20mechanisms%20that%20have%20powered%20the%20human%20to%20system%20model%20%28HTTP%20etc.%20%29%20are%20sufficient%20without%20the%20added%20%22complexity%22%20of%20the%20WS%20protocols.%20The%20debate%20continues%20to%20smolder,%20despite%20regular%20claims%20of%20victory%20by%20both%20sides.%20Although%20vendors%20of%20Web%20services%20platforms%20have%20mostly%20ignored%20REST%20in%20developing%20the%20WS-*%20protocol%20suite,%20REST%27s%20elegance%20and%20simplicity%20continues%20to%20attract%20a%20segment%20of%20Web%20architects.%20REST%20has%20achieved%20enough%20visibility%20that%20it%20is%20being%20discussed%20as%20part%20of%20enterprise%20SOA%20%28Service-Oriented%20Architecture%29%20plans%20among%2010%-15%%20of%20end-user%20organizations%20that%20consult%20Gartner.%20%0AThe%20REST%20debate%20is%20often%20characterized%20as%20a%20clash%20between%20the%20over-complex,%20vendor-dominated%20efforts%20around%20SOAP%20and%20WSDL,%20vs.%20a%20grassroots-based%20%22KISS%22%20approach%20based%20on%20existing%20web%20technology.%20The%20undertones%20of%20political%20ideology%20around%20this%20debate%20has%20at%20times%20obscured%20rational%20discourse,%20but%20while%20there%20are%20serious%20issues%20to%20be%20discussed,%20there%20is%20at%20least%20no%20debate%20about%20the%20endgame,%20which%20is%20to%20develop%20a%20simple,%20standardized%20style%20for%20inter-system%20integration%20within%20the%20enterprise%20and%20over%20the%20Internet.%20%0AThroughout%202005/06,%20this%20debate%20will%20be%20fueled%20by%20the%20increasing%20complexity%20of%20WS-*%20implementations.%20As%20more%20organizations%20attempt%20complex%20service%20interactions%20using%20existing%20Web%20services%20specifications,%20more%20of%20the%20challenging%20issues%20that%20result%20from%20service%20orientation%20and%20distributed%20systems%20in%20general%20will%20confront%20developers.%20Gartner%20has%20seen%20indications%20of%20frustration%20with%20%22WS-Complexity%22%20among%20end-user%20organizations,%20who%20are%20struggling%20to%20understand%20the%20essential%20requirements%20of%20an%20SOA.%20%28reference%20charle%27s%20note%20again%20here?%20%29%20%0ADuring%202006,%20better%20understanding%20will%20be%20acheived%20and%20greater%20agreement%20will%20be%20reached%20on%20several%20of%20the%20issues%20addressed%20by%20the%20REST%20style%20%28in%20particular,%20the%20means%20of%20representing%20state%20and%20the%20proper%20use%20of%20resource%20identifiers,%20e.g.,%20URLs%29.%20By%20early%202007,%20frameworks%20for%20integration%20and%20new%20programming%20models%20will%20further%20simplify%20the%20development%20models%20for%20REST-style%20systems.%20While%20all%20of%20this%20is%20going%20on,%20the%20growing%20popularity%20and%20capabilities%20of%20WS-*%20will%20expand.%20Ultimately,%20the%20concepts%20will%20borrow%20thinking%20from%20each%20other,%20and%20both%20modes%20will%20converge%20into%20a%20common%20style%20of%20integration.%20%0AStrategic%20Planning%20Assumption:%20Organizations%20will%20use%20REST-style%20interfaces%20for%20content-centric%20applications%20%28applications%20whose%20main%20function%20is%20delivering%20content%20of%20any%20type%20to%20a%20consumer%20of%20that%20content%29%20of%20%20through%202008,%20when%20WS%20standards%20and%20protocols%20will%20have%20developed%20a%20de-facto%20profile%20for%20these%20interactions%20that%20is%20functionally%20similar%20to%20REST%20and%20utilizes%20the%20WS-*%20mechanisms.%20%28.9%20probability%29%20%0AOne%20of%20the%20main%20challenges%20when%20discussing%20this%20debate%20is%20the%20fact%20that%20the%20two%20things%20that%20are%20being%20compared%20%28REST%20and%20WS-*%29%20are%20not%20the%20same%20class.%20REST%20is%20a%20somewhat%20vague%20architectural%20style,%20whereas%20WS-*%20is%20a%20specific%20set%20of%20specifications.%20While%20REST%20incorporates%20six%20architectural%20constraints%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1%29,%20the%20key%20one%20is%20the%20insistence%20on%20a%20small%20set%20of%20uniform%20interfaces:%20%22The%20central%20feature%20that%20distinguishes%20the%20REST%20architectural%20style%20from%20other%20network-based%20styles%20is%20its%20emphasis%20on%20a%20uniform%20interface%20between%20components.%22%20%28Quotation%20from%20Roy%20Fieldings%20PhD%20defining%20REST%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_5%29%29%20REST%20proponents%20%28sometimes%20called%20%22RESTifarians%22%29%20claim%20that%20REST%20builds%20upon%20the%20demonstrated%20success%20of%20the%20Web,%20in%20which%20a%20small%20number%20of%20well-known%20verbs%20%28e.g.,%20GET,%20POST,%20PUT,%20DELETE%29%20are%20applied%20to%20a%20potentially%20infinite%20number%20of%20nouns%20%28URLs%29,%20resulting%20in%20an%20architecture%20that%20is%20globally%20scalable%20and%20easily%20composable;%20enabling%20large%20numbers%20of%20otherwise%20uncoordinated%20agents%20to%20interoperate.%20%0AWhile%20this%20is%20a%20compelling%20argument%20when%20it%20comes%20to%20simple%20resources%20such%20as%20web%20pages,%20it%20is%20not%20entirely%20clear%20that%20this%20severe%20restriction%20on%20verbs%20easily%20applies%20to%20complex%20resources%20such%20as%20ERP%20systems.%20Furthermore,%20the%20WS-*%20camp%20has%20responded%20by%20embracing%20this%20key%20REST%20design%20principle%20--%20as%20can%20be%20seen%20in%20specifications%20such%20as%20WS-MetadataExchange%20and%20WS-Transfer.%20%0AOne%20of%20the%20major%20sources%20of%20confusion%20about%20REST%20is%20the%20fact%20that%20some%20use%20the%20term%20as%20equivalent%20to%20simply%20transferring%20XML%20documents%20over%20HTTP%20%28known%20informally%20as%20POX%20-%20Plain%20Old%20XML%20%28http://en.wikipedia.org/wiki/Plain_Old_XML%29%29.%20While%20this%20is%20certainly%20an%20approach%20to%20integration%20that%20follows%20some%20aspects%20of%20the%20REST%20style,%20it%20is%20not%20truly%20%22RESTful%22.%20For%20example,%20the%20REST%20approach%20makes%20a%20distinction%20between%20GET%20and%20POST,%20in%20which%20GET%20is%20used%20to%20retrieve%20information%20without%20side-effects.%20Multiple%20GET%20requests%20to%20the%20same%20resource%20will%20have%20the%20same%20result%20%28known%20in%20computer%20science%20as%20%22idempotence%22%29.%20For%20interactions%20that%20have%20side%20effects,%20POST,%20PUT%20or%20DELETE%20should%20be%20used.%0AAmazon%27s%20Web%20services%20are%20often%20cited%20as%20the%20leading%20example%20of%20the%20successful%20application%20of%20the%20REST%20style%20instead%20of%20WS-*.%20The%20oft-made%20observation%20is%20that,%20while%20Amazon%20offers%20both%20styles%20of%20interfaces%20to%20its%20thousands%20of%20developer%20affiliates,%2085%%20of%20system-to-system%20interactions%20do%20not%20use%20SOAP%20but%20REST.%20These%20are%20reasonable%20examples%20of%20POX%20Web%20services,%20but%20as%20the%20critics%20of%20REST%20point%20out,%20they%20are%20not%20truly%20RESTful%20because%20operations%20such%20as%20CartCreate,%20CartAdd,%20and%20Cartmodify%20violate%20REST%27s%20stateless%20server%20constraint%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_3%29:%20%22Session%20state%20is%20therefore%20kept%20entirely%20on%20the%20client.%22%20Critics%20argue%20that%20although%20RESTs%20basic%20concepts%20are%20simple,%20applying%20them%20rigidly%20can%20create%20its%20own%20complexity%20barriers.%20%0AThe%20primary%20argument%20for%20REST%20is%20based%20on%20its%20resemblence%20to%20the%20familiar%20web%20architectural%20style:%20everything%20is%20accessible%20via%20URLs%20via%20GET%20and%20POST.%20RESTians%20argue%20that%2080%%20of%20what%20WS-*%20attempts%20to%20do%20with%20multiple%20complex%20specifications%20can%20be%20done%20with%20existing%20web%20protocols.%20The%20argument%20continues%20with%20the%20observation%20that%20virtually%20every%20system%20has%20some%20mechanism%20for%20producing%20and%20consuming%20HTTP%20traffic,%20and%20therefore%20does%20not%20require%20new%20tooling,%20new%20protocol%20stacks,%20and%20a%20complex%20network%20of%20intermediaries%20envisioned%20by%20the%20SOAP%20model.%20While%20it%20may%20be%20true%20that%20POX%20suffices%20for%2080%%20of%20the%20read-centric%20and%20content-centric%20Web%20services%20that%20currently%20predominate,%20the%20other%2020%%20would%20require%20extensions%20to%20the%20conventional%20HTTP%20style%20of%20interaction.%20For%20example,%20REST%20does%20not%20support%20an%20EDA%20%28Event%20Driven%20Architecture%29;%20it%20lacks%20a%20robust%20error%20handling%20architecture;%20it%20has%20no%20way%20of%20providing%20varying%20degrees%20of%20QoS.%20The%20REST%20style,%20as%20currently%20implemented%20with%20HTTP%20lacks%20features%20that%20support%20Quality%20of%20Service%20capabilities%20which%20users%20have%20come%20to%20expect%20in%20an%20enterprise%20network,%20and%20which%20are%20being%20extended%20over%20the%20internet%20as%20those%20networks%20are%20extended.%20%0AUsers%20have%20begun%20to%20pay%20attention%20to%20this%20debate,%20and%20there%20is%20no%20question%20that%20for%20content-centric%20applications%20a%20REST%20style%20or%20just%20POX%20will%20continue%20to%20be%20very%20efficient%20and%20effective.%20However,%20the%20momentum%20behind%20SOAP%20is%20such%20that%20it%20will%20be%20the%20dominant%20mode%20of%20interaction%20in%20connections%20where%20the%20community%20is%20well%20known%20%28A2A%29%20or%20reasonably%20well%20bounded%20%28B2B%29.%20%0AConsumer-facing%20applications%20and%20those%20that%20are%20primarily%20content%20retrieval%20will%20use%20POX.%20The%20vocal%20enunciation%20of%20REST%20principles%20will%20oblige%20the%20WS-*%20designers%20to%20continually%20defend%20deviations%20from%20those%20principles%20in%20any%20new%20specifications.%20While%20the%20REST%20style%20will%20grow%20in%20popularity%20for%20that%20large%20category%20of%20services%20whose%20primary%20purpose%20is%20the%20delivery%20of%20content,%20this%20growth%20will%20only%20occur%20in%20fits,%20starts%20and%20inconsistent%20pockets%20%28i.e.,%20POX%20or%20REST-like%20rather%20than%20rigorously%20RESTful%29,%20More%20aggressive%20growth%20will%20require%20the%20REST%20community%20to%20deliver%20a%20coherent,%20prescriptive,%20complete%20and%20detailed%20architecture%20and%20set%20of%20specifications,%20as%20well%20as%20tooling%20that%20the%20average%20developer%20can%20use%20in%20building%20distributed%20systems.%20%0A%0A%0ABottom%20Line%0A%0AREST%20still%20will%20take%20several%20years%20to%20go%20from%20an%20architectural%20style%20into%20a%20fully%20fledged%20integration%20architecture%20and%20set%20of%20protocol%20specifications.%20During%202008/09,%20This%20architecture%20will%20be%20merged%20with%20the%20WS-*%20style%20architecture,%20and%20differences%20will%20be%20hidden%20by%20extensions%20to%20existing%20tools.%20.%20Meanwhile,%20users%20should%20adopt%20a%20REST%20style%20in%20defining%20services%20whose%20function%20is%20content-centric.%20Transaction%20and%20event%20style%20services%20should%20be%20based%20on%20WS-*%20integration%20standards.%20Architects%20of%20existing%20WS-*%20systems%20should%20examine%20their%20design%20to%20see%20if%20a%20basic%20subset%20of%20the%20services%20can%20adopt%20the%20REST%20style%20%28i.e.,%20exposefunctionality%20through%20both%20SOAP%20and%20REST%20interfaces%29%20%20to%20facilitate%20adoption%20among%20small-scale%20client%20developers.%20As%20REST%20principles%20become%20better%20understood%20%28in%20the%202006-2008%20time%20frame%29,%20WS-*%20designers%20and%20users%20will%20embrace%20such%20principles,%20and%20will%20create%20a%20REST-style%20protocol%20for%20content-centric%20interactions%20using%20the%20WS-*%20mechanisms.%20%0A%0A%0A%0A%0A%0ASidebar%0A%0A%0ALast%20Callout%0A%0A%0AAttachments%0A%0A%0AExtended%20Analysis%0A%0A%0AOriginal%20Discussion%20Thread%0A%0A%0AEntire%20contents%20%C3%82%C2%A9%202005%20Gartner,%20Inc.%20All%20rights%20reserved.%20Reproduction%20of%20this%20publication%20in%20any%20form%20without%20prior%20written%20permission%20is%20forbidden.%20The%20information%20contained%20herein%20has%20been%20obtained%20from%20sources%20believed%20to%20be%20reliable.%20Gartner%20disclaims%20all%20warranties%20as%20to%20the%20accuracy,%20completeness%20or%20adequacy%20of%20such%20information.%20Gartner%20shall%20have%20no%20liability%20for%20errors,%20omissions%20or%20inadequacies%20in%20the%20information%20contained%20herein%20or%20for%20interpretations%20thereof.%20The%20reader%20assumes%20sole%20responsibility%20for%20the%20selection%20of%20these%20materials%20to%20achieve%20its%20intended%20results.%20The%20opinions%20expressed%20herein%20are%20subject%20to%20change%20without%20notice.%0A%0A%0ACreated:%20%2004/22/2005%0AUpdated:%20%2005/24/2005%2012:19%20PM%0ACurrent%20Phase%20is%20Management%20Review%0ADo%20not%20commit%20before:%0A%09Commentary%0A%09Daniel%20Sholler,%20AIM%20and%20Web%20Services%20Portals%0A%09Ray%20Valdes%0ANicholas%20Gall%09%0A%0ATitle%20%20No%20REST%20for%20the%20WS-Weary%0A%0ASummary%20%0A%0AAs%20many%20organizations%20begin%20programs%20to%20develop%20systems%20in%20a%20service-oriented%20manner,%20practitioners%20have%20become%20aware%20of%20the%20architectural%20style%20known%20as%20REST%20%28REpresentational%20State%20Transfer%29.%20This%20style%20strives%20to%20capture%20the%20architectural%20style%20and%20the%20technologies%20%28URL,%20HTTP,%20and%20HTML%29%20that%20successfully%20powered%20the%20World%20Wide%20Web,%20as%20the%20foundation%20of%20service-oriented%20interactions.%20The%20REST%20style%20of%20system-to-system%20interaction%20has%20been%20positioned%20as%20a%20simpler%20alternative%20to%20SOAP,%20WSDL,%20and%20the%20ever%20growing%20set%20of%20specifications%20based%20on%20them%20%28informally%20referred%20to%20as%20WS-*%29.%20The%20REST%20approach%20will%20become%20commonplace%20for%20content-centric%20applications,%20and%20the%20implied%20design%20style%20will%20be%20incorporated%20into%20many%20WS-*%20protocols,%20REST%20is%20not%20and%20will%20not%20be%20a%20replacement%20for%20Web%20Services.%20%0A%0A%0A%0ABody%0AThere%20has%20been%20a%20long-standing%20debate%20among%20members%20of%20the%20technical%20community%20%20regarding%20different%20approaches%20to%20evolving%20the%20World%20Wide%20Web%20%20from%20human-to-system%20interaction%20to%20%20system-to-system%20interaction.%20Over%20the%20past%20four%20years,%20the%20temperature%20of%20the%20debate%20has%20at%20times%20flared%20white-hot%20among%20communities%20such%20as%20the%20W3C%20Technical%20Architecture%20Group,%20and%20in%20related%20email%20lists%20and%20weblogs.%20One%20of%20the%20axes%20of%20this%20debate%20is%20a%20distinction%20between%20proponents%20of%20the%20Web%20Servcies%20model%20%28based%20on%20SOAP%20and%20the%20attendent%20WS-*%20standards%20%28reference%20Charles%27%20note%20on%20WS%20standards%20selection%29%20%29%20and%20advocates%20of%20REST%20%28REpresentational%20State%20Transfer%29,%20who%20believe%20the%20mechanisms%20that%20have%20powered%20the%20human%20to%20system%20model%20%28HTTP%20etc.%20%29%20are%20sufficient%20without%20the%20added%20%22complexity%22%20of%20the%20WS%20protocols.%20The%20debate%20continues%20to%20smolder,%20despite%20regular%20claims%20of%20victory%20by%20both%20sides.%20Although%20vendors%20of%20Web%20services%20platforms%20have%20mostly%20ignored%20REST%20in%20developing%20the%20WS-*%20protocol%20suite,%20REST%27s%20elegance%20and%20simplicity%20continues%20to%20attract%20a%20segment%20of%20Web%20architects.%20REST%20has%20achieved%20enough%20visibility%20that%20it%20is%20being%20discussed%20as%20part%20of%20enterprise%20SOA%20%28Service-Oriented%20Architecture%29%20plans%20among%2010%-15%%20of%20end-user%20organizations%20that%20consult%20Gartner.%20%0AThe%20REST%20debate%20is%20often%20characterized%20as%20a%20clash%20between%20the%20over-complex,%20vendor-dominated%20efforts%20around%20SOAP%20and%20WSDL,%20vs.%20a%20grassroots-based%20%22KISS%22%20approach%20based%20on%20existing%20web%20technology.%20The%20undertones%20of%20political%20ideology%20around%20this%20debate%20has%20at%20times%20obscured%20rational%20discourse,%20but%20while%20there%20are%20serious%20issues%20to%20be%20discussed,%20there%20is%20at%20least%20no%20debate%20about%20the%20endgame,%20which%20is%20to%20develop%20a%20simple,%20standardized%20style%20for%20inter-system%20integration%20within%20the%20enterprise%20and%20over%20the%20Internet.%20%0AThroughout%202005/06,%20this%20debate%20will%20be%20fueled%20by%20the%20increasing%20complexity%20of%20WS-*%20implementations.%20As%20more%20organizations%20attempt%20complex%20service%20interactions%20using%20existing%20Web%20services%20specifications,%20more%20of%20the%20challenging%20issues%20that%20result%20from%20service%20orientation%20and%20distributed%20systems%20in%20general%20will%20confront%20developers.%20Gartner%20has%20seen%20indications%20of%20frustration%20with%20%22WS-Complexity%22%20among%20end-user%20organizations,%20who%20are%20struggling%20to%20understand%20the%20essential%20requirements%20of%20an%20SOA.%20%28reference%20charle%27s%20note%20again%20here?%20%29%20%0ADuring%202006,%20better%20understanding%20will%20be%20acheived%20and%20greater%20agreement%20will%20be%20reached%20on%20several%20of%20the%20issues%20addressed%20by%20the%20REST%20style%20%28in%20particular,%20the%20means%20of%20representing%20state%20and%20the%20proper%20use%20of%20resource%20identifiers,%20e.g.,%20URLs%29.%20By%20early%202007,%20frameworks%20for%20integration%20and%20new%20programming%20models%20will%20further%20simplify%20the%20development%20models%20for%20REST-style%20systems.%20While%20all%20of%20this%20is%20going%20on,%20the%20growing%20popularity%20and%20capabilities%20of%20WS-*%20will%20expand.%20Ultimately,%20the%20concepts%20will%20borrow%20thinking%20from%20each%20other,%20and%20both%20modes%20will%20converge%20into%20a%20common%20style%20of%20integration.%20%0AStrategic%20Planning%20Assumption:%20Organizations%20will%20use%20REST-style%20interfaces%20for%20content-centric%20applications%20%28applications%20whose%20main%20function%20is%20delivering%20content%20of%20any%20type%20to%20a%20consumer%20of%20that%20content%29%20of%20%20through%202008,%20when%20WS%20standards%20and%20protocols%20will%20have%20developed%20a%20de-facto%20profile%20for%20these%20interactions%20that%20is%20functionally%20similar%20to%20REST%20and%20utilizes%20the%20WS-*%20mechanisms.%20%28.9%20probability%29%20%0AOne%20of%20the%20main%20challenges%20when%20discussing%20this%20debate%20is%20the%20fact%20that%20the%20two%20things%20that%20are%20being%20compared%20%28REST%20and%20WS-*%29%20are%20not%20the%20same%20class.%20REST%20is%20a%20somewhat%20vague%20architectural%20style,%20whereas%20WS-*%20is%20a%20specific%20set%20of%20specifications.%20While%20REST%20incorporates%20six%20architectural%20constraints%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1%29,%20the%20key%20one%20is%20the%20insistence%20on%20a%20small%20set%20of%20uniform%20interfaces:%20%22The%20central%20feature%20that%20distinguishes%20the%20REST%20architectural%20style%20from%20other%20network-based%20styles%20is%20its%20emphasis%20on%20a%20uniform%20interface%20between%20components.%22%20%28Quotation%20from%20Roy%20Fieldings%20PhD%20defining%20REST%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_5%29%29%20REST%20proponents%20%28sometimes%20called%20%22RESTifarians%22%29%20claim%20that%20REST%20builds%20upon%20the%20demonstrated%20success%20of%20the%20Web,%20in%20which%20a%20small%20number%20of%20well-known%20verbs%20%28e.g.,%20GET,%20POST,%20PUT,%20DELETE%29%20are%20applied%20to%20a%20potentially%20infinite%20number%20of%20nouns%20%28URLs%29,%20resulting%20in%20an%20architecture%20that%20is%20globally%20scalable%20and%20easily%20composable;%20enabling%20large%20numbers%20of%20otherwise%20uncoordinated%20agents%20to%20interoperate.%20%0AWhile%20this%20is%20a%20compelling%20argument%20when%20it%20comes%20to%20simple%20resources%20such%20as%20web%20pages,%20it%20is%20not%20entirely%20clear%20that%20this%20severe%20restriction%20on%20verbs%20easily%20applies%20to%20complex%20resources%20such%20as%20ERP%20systems.%20Furthermore,%20the%20WS-*%20camp%20has%20responded%20by%20embracing%20this%20key%20REST%20design%20principle%20--%20as%20can%20be%20seen%20in%20specifications%20such%20as%20WS-MetadataExchange%20and%20WS-Transfer.%20%0AOne%20of%20the%20major%20sources%20of%20confusion%20about%20REST%20is%20the%20fact%20that%20some%20use%20the%20term%20as%20equivalent%20to%20simply%20transferring%20XML%20documents%20over%20HTTP%20%28known%20informally%20as%20POX%20-%20Plain%20Old%20XML%20%28http://en.wikipedia.org/wiki/Plain_Old_XML%29%29.%20While%20this%20is%20certainly%20an%20approach%20to%20integration%20that%20follows%20some%20aspects%20of%20the%20REST%20style,%20it%20is%20not%20truly%20%22RESTful%22.%20For%20example,%20the%20REST%20approach%20makes%20a%20distinction%20between%20GET%20and%20POST,%20in%20which%20GET%20is%20used%20to%20retrieve%20information%20without%20side-effects.%20Multiple%20GET%20requests%20to%20the%20same%20resource%20will%20have%20the%20same%20result%20%28known%20in%20computer%20science%20as%20%22idempotence%22%29.%20For%20interactions%20that%20have%20side%20effects,%20POST,%20PUT%20or%20DELETE%20should%20be%20used.%0AAmazon%27s%20Web%20services%20are%20often%20cited%20as%20the%20leading%20example%20of%20the%20successful%20application%20of%20the%20REST%20style%20instead%20of%20WS-*.%20The%20oft-made%20observation%20is%20that,%20while%20Amazon%20offers%20both%20styles%20of%20interfaces%20to%20its%20thousands%20of%20developer%20affiliates,%2085%%20of%20system-to-system%20interactions%20do%20not%20use%20SOAP%20but%20REST.%20These%20are%20reasonable%20examples%20of%20POX%20Web%20services,%20but%20as%20the%20critics%20of%20REST%20point%20out,%20they%20are%20not%20truly%20RESTful%20because%20operations%20such%20as%20CartCreate,%20CartAdd,%20and%20Cartmodify%20violate%20REST%27s%20stateless%20server%20constraint%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_3%29:%20%22Session%20state%20is%20therefore%20kept%20entirely%20on%20the%20client.%22%20Critics%20argue%20that%20although%20RESTs%20basic%20concepts%20are%20simple,%20applying%20them%20rigidly%20can%20create%20its%20own%20complexity%20barriers.%20%0AThe%20primary%20argument%20for%20REST%20is%20based%20on%20its%20resemblence%20to%20the%20familiar%20web%20architectural%20style:%20everything%20is%20accessible%20via%20URLs%20via%20GET%20and%20POST.%20RESTians%20argue%20that%2080%%20of%20what%20WS-*%20attempts%20to%20do%20with%20multiple%20complex%20specifications%20can%20be%20done%20with%20existing%20web%20protocols.%20The%20argument%20continues%20with%20the%20observation%20that%20virtually%20every%20system%20has%20some%20mechanism%20for%20producing%20and%20consuming%20HTTP%20traffic,%20and%20therefore%20does%20not%20require%20new%20tooling,%20new%20protocol%20stacks,%20and%20a%20complex%20network%20of%20intermediaries%20envisioned%20by%20the%20SOAP%20model.%20While%20it%20may%20be%20true%20that%20POX%20suffices%20for%2080%%20of%20the%20read-centric%20and%20content-centric%20Web%20services%20that%20currently%20predominate,%20the%20other%2020%%20would%20require%20extensions%20to%20the%20conventional%20HTTP%20style%20of%20interaction.%20For%20example,%20REST%20does%20not%20support%20an%20EDA%20%28Event%20Driven%20Architecture%29;%20it%20lacks%20a%20robust%20error%20handling%20architecture;%20it%20has%20no%20way%20of%20providing%20varying%20degrees%20of%20QoS.%20The%20REST%20style,%20as%20currently%20implemented%20with%20HTTP%20lacks%20features%20that%20support%20Quality%20of%20Service%20capabilities%20which%20users%20have%20come%20to%20expect%20in%20an%20enterprise%20network,%20and%20which%20are%20being%20extended%20over%20the%20internet%20as%20those%20networks%20are%20extended.%20%0AUsers%20have%20begun%20to%20pay%20attention%20to%20this%20debate,%20and%20there%20is%20no%20question%20that%20for%20content-centric%20applications%20a%20REST%20style%20or%20just%20POX%20will%20continue%20to%20be%20very%20efficient%20and%20effective.%20However,%20the%20momentum%20behind%20SOAP%20is%20such%20that%20it%20will%20be%20the%20dominant%20mode%20of%20interaction%20in%20connections%20where%20the%20community%20is%20well%20known%20%28A2A%29%20or%20reasonably%20well%20bounded%20%28B2B%29.%20%0AConsumer-facing%20applications%20and%20those%20that%20are%20primarily%20content%20retrieval%20will%20use%20POX.%20The%20vocal%20enunciation%20of%20REST%20principles%20will%20oblige%20the%20WS-*%20designers%20to%20continually%20defend%20deviations%20from%20those%20principles%20in%20any%20new%20specifications.%20While%20the%20REST%20style%20will%20grow%20in%20popularity%20for%20that%20large%20category%20of%20services%20whose%20primary%20purpose%20is%20the%20delivery%20of%20content,%20this%20growth%20will%20only%20occur%20in%20fits,%20starts%20and%20inconsistent%20pockets%20%28i.e.,%20POX%20or%20REST-like%20rather%20than%20rigorously%20RESTful%29,%20More%20aggressive%20growth%20will%20require%20the%20REST%20community%20to%20deliver%20a%20coherent,%20prescriptive,%20complete%20and%20detailed%20architecture%20and%20set%20of%20specifications,%20as%20well%20as%20tooling%20that%20the%20average%20developer%20can%20use%20in%20building%20distributed%20systems.%20%0A%0A%0ABottom%20Line%0A%0AREST%20still%20will%20take%20several%20years%20to%20go%20from%20an%20architectural%20style%20into%20a%20fully%20fledged%20integration%20architecture%20and%20set%20of%20protocol%20specifications.%20During%202008/09,%20This%20architecture%20will%20be%20merged%20with%20the%20WS-*%20style%20architecture,%20and%20differences%20will%20be%20hidden%20by%20extensions%20to%20existing%20tools.%20.%20Meanwhile,%20users%20should%20adopt%20a%20REST%20style%20in%20defining%20services%20whose%20function%20is%20content-centric.%20Transaction%20and%20event%20style%20services%20should%20be%20based%20on%20WS-*%20integration%20standards.%20Architects%20of%20existing%20WS-*%20systems%20should%20examine%20their%20design%20to%20see%20if%20a%20basic%20subset%20of%20the%20services%20can%20adopt%20the%20REST%20style%20%28i.e.,%20exposefunctionality%20through%20both%20SOAP%20and%20REST%20interfaces%29%20%20to%20facilitate%20adoption%20among%20small-scale%20client%20developers.%20As%20REST%20principles%20become%20better%20understood%20%28in%20the%202006-2008%20time%20frame%29,%20WS-*%20designers%20and%20users%20will%20embrace%20such%20principles,%20and%20will%20create%20a%20REST-style%20protocol%20for%20content-centric%20interactions%20using%20the%20WS-*%20mechanisms.%20%0A%0A%0A%0A%0A%0ASidebar%0A%0A%0ALast%20Callout%0A%0A%0AAttachments%0A%0A%0AExtended%20Analysis%0A%0A%0AOriginal%20Discussion%20Thread%0A%0A%0AEntire%20contents%20%C3%82%C2%A9%202005%20Gartner,%20Inc.%20All%20rights%20reserved.%20Reproduction%20of%20this%20publication%20in%20any%20form%20without%20prior%20written%20permission%20is%20forbidden.%20The%20information%20contained%20herein%20has%20been%20obtained%20from%20sources%20believed%20to%20be%20reliable.%20Gartner%20disclaims%20all%20warranties%20as%20to%20the%20accuracy,%20completeness%20or%20adequacy%20of%20such%20information.%20Gartner%20shall%20have%20no%20liability%20for%20errors,%20omissions%20or%20inadequacies%20in%20the%20information%20contained%20herein%20or%20for%20interpretations%20thereof.%20The%20reader%20assumes%20sole%20responsibility%20for%20the%20selection%20of%20these%20materials%20to%20achieve%20its%20intended%20results.%20The%20opinions%20expressed%20herein%20are%20subject%20to%20change%20without%20notice.%0A%0A%0ACreated:%20%2004/22/2005%0AUpdated:%20%2005/24/2005%2012:19%20PM%0ACurrent%20Phase%20is%20Management%20Review%0ADo%20not%20commit%20before:%0A%09Commentary%0A%09Daniel%20Sholler,%20AIM%20and%20Web%20Services%20Portals%0A%09Ray%20Valdes%0ANicholas%20Gall%09%0A%0ATitle%20%20No%20REST%20for%20the%20WS-Weary%0A%0ASummary%20%0A%0AAs%20many%20organizations%20begin%20programs%20to%20develop%20systems%20in%20a%20service-oriented%20manner,%20practitioners%20have%20become%20aware%20of%20the%20architectural%20style%20known%20as%20REST%20%28REpresentational%20State%20Transfer%29.%20This%20style%20strives%20to%20capture%20the%20architectural%20style%20and%20the%20technologies%20%28URL,%20HTTP,%20and%20HTML%29%20that%20successfully%20powered%20the%20World%20Wide%20Web,%20as%20the%20foundation%20of%20service-oriented%20interactions.%20The%20REST%20style%20of%20system-to-system%20interaction%20has%20been%20positioned%20as%20a%20simpler%20alternative%20to%20SOAP,%20WSDL,%20and%20the%20ever%20growing%20set%20of%20specifications%20based%20on%20them%20%28informally%20referred%20to%20as%20WS-*%29.%20The%20REST%20approach%20will%20become%20commonplace%20for%20content-centric%20applications,%20and%20the%20implied%20design%20style%20will%20be%20incorporated%20into%20many%20WS-*%20protocols,%20REST%20is%20not%20and%20will%20not%20be%20a%20replacement%20for%20Web%20Services.%20%0A%0A%0A%0ABody%0AThere%20has%20been%20a%20long-standing%20debate%20among%20members%20of%20the%20technical%20community%20%20regarding%20different%20approaches%20to%20evolving%20the%20World%20Wide%20Web%20%20from%20human-to-system%20interaction%20to%20%20system-to-system%20interaction.%20Over%20the%20past%20four%20years,%20the%20temperature%20of%20the%20debate%20has%20at%20times%20flared%20white-hot%20among%20communities%20such%20as%20the%20W3C%20Technical%20Architecture%20Group,%20and%20in%20related%20email%20lists%20and%20weblogs.%20One%20of%20the%20axes%20of%20this%20debate%20is%20a%20distinction%20between%20proponents%20of%20the%20Web%20Servcies%20model%20%28based%20on%20SOAP%20and%20the%20attendent%20WS-*%20standards%20%28reference%20Charles%27%20note%20on%20WS%20standards%20selection%29%20%29%20and%20advocates%20of%20REST%20%28REpresentational%20State%20Transfer%29,%20who%20believe%20the%20mechanisms%20that%20have%20powered%20the%20human%20to%20system%20model%20%28HTTP%20etc.%20%29%20are%20sufficient%20without%20the%20added%20%22complexity%22%20of%20the%20WS%20protocols.%20The%20debate%20continues%20to%20smolder,%20despite%20regular%20claims%20of%20victory%20by%20both%20sides.%20Although%20vendors%20of%20Web%20services%20platforms%20have%20mostly%20ignored%20REST%20in%20developing%20the%20WS-*%20protocol%20suite,%20REST%27s%20elegance%20and%20simplicity%20continues%20to%20attract%20a%20segment%20of%20Web%20architects.%20REST%20has%20achieved%20enough%20visibility%20that%20it%20is%20being%20discussed%20as%20part%20of%20enterprise%20SOA%20%28Service-Oriented%20Architecture%29%20plans%20among%2010%-15%%20of%20end-user%20organizations%20that%20consult%20Gartner.%20%0AThe%20REST%20debate%20is%20often%20characterized%20as%20a%20clash%20between%20the%20over-complex,%20vendor-dominated%20efforts%20around%20SOAP%20and%20WSDL,%20vs.%20a%20grassroots-based%20%22KISS%22%20approach%20based%20on%20existing%20web%20technology.%20The%20undertones%20of%20political%20ideology%20around%20this%20debate%20has%20at%20times%20obscured%20rational%20discourse,%20but%20while%20there%20are%20serious%20issues%20to%20be%20discussed,%20there%20is%20at%20least%20no%20debate%20about%20the%20endgame,%20which%20is%20to%20develop%20a%20simple,%20standardized%20style%20for%20inter-system%20integration%20within%20the%20enterprise%20and%20over%20the%20Internet.%20%0AThroughout%202005/06,%20this%20debate%20will%20be%20fueled%20by%20the%20increasing%20complexity%20of%20WS-*%20implementations.%20As%20more%20organizations%20attempt%20complex%20service%20interactions%20using%20existing%20Web%20services%20specifications,%20more%20of%20the%20challenging%20issues%20that%20result%20from%20service%20orientation%20and%20distributed%20systems%20in%20general%20will%20confront%20developers.%20Gartner%20has%20seen%20indications%20of%20frustration%20with%20%22WS-Complexity%22%20among%20end-user%20organizations,%20who%20are%20struggling%20to%20understand%20the%20essential%20requirements%20of%20an%20SOA.%20%28reference%20charle%27s%20note%20again%20here?%20%29%20%0ADuring%202006,%20better%20understanding%20will%20be%20acheived%20and%20greater%20agreement%20will%20be%20reached%20on%20several%20of%20the%20issues%20addressed%20by%20the%20REST%20style%20%28in%20particular,%20the%20means%20of%20representing%20state%20and%20the%20proper%20use%20of%20resource%20identifiers,%20e.g.,%20URLs%29.%20By%20early%202007,%20frameworks%20for%20integration%20and%20new%20programming%20models%20will%20further%20simplify%20the%20development%20models%20for%20REST-style%20systems.%20While%20all%20of%20this%20is%20going%20on,%20the%20growing%20popularity%20and%20capabilities%20of%20WS-*%20will%20expand.%20Ultimately,%20the%20concepts%20will%20borrow%20thinking%20from%20each%20other,%20and%20both%20modes%20will%20converge%20into%20a%20common%20style%20of%20integration.%20%0AStrategic%20Planning%20Assumption:%20Organizations%20will%20use%20REST-style%20interfaces%20for%20content-centric%20applications%20%28applications%20whose%20main%20function%20is%20delivering%20content%20of%20any%20type%20to%20a%20consumer%20of%20that%20content%29%20of%20%20through%202008,%20when%20WS%20standards%20and%20protocols%20will%20have%20developed%20a%20de-facto%20profile%20for%20these%20interactions%20that%20is%20functionally%20similar%20to%20REST%20and%20utilizes%20the%20WS-*%20mechanisms.%20%28.9%20probability%29%20%0AOne%20of%20the%20main%20challenges%20when%20discussing%20this%20debate%20is%20the%20fact%20that%20the%20two%20things%20that%20are%20being%20compared%20%28REST%20and%20WS-*%29%20are%20not%20the%20same%20class.%20REST%20is%20a%20somewhat%20vague%20architectural%20style,%20whereas%20WS-*%20is%20a%20specific%20set%20of%20specifications.%20While%20REST%20incorporates%20six%20architectural%20constraints%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1%29,%20the%20key%20one%20is%20the%20insistence%20on%20a%20small%20set%20of%20uniform%20interfaces:%20%22The%20central%20feature%20that%20distinguishes%20the%20REST%20architectural%20style%20from%20other%20network-based%20styles%20is%20its%20emphasis%20on%20a%20uniform%20interface%20between%20components.%22%20%28Quotation%20from%20Roy%20Fieldings%20PhD%20defining%20REST%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_5%29%29%20REST%20proponents%20%28sometimes%20called%20%22RESTifarians%22%29%20claim%20that%20REST%20builds%20upon%20the%20demonstrated%20success%20of%20the%20Web,%20in%20which%20a%20small%20number%20of%20well-known%20verbs%20%28e.g.,%20GET,%20POST,%20PUT,%20DELETE%29%20are%20applied%20to%20a%20potentially%20infinite%20number%20of%20nouns%20%28URLs%29,%20resulting%20in%20an%20architecture%20that%20is%20globally%20scalable%20and%20easily%20composable;%20enabling%20large%20numbers%20of%20otherwise%20uncoordinated%20agents%20to%20interoperate.%20%0AWhile%20this%20is%20a%20compelling%20argument%20when%20it%20comes%20to%20simple%20resources%20such%20as%20web%20pages,%20it%20is%20not%20entirely%20clear%20that%20this%20severe%20restriction%20on%20verbs%20easily%20applies%20to%20complex%20resources%20such%20as%20ERP%20systems.%20Furthermore,%20the%20WS-*%20camp%20has%20responded%20by%20embracing%20this%20key%20REST%20design%20principle%20--%20as%20can%20be%20seen%20in%20specifications%20such%20as%20WS-MetadataExchange%20and%20WS-Transfer.%20%0AOne%20of%20the%20major%20sources%20of%20confusion%20about%20REST%20is%20the%20fact%20that%20some%20use%20the%20term%20as%20equivalent%20to%20simply%20transferring%20XML%20documents%20over%20HTTP%20%28known%20informally%20as%20POX%20-%20Plain%20Old%20XML%20%28http://en.wikipedia.org/wiki/Plain_Old_XML%29%29.%20While%20this%20is%20certainly%20an%20approach%20to%20integration%20that%20follows%20some%20aspects%20of%20the%20REST%20style,%20it%20is%20not%20truly%20%22RESTful%22.%20For%20example,%20the%20REST%20approach%20makes%20a%20distinction%20between%20GET%20and%20POST,%20in%20which%20GET%20is%20used%20to%20retrieve%20information%20without%20side-effects.%20Multiple%20GET%20requests%20to%20the%20same%20resource%20will%20have%20the%20same%20result%20%28known%20in%20computer%20science%20as%20%22idempotence%22%29.%20For%20interactions%20that%20have%20side%20effects,%20POST,%20PUT%20or%20DELETE%20should%20be%20used.%0AAmazon%27s%20Web%20services%20are%20often%20cited%20as%20the%20leading%20example%20of%20the%20successful%20application%20of%20the%20REST%20style%20instead%20of%20WS-*.%20The%20oft-made%20observation%20is%20that,%20while%20Amazon%20offers%20both%20styles%20of%20interfaces%20to%20its%20thousands%20of%20developer%20affiliates,%2085%%20of%20system-to-system%20interactions%20do%20not%20use%20SOAP%20but%20REST.%20These%20are%20reasonable%20examples%20of%20POX%20Web%20services,%20but%20as%20the%20critics%20of%20REST%20point%20out,%20they%20are%20not%20truly%20RESTful%20because%20operations%20such%20as%20CartCreate,%20CartAdd,%20and%20Cartmodify%20violate%20REST%27s%20stateless%20server%20constraint%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_3%29:%20%22Session%20state%20is%20therefore%20kept%20entirely%20on%20the%20client.%22%20Critics%20argue%20that%20although%20RESTs%20basic%20concepts%20are%20simple,%20applying%20them%20rigidly%20can%20create%20its%20own%20complexity%20barriers.%20%0AThe%20primary%20argument%20for%20REST%20is%20based%20on%20its%20resemblence%20to%20the%20familiar%20web%20architectural%20style:%20everything%20is%20accessible%20via%20URLs%20via%20GET%20and%20POST.%20RESTians%20argue%20that%2080%%20of%20what%20WS-*%20attempts%20to%20do%20with%20multiple%20complex%20specifications%20can%20be%20done%20with%20existing%20web%20protocols.%20The%20argument%20continues%20with%20the%20observation%20that%20virtually%20every%20system%20has%20some%20mechanism%20for%20producing%20and%20consuming%20HTTP%20traffic,%20and%20therefore%20does%20not%20require%20new%20tooling,%20new%20protocol%20stacks,%20and%20a%20complex%20network%20of%20intermediaries%20envisioned%20by%20the%20SOAP%20model.%20While%20it%20may%20be%20true%20that%20POX%20suffices%20for%2080%%20of%20the%20read-centric%20and%20content-centric%20Web%20services%20that%20currently%20predominate,%20the%20other%2020%%20would%20require%20extensions%20to%20the%20conventional%20HTTP%20style%20of%20interaction.%20For%20example,%20REST%20does%20not%20support%20an%20EDA%20%28Event%20Driven%20Architecture%29;%20it%20lacks%20a%20robust%20error%20handling%20architecture;%20it%20has%20no%20way%20of%20providing%20varying%20degrees%20of%20QoS.%20The%20REST%20style,%20as%20currently%20implemented%20with%20HTTP%20lacks%20features%20that%20support%20Quality%20of%20Service%20capabilities%20which%20users%20have%20come%20to%20expect%20in%20an%20enterprise%20network,%20and%20which%20are%20being%20extended%20over%20the%20internet%20as%20those%20networks%20are%20extended.%20%0AUsers%20have%20begun%20to%20pay%20attention%20to%20this%20debate,%20and%20there%20is%20no%20question%20that%20for%20content-centric%20applications%20a%20REST%20style%20or%20just%20POX%20will%20continue%20to%20be%20very%20efficient%20and%20effective.%20However,%20the%20momentum%20behind%20SOAP%20is%20such%20that%20it%20will%20be%20the%20dominant%20mode%20of%20interaction%20in%20connections%20where%20the%20community%20is%20well%20known%20%28A2A%29%20or%20reasonably%20well%20bounded%20%28B2B%29.%20%0AConsumer-facing%20applications%20and%20those%20that%20are%20primarily%20content%20retrieval%20will%20use%20POX.%20The%20vocal%20enunciation%20of%20REST%20principles%20will%20oblige%20the%20WS-*%20designers%20to%20continually%20defend%20deviations%20from%20those%20principles%20in%20any%20new%20specifications.%20While%20the%20REST%20style%20will%20grow%20in%20popularity%20for%20that%20large%20category%20of%20services%20whose%20primary%20purpose%20is%20the%20delivery%20of%20content,%20this%20growth%20will%20only%20occur%20in%20fits,%20starts%20and%20inconsistent%20pockets%20%28i.e.,%20POX%20or%20REST-like%20rather%20than%20rigorously%20RESTful%29,%20More%20aggressive%20growth%20will%20require%20the%20REST%20community%20to%20deliver%20a%20coherent,%20prescriptive,%20complete%20and%20detailed%20architecture%20and%20set%20of%20specifications,%20as%20well%20as%20tooling%20that%20the%20average%20developer%20can%20use%20in%20building%20distributed%20systems.%20%0A%0A%0ABottom%20Line%0A%0AREST%20still%20will%20take%20several%20years%20to%20go%20from%20an%20architectural%20style%20into%20a%20fully%20fledged%20integration%20architecture%20and%20set%20of%20protocol%20specifications.%20During%202008/09,%20This%20architecture%20will%20be%20merged%20with%20the%20WS-*%20style%20architecture,%20and%20differences%20will%20be%20hidden%20by%20extensions%20to%20existing%20tools.%20.%20Meanwhile,%20users%20should%20adopt%20a%20REST%20style%20in%20defining%20services%20whose%20function%20is%20content-centric.%20Transaction%20and%20event%20style%20services%20should%20be%20based%20on%20WS-*%20integration%20standards.%20Architects%20of%20existing%20WS-*%20systems%20should%20examine%20their%20design%20to%20see%20if%20a%20basic%20subset%20of%20the%20services%20can%20adopt%20the%20REST%20style%20%28i.e.,%20exposefunctionality%20through%20both%20SOAP%20and%20REST%20interfaces%29%20%20to%20facilitate%20adoption%20among%20small-scale%20client%20developers.%20As%20REST%20principles%20become%20better%20understood%20%28in%20the%202006-2008%20time%20frame%29,%20WS-*%20designers%20and%20users%20will%20embrace%20such%20principles,%20and%20will%20create%20a%20REST-style%20protocol%20for%20content-centric%20interactions%20using%20the%20WS-*%20mechanisms.%20%0A%0A%0A%0A%0A%0ASidebar%0A%0A%0ALast%20Callout%0A%0A%0AAttachments%0A%0A%0AExtended%20Analysis%0A%0A%0AOriginal%20Discussion%20Thread%0A%0A%0AEntire%20contents%20%C3%82%C2%A9%202005%20Gartner,%20Inc.%20All%20rights%20reserved.%20Reproduction%20of%20this%20publication%20in%20any%20form%20without%20prior%20written%20permission%20is%20forbidden.%20The%20information%20contained%20herein%20has%20been%20obtained%20from%20sources%20believed%20to%20be%20reliable.%20Gartner%20disclaims%20all%20warranties%20as%20to%20the%20accuracy,%20completeness%20or%20adequacy%20of%20such%20information.%20Gartner%20shall%20have%20no%20liability%20for%20errors,%20omissions%20or%20inadequacies%20in%20the%20information%20contained%20herein%20or%20for%20interpretations%20thereof.%20The%20reader%20assumes%20sole%20responsibility%20for%20the%20selection%20of%20these%20materials%20to%20achieve%20its%20intended%20results.%20The%20opinions%20expressed%20herein%20are%20subject%20to%20change%20without%20notice.%0A%0A%0ACreated:%20%2004/22/2005%0AUpdated:%20%2005/24/2005%2012:19%20PM%0ACurrent%20Phase%20is%20Management%20Review%0ADo%20not%20commit%20before:%0A%09Commentary%0A%09Daniel%20Sholler,%20AIM%20and%20Web%20Services%20Portals%0A%09Ray%20Valdes%0ANicholas%20Gall%09%0A%0ATitle%20%20No%20REST%20for%20the%20WS-Weary%0A%0ASummary%20%0A%0AAs%20many%20organizations%20begin%20programs%20to%20develop%20systems%20in%20a%20service-oriented%20manner,%20practitioners%20have%20become%20aware%20of%20the%20architectural%20style%20known%20as%20REST%20%28REpresentational%20State%20Transfer%29.%20This%20style%20strives%20to%20capture%20the%20architectural%20style%20and%20the%20technologies%20%28URL,%20HTTP,%20and%20HTML%29%20that%20successfully%20powered%20the%20World%20Wide%20Web,%20as%20the%20foundation%20of%20service-oriented%20interactions.%20The%20REST%20style%20of%20system-to-system%20interaction%20has%20been%20positioned%20as%20a%20simpler%20alternative%20to%20SOAP,%20WSDL,%20and%20the%20ever%20growing%20set%20of%20specifications%20based%20on%20them%20%28informally%20referred%20to%20as%20WS-*%29.%20The%20REST%20approach%20will%20become%20commonplace%20for%20content-centric%20applications,%20and%20the%20implied%20design%20style%20will%20be%20incorporated%20into%20many%20WS-*%20protocols,%20REST%20is%20not%20and%20will%20not%20be%20a%20replacement%20for%20Web%20Services.%20%0A%0A%0A%0ABody%0AThere%20has%20been%20a%20long-standing%20debate%20among%20members%20of%20the%20technical%20community%20%20regarding%20different%20approaches%20to%20evolving%20the%20World%20Wide%20Web%20%20from%20human-to-system%20interaction%20to%20%20system-to-system%20interaction.%20Over%20the%20past%20four%20years,%20the%20temperature%20of%20the%20debate%20has%20at%20times%20flared%20white-hot%20among%20communities%20such%20as%20the%20W3C%20Technical%20Architecture%20Group,%20and%20in%20related%20email%20lists%20and%20weblogs.%20One%20of%20the%20axes%20of%20this%20debate%20is%20a%20distinction%20between%20proponents%20of%20the%20Web%20Servcies%20model%20%28based%20on%20SOAP%20and%20the%20attendent%20WS-*%20standards%20%28reference%20Charles%27%20note%20on%20WS%20standards%20selection%29%20%29%20and%20advocates%20of%20REST%20%28REpresentational%20State%20Transfer%29,%20who%20believe%20the%20mechanisms%20that%20have%20powered%20the%20human%20to%20system%20model%20%28HTTP%20etc.%20%29%20are%20sufficient%20without%20the%20added%20%22complexity%22%20of%20the%20WS%20protocols.%20The%20debate%20continues%20to%20smolder,%20despite%20regular%20claims%20of%20victory%20by%20both%20sides.%20Although%20vendors%20of%20Web%20services%20platforms%20have%20mostly%20ignored%20REST%20in%20developing%20the%20WS-*%20protocol%20suite,%20REST%27s%20elegance%20and%20simplicity%20continues%20to%20attract%20a%20segment%20of%20Web%20architects.%20REST%20has%20achieved%20enough%20visibility%20that%20it%20is%20being%20discussed%20as%20part%20of%20enterprise%20SOA%20%28Service-Oriented%20Architecture%29%20plans%20among%2010%-15%%20of%20end-user%20organizations%20that%20consult%20Gartner.%20%0AThe%20REST%20debate%20is%20often%20characterized%20as%20a%20clash%20between%20the%20over-complex,%20vendor-dominated%20efforts%20around%20SOAP%20and%20WSDL,%20vs.%20a%20grassroots-based%20%22KISS%22%20approach%20based%20on%20existing%20web%20technology.%20The%20undertones%20of%20political%20ideology%20around%20this%20debate%20has%20at%20times%20obscured%20rational%20discourse,%20but%20while%20there%20are%20serious%20issues%20to%20be%20discussed,%20there%20is%20at%20least%20no%20debate%20about%20the%20endgame,%20which%20is%20to%20develop%20a%20simple,%20standardized%20style%20for%20inter-system%20integration%20within%20the%20enterprise%20and%20over%20the%20Internet.%20%0AThroughout%202005/06,%20this%20debate%20will%20be%20fueled%20by%20the%20increasing%20complexity%20of%20WS-*%20implementations.%20As%20more%20organizations%20attempt%20complex%20service%20interactions%20using%20existing%20Web%20services%20specifications,%20more%20of%20the%20challenging%20issues%20that%20result%20from%20service%20orientation%20and%20distributed%20systems%20in%20general%20will%20confront%20developers.%20Gartner%20has%20seen%20indications%20of%20frustration%20with%20%22WS-Complexity%22%20among%20end-user%20organizations,%20who%20are%20struggling%20to%20understand%20the%20essential%20requirements%20of%20an%20SOA.%20%28reference%20charle%27s%20note%20again%20here?%20%29%20%0ADuring%202006,%20better%20understanding%20will%20be%20acheived%20and%20greater%20agreement%20will%20be%20reached%20on%20several%20of%20the%20issues%20addressed%20by%20the%20REST%20style%20%28in%20particular,%20the%20means%20of%20representing%20state%20and%20the%20proper%20use%20of%20resource%20identifiers,%20e.g.,%20URLs%29.%20By%20early%202007,%20frameworks%20for%20integration%20and%20new%20programming%20models%20will%20further%20simplify%20the%20development%20models%20for%20REST-style%20systems.%20While%20all%20of%20this%20is%20going%20on,%20the%20growing%20popularity%20and%20capabilities%20of%20WS-*%20will%20expand.%20Ultimately,%20the%20concepts%20will%20borrow%20thinking%20from%20each%20other,%20and%20both%20modes%20will%20converge%20into%20a%20common%20style%20of%20integration.%20%0AStrategic%20Planning%20Assumption:%20Organizations%20will%20use%20REST-style%20interfaces%20for%20content-centric%20applications%20%28applications%20whose%20main%20function%20is%20delivering%20content%20of%20any%20type%20to%20a%20consumer%20of%20that%20content%29%20of%20%20through%202008,%20when%20WS%20standards%20and%20protocols%20will%20have%20developed%20a%20de-facto%20profile%20for%20these%20interactions%20that%20is%20functionally%20similar%20to%20REST%20and%20utilizes%20the%20WS-*%20mechanisms.%20%28.9%20probability%29%20%0AOne%20of%20the%20main%20challenges%20when%20discussing%20this%20debate%20is%20the%20fact%20that%20the%20two%20things%20that%20are%20being%20compared%20%28REST%20and%20WS-*%29%20are%20not%20the%20same%20class.%20REST%20is%20a%20somewhat%20vague%20architectural%20style,%20whereas%20WS-*%20is%20a%20specific%20set%20of%20specifications.%20While%20REST%20incorporates%20six%20architectural%20constraints%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1%29,%20the%20key%20one%20is%20the%20insistence%20on%20a%20small%20set%20of%20uniform%20interfaces:%20%22The%20central%20feature%20that%20distinguishes%20the%20REST%20architectural%20style%20from%20other%20network-based%20styles%20is%20its%20emphasis%20on%20a%20uniform%20interface%20between%20components.%22%20%28Quotation%20from%20Roy%20Fieldings%20PhD%20defining%20REST%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_5%29%29%20REST%20proponents%20%28sometimes%20called%20%22RESTifarians%22%29%20claim%20that%20REST%20builds%20upon%20the%20demonstrated%20success%20of%20the%20Web,%20in%20which%20a%20small%20number%20of%20well-known%20verbs%20%28e.g.,%20GET,%20POST,%20PUT,%20DELETE%29%20are%20applied%20to%20a%20potentially%20infinite%20number%20of%20nouns%20%28URLs%29,%20resulting%20in%20an%20architecture%20that%20is%20globally%20scalable%20and%20easily%20composable;%20enabling%20large%20numbers%20of%20otherwise%20uncoordinated%20agents%20to%20interoperate.%20%0AWhile%20this%20is%20a%20compelling%20argument%20when%20it%20comes%20to%20simple%20resources%20such%20as%20web%20pages,%20it%20is%20not%20entirely%20clear%20that%20this%20severe%20restriction%20on%20verbs%20easily%20applies%20to%20complex%20resources%20such%20as%20ERP%20systems.%20Furthermore,%20the%20WS-*%20camp%20has%20responded%20by%20embracing%20this%20key%20REST%20design%20principle%20--%20as%20can%20be%20seen%20in%20specifications%20such%20as%20WS-MetadataExchange%20and%20WS-Transfer.%20%0AOne%20of%20the%20major%20sources%20of%20confusion%20about%20REST%20is%20the%20fact%20that%20some%20use%20the%20term%20as%20equivalent%20to%20simply%20transferring%20XML%20documents%20over%20HTTP%20%28known%20informally%20as%20POX%20-%20Plain%20Old%20XML%20%28http://en.wikipedia.org/wiki/Plain_Old_XML%29%29.%20While%20this%20is%20certainly%20an%20approach%20to%20integration%20that%20follows%20some%20aspects%20of%20the%20REST%20style,%20it%20is%20not%20truly%20%22RESTful%22.%20For%20example,%20the%20REST%20approach%20makes%20a%20distinction%20between%20GET%20and%20POST,%20in%20which%20GET%20is%20used%20to%20retrieve%20information%20without%20side-effects.%20Multiple%20GET%20requests%20to%20the%20same%20resource%20will%20have%20the%20same%20result%20%28known%20in%20computer%20science%20as%20%22idempotence%22%29.%20For%20interactions%20that%20have%20side%20effects,%20POST,%20PUT%20or%20DELETE%20should%20be%20used.%0AAmazon%27s%20Web%20services%20are%20often%20cited%20as%20the%20leading%20example%20of%20the%20successful%20application%20of%20the%20REST%20style%20instead%20of%20WS-*.%20The%20oft-made%20observation%20is%20that,%20while%20Amazon%20offers%20both%20styles%20of%20interfaces%20to%20its%20thousands%20of%20developer%20affiliates,%2085%%20of%20system-to-system%20interactions%20do%20not%20use%20SOAP%20but%20REST.%20These%20are%20reasonable%20examples%20of%20POX%20Web%20services,%20but%20as%20the%20critics%20of%20REST%20point%20out,%20they%20are%20not%20truly%20RESTful%20because%20operations%20such%20as%20CartCreate,%20CartAdd,%20and%20Cartmodify%20violate%20REST%27s%20stateless%20server%20constraint%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_3%29:%20%22Session%20state%20is%20therefore%20kept%20entirely%20on%20the%20client.%22%20Critics%20argue%20that%20although%20RESTs%20basic%20concepts%20are%20simple,%20applying%20them%20rigidly%20can%20create%20its%20own%20complexity%20barriers.%20%0AThe%20primary%20argument%20for%20REST%20is%20based%20on%20its%20resemblence%20to%20the%20familiar%20web%20architectural%20style:%20everything%20is%20accessible%20via%20URLs%20via%20GET%20and%20POST.%20RESTians%20argue%20that%2080%%20of%20what%20WS-*%20attempts%20to%20do%20with%20multiple%20complex%20specifications%20can%20be%20done%20with%20existing%20web%20protocols.%20The%20argument%20continues%20with%20the%20observation%20that%20virtually%20every%20system%20has%20some%20mechanism%20for%20producing%20and%20consuming%20HTTP%20traffic,%20and%20therefore%20does%20not%20require%20new%20tooling,%20new%20protocol%20stacks,%20and%20a%20complex%20network%20of%20intermediaries%20envisioned%20by%20the%20SOAP%20model.%20While%20it%20may%20be%20true%20that%20POX%20suffices%20for%2080%%20of%20the%20read-centric%20and%20content-centric%20Web%20services%20that%20currently%20predominate,%20the%20other%2020%%20would%20require%20extensions%20to%20the%20conventional%20HTTP%20style%20of%20interaction.%20For%20example,%20REST%20does%20not%20support%20an%20EDA%20%28Event%20Driven%20Architecture%29;%20it%20lacks%20a%20robust%20error%20handling%20architecture;%20it%20has%20no%20way%20of%20providing%20varying%20degrees%20of%20QoS.%20The%20REST%20style,%20as%20currently%20implemented%20with%20HTTP%20lacks%20features%20that%20support%20Quality%20of%20Service%20capabilities%20which%20users%20have%20come%20to%20expect%20in%20an%20enterprise%20network,%20and%20which%20are%20being%20extended%20over%20the%20internet%20as%20those%20networks%20are%20extended.%20%0AUsers%20have%20begun%20to%20pay%20attention%20to%20this%20debate,%20and%20there%20is%20no%20question%20that%20for%20content-centric%20applications%20a%20REST%20style%20or%20just%20POX%20will%20continue%20to%20be%20very%20efficient%20and%20effective.%20However,%20the%20momentum%20behind%20SOAP%20is%20such%20that%20it%20will%20be%20the%20dominant%20mode%20of%20interaction%20in%20connections%20where%20the%20community%20is%20well%20known%20%28A2A%29%20or%20reasonably%20well%20bounded%20%28B2B%29.%20%0AConsumer-facing%20applications%20and%20those%20that%20are%20primarily%20content%20retrieval%20will%20use%20POX.%20The%20vocal%20enunciation%20of%20REST%20principles%20will%20oblige%20the%20WS-*%20designers%20to%20continually%20defend%20deviations%20from%20those%20principles%20in%20any%20new%20specifications.%20While%20the%20REST%20style%20will%20grow%20in%20popularity%20for%20that%20large%20category%20of%20services%20whose%20primary%20purpose%20is%20the%20delivery%20of%20content,%20this%20growth%20will%20only%20occur%20in%20fits,%20starts%20and%20inconsistent%20pockets%20%28i.e.,%20POX%20or%20REST-like%20rather%20than%20rigorously%20RESTful%29,%20More%20aggressive%20growth%20will%20require%20the%20REST%20community%20to%20deliver%20a%20coherent,%20prescriptive,%20complete%20and%20detailed%20architecture%20and%20set%20of%20specifications,%20as%20well%20as%20tooling%20that%20the%20average%20developer%20can%20use%20in%20building%20distributed%20systems.%20%0A%0A%0ABottom%20Line%0A%0AREST%20still%20will%20take%20several%20years%20to%20go%20from%20an%20architectural%20style%20into%20a%20fully%20fledged%20integration%20architecture%20and%20set%20of%20protocol%20specifications.%20During%202008/09,%20This%20architecture%20will%20be%20merged%20with%20the%20WS-*%20style%20architecture,%20and%20differences%20will%20be%20hidden%20by%20extensions%20to%20existing%20tools.%20.%20Meanwhile,%20users%20should%20adopt%20a%20REST%20style%20in%20defining%20services%20whose%20function%20is%20content-centric.%20Transaction%20and%20event%20style%20services%20should%20be%20based%20on%20WS-*%20integration%20standards.%20Architects%20of%20existing%20WS-*%20systems%20should%20examine%20their%20design%20to%20see%20if%20a%20basic%20subset%20of%20the%20services%20can%20adopt%20the%20REST%20style%20%28i.e.,%20exposefunctionality%20through%20both%20SOAP%20and%20REST%20interfaces%29%20%20to%20facilitate%20adoption%20among%20small-scale%20client%20developers.%20As%20REST%20principles%20become%20better%20understood%20%28in%20the%202006-2008%20time%20frame%29,%20WS-*%20designers%20and%20users%20will%20embrace%20such%20principles,%20and%20will%20create%20a%20REST-style%20protocol%20for%20content-centric%20interactions%20using%20the%20WS-*%20mechanisms.%20%0A%0A%0A%0A%0A%0ASidebar%0A%0A%0ALast%20Callout%0A%0A%0AAttachments%0A%0A%0AExtended%20Analysis%0A%0A%0AOriginal%20Discussion%20Thread%0A%0A%0AEntire%20contents%20%C3%82%C2%A9%202005%20Gartner,%20Inc.%20All%20rights%20reserved.%20Reproduction%20of%20this%20publication%20in%20any%20form%20without%20prior%20written%20permission%20is%20forbidden.%20The%20information%20contained%20herein%20has%20been%20obtained%20from%20sources%20believed%20to%20be%20reliable.%20Gartner%20disclaims%20all%20warranties%20as%20to%20the%20accuracy,%20completeness%20or%20adequacy%20of%20such%20information.%20Gartner%20shall%20have%20no%20liability%20for%20errors,%20omissions%20or%20inadequacies%20in%20the%20information%20contained%20herein%20or%20for%20interpretations%20thereof.%20The%20reader%20assumes%20sole%20responsibility%20for%20the%20selection%20of%20these%20materials%20to%20achieve%20its%20intended%20results.%20The%20opinions%20expressed%20herein%20are%20subject%20to%20change%20without%20notice.%0A%0A%0ACreated:%20%2004/22/2005%0AUpdated:%20%2005/24/2005%2012:19%20PM%0ACurrent%20Phase%20is%20Management%20Review%0ADo%20not%20commit%20before:%0A%09Commentary%0A%09Daniel%20Sholler,%20AIM%20and%20Web%20Services%20Portals%0A%09Ray%20Valdes%0ANicholas%20Gall%09%0A%0ATitle%20%20No%20REST%20for%20the%20WS-Weary%0A%0ASummary%20%0A%0AAs%20many%20organizations%20begin%20programs%20to%20develop%20systems%20in%20a%20service-oriented%20manner,%20practitioners%20have%20become%20aware%20of%20the%20architectural%20style%20known%20as%20REST%20%28REpresentational%20State%20Transfer%29.%20This%20style%20strives%20to%20capture%20the%20architectural%20style%20and%20the%20technologies%20%28URL,%20HTTP,%20and%20HTML%29%20that%20successfully%20powered%20the%20World%20Wide%20Web,%20as%20the%20foundation%20of%20service-oriented%20interactions.%20The%20REST%20style%20of%20system-to-system%20interaction%20has%20been%20positioned%20as%20a%20simpler%20alternative%20to%20SOAP,%20WSDL,%20and%20the%20ever%20growing%20set%20of%20specifications%20based%20on%20them%20%28informally%20referred%20to%20as%20WS-*%29.%20The%20REST%20approach%20will%20become%20commonplace%20for%20content-centric%20applications,%20and%20the%20implied%20design%20style%20will%20be%20incorporated%20into%20many%20WS-*%20protocols,%20REST%20is%20not%20and%20will%20not%20be%20a%20replacement%20for%20Web%20Services.%20%0A%0A%0A%0ABody%0AThere%20has%20been%20a%20long-standing%20debate%20among%20members%20of%20the%20technical%20community%20%20regarding%20different%20approaches%20to%20evolving%20the%20World%20Wide%20Web%20%20from%20human-to-system%20interaction%20to%20%20system-to-system%20interaction.%20Over%20the%20past%20four%20years,%20the%20temperature%20of%20the%20debate%20has%20at%20times%20flared%20white-hot%20among%20communities%20such%20as%20the%20W3C%20Technical%20Architecture%20Group,%20and%20in%20related%20email%20lists%20and%20weblogs.%20One%20of%20the%20axes%20of%20this%20debate%20is%20a%20distinction%20between%20proponents%20of%20the%20Web%20Servcies%20model%20%28based%20on%20SOAP%20and%20the%20attendent%20WS-*%20standards%20%28reference%20Charles%27%20note%20on%20WS%20standards%20selection%29%20%29%20and%20advocates%20of%20REST%20%28REpresentational%20State%20Transfer%29,%20who%20believe%20the%20mechanisms%20that%20have%20powered%20the%20human%20to%20system%20model%20%28HTTP%20etc.%20%29%20are%20sufficient%20without%20the%20added%20%22complexity%22%20of%20the%20WS%20protocols.%20The%20debate%20continues%20to%20smolder,%20despite%20regular%20claims%20of%20victory%20by%20both%20sides.%20Although%20vendors%20of%20Web%20services%20platforms%20have%20mostly%20ignored%20REST%20in%20developing%20the%20WS-*%20protocol%20suite,%20REST%27s%20elegance%20and%20simplicity%20continues%20to%20attract%20a%20segment%20of%20Web%20architects.%20REST%20has%20achieved%20enough%20visibility%20that%20it%20is%20being%20discussed%20as%20part%20of%20enterprise%20SOA%20%28Service-Oriented%20Architecture%29%20plans%20among%2010%-15%%20of%20end-user%20organizations%20that%20consult%20Gartner.%20%0AThe%20REST%20debate%20is%20often%20characterized%20as%20a%20clash%20between%20the%20over-complex,%20vendor-dominated%20efforts%20around%20SOAP%20and%20WSDL,%20vs.%20a%20grassroots-based%20%22KISS%22%20approach%20based%20on%20existing%20web%20technology.%20The%20undertones%20of%20political%20ideology%20around%20this%20debate%20has%20at%20times%20obscured%20rational%20discourse,%20but%20while%20there%20are%20serious%20issues%20to%20be%20discussed,%20there%20is%20at%20least%20no%20debate%20about%20the%20endgame,%20which%20is%20to%20develop%20a%20simple,%20standardized%20style%20for%20inter-system%20integration%20within%20the%20enterprise%20and%20over%20the%20Internet.%20%0AThroughout%202005/06,%20this%20debate%20will%20be%20fueled%20by%20the%20increasing%20complexity%20of%20WS-*%20implementations.%20As%20more%20organizations%20attempt%20complex%20service%20interactions%20using%20existing%20Web%20services%20specifications,%20more%20of%20the%20challenging%20issues%20that%20result%20from%20service%20orientation%20and%20distributed%20systems%20in%20general%20will%20confront%20developers.%20Gartner%20has%20seen%20indications%20of%20frustration%20with%20%22WS-Complexity%22%20among%20end-user%20organizations,%20who%20are%20struggling%20to%20understand%20the%20essential%20requirements%20of%20an%20SOA.%20%28reference%20charle%27s%20note%20again%20here?%20%29%20%0ADuring%202006,%20better%20understanding%20will%20be%20acheived%20and%20greater%20agreement%20will%20be%20reached%20on%20several%20of%20the%20issues%20addressed%20by%20the%20REST%20style%20%28in%20particular,%20the%20means%20of%20representing%20state%20and%20the%20proper%20use%20of%20resource%20identifiers,%20e.g.,%20URLs%29.%20By%20early%202007,%20frameworks%20for%20integration%20and%20new%20programming%20models%20will%20further%20simplify%20the%20development%20models%20for%20REST-style%20systems.%20While%20all%20of%20this%20is%20going%20on,%20the%20growing%20popularity%20and%20capabilities%20of%20WS-*%20will%20expand.%20Ultimately,%20the%20concepts%20will%20borrow%20thinking%20from%20each%20other,%20and%20both%20modes%20will%20converge%20into%20a%20common%20style%20of%20integration.%20%0AStrategic%20Planning%20Assumption:%20Organizations%20will%20use%20REST-style%20interfaces%20for%20content-centric%20applications%20%28applications%20whose%20main%20function%20is%20delivering%20content%20of%20any%20type%20to%20a%20consumer%20of%20that%20content%29%20of%20%20through%202008,%20when%20WS%20standards%20and%20protocols%20will%20have%20developed%20a%20de-facto%20profile%20for%20these%20interactions%20that%20is%20functionally%20similar%20to%20REST%20and%20utilizes%20the%20WS-*%20mechanisms.%20%28.9%20probability%29%20%0AOne%20of%20the%20main%20challenges%20when%20discussing%20this%20debate%20is%20the%20fact%20that%20the%20two%20things%20that%20are%20being%20compared%20%28REST%20and%20WS-*%29%20are%20not%20the%20same%20class.%20REST%20is%20a%20somewhat%20vague%20architectural%20style,%20whereas%20WS-*%20is%20a%20specific%20set%20of%20specifications.%20While%20REST%20incorporates%20six%20architectural%20constraints%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1%29,%20the%20key%20one%20is%20the%20insistence%20on%20a%20small%20set%20of%20uniform%20interfaces:%20%22The%20central%20feature%20that%20distinguishes%20the%20REST%20architectural%20style%20from%20other%20network-based%20styles%20is%20its%20emphasis%20on%20a%20uniform%20interface%20between%20components.%22%20%28Quotation%20from%20Roy%20Fieldings%20PhD%20defining%20REST%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_5%29%29%20REST%20proponents%20%28sometimes%20called%20%22RESTifarians%22%29%20claim%20that%20REST%20builds%20upon%20the%20demonstrated%20success%20of%20the%20Web,%20in%20which%20a%20small%20number%20of%20well-known%20verbs%20%28e.g.,%20GET,%20POST,%20PUT,%20DELETE%29%20are%20applied%20to%20a%20potentially%20infinite%20number%20of%20nouns%20%28URLs%29,%20resulting%20in%20an%20architecture%20that%20is%20globally%20scalable%20and%20easily%20composable;%20enabling%20large%20numbers%20of%20otherwise%20uncoordinated%20agents%20to%20interoperate.%20%0AWhile%20this%20is%20a%20compelling%20argument%20when%20it%20comes%20to%20simple%20resources%20such%20as%20web%20pages,%20it%20is%20not%20entirely%20clear%20that%20this%20severe%20restriction%20on%20verbs%20easily%20applies%20to%20complex%20resources%20such%20as%20ERP%20systems.%20Furthermore,%20the%20WS-*%20camp%20has%20responded%20by%20embracing%20this%20key%20REST%20design%20principle%20--%20as%20can%20be%20seen%20in%20specifications%20such%20as%20WS-MetadataExchange%20and%20WS-Transfer.%20%0AOne%20of%20the%20major%20sources%20of%20confusion%20about%20REST%20is%20the%20fact%20that%20some%20use%20the%20term%20as%20equivalent%20to%20simply%20transferring%20XML%20documents%20over%20HTTP%20%28known%20informally%20as%20POX%20-%20Plain%20Old%20XML%20%28http://en.wikipedia.org/wiki/Plain_Old_XML%29%29.%20While%20this%20is%20certainly%20an%20approach%20to%20integration%20that%20follows%20some%20aspects%20of%20the%20REST%20style,%20it%20is%20not%20truly%20%22RESTful%22.%20For%20example,%20the%20REST%20approach%20makes%20a%20distinction%20between%20GET%20and%20POST,%20in%20which%20GET%20is%20used%20to%20retrieve%20information%20without%20side-effects.%20Multiple%20GET%20requests%20to%20the%20same%20resource%20will%20have%20the%20same%20result%20%28known%20in%20computer%20science%20as%20%22idempotence%22%29.%20For%20interactions%20that%20have%20side%20effects,%20POST,%20PUT%20or%20DELETE%20should%20be%20used.%0AAmazon%27s%20Web%20services%20are%20often%20cited%20as%20the%20leading%20example%20of%20the%20successful%20application%20of%20the%20REST%20style%20instead%20of%20WS-*.%20The%20oft-made%20observation%20is%20that,%20while%20Amazon%20offers%20both%20styles%20of%20interfaces%20to%20its%20thousands%20of%20developer%20affiliates,%2085%%20of%20system-to-system%20interactions%20do%20not%20use%20SOAP%20but%20REST.%20These%20are%20reasonable%20examples%20of%20POX%20Web%20services,%20but%20as%20the%20critics%20of%20REST%20point%20out,%20they%20are%20not%20truly%20RESTful%20because%20operations%20such%20as%20CartCreate,%20CartAdd,%20and%20Cartmodify%20violate%20REST%27s%20stateless%20server%20constraint%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_3%29:%20%22Session%20state%20is%20therefore%20kept%20entirely%20on%20the%20client.%22%20Critics%20argue%20that%20although%20RESTs%20basic%20concepts%20are%20simple,%20applying%20them%20rigidly%20can%20create%20its%20own%20complexity%20barriers.%20%0AThe%20primary%20argument%20for%20REST%20is%20based%20on%20its%20resemblence%20to%20the%20familiar%20web%20architectural%20style:%20everything%20is%20accessible%20via%20URLs%20via%20GET%20and%20POST.%20RESTians%20argue%20that%2080%%20of%20what%20WS-*%20attempts%20to%20do%20with%20multiple%20complex%20specifications%20can%20be%20done%20with%20existing%20web%20protocols.%20The%20argument%20continues%20with%20the%20observation%20that%20virtually%20every%20system%20has%20some%20mechanism%20for%20producing%20and%20consuming%20HTTP%20traffic,%20and%20therefore%20does%20not%20require%20new%20tooling,%20new%20protocol%20stacks,%20and%20a%20complex%20network%20of%20intermediaries%20envisioned%20by%20the%20SOAP%20model.%20While%20it%20may%20be%20true%20that%20POX%20suffices%20for%2080%%20of%20the%20read-centric%20and%20content-centric%20Web%20services%20that%20currently%20predominate,%20the%20other%2020%%20would%20require%20extensions%20to%20the%20conventional%20HTTP%20style%20of%20interaction.%20For%20example,%20REST%20does%20not%20support%20an%20EDA%20%28Event%20Driven%20Architecture%29;%20it%20lacks%20a%20robust%20error%20handling%20architecture;%20it%20has%20no%20way%20of%20providing%20varying%20degrees%20of%20QoS.%20The%20REST%20style,%20as%20currently%20implemented%20with%20HTTP%20lacks%20features%20that%20support%20Quality%20of%20Service%20capabilities%20which%20users%20have%20come%20to%20expect%20in%20an%20enterprise%20network,%20and%20which%20are%20being%20extended%20over%20the%20internet%20as%20those%20networks%20are%20extended.%20%0AUsers%20have%20begun%20to%20pay%20attention%20to%20this%20debate,%20and%20there%20is%20no%20question%20that%20for%20content-centric%20applications%20a%20REST%20style%20or%20just%20POX%20will%20continue%20to%20be%20very%20efficient%20and%20effective.%20However,%20the%20momentum%20behind%20SOAP%20is%20such%20that%20it%20will%20be%20the%20dominant%20mode%20of%20interaction%20in%20connections%20where%20the%20community%20is%20well%20known%20%28A2A%29%20or%20reasonably%20well%20bounded%20%28B2B%29.%20%0AConsumer-facing%20applications%20and%20those%20that%20are%20primarily%20content%20retrieval%20will%20use%20POX.%20The%20vocal%20enunciation%20of%20REST%20principles%20will%20oblige%20the%20WS-*%20designers%20to%20continually%20defend%20deviations%20from%20those%20principles%20in%20any%20new%20specifications.%20While%20the%20REST%20style%20will%20grow%20in%20popularity%20for%20that%20large%20category%20of%20services%20whose%20primary%20purpose%20is%20the%20delivery%20of%20content,%20this%20growth%20will%20only%20occur%20in%20fits,%20starts%20and%20inconsistent%20pockets%20%28i.e.,%20POX%20or%20REST-like%20rather%20than%20rigorously%20RESTful%29,%20More%20aggressive%20growth%20will%20require%20the%20REST%20community%20to%20deliver%20a%20coherent,%20prescriptive,%20complete%20and%20detailed%20architecture%20and%20set%20of%20specifications,%20as%20well%20as%20tooling%20that%20the%20average%20developer%20can%20use%20in%20building%20distributed%20systems.%20%0A%0A%0ABottom%20Line%0A%0AREST%20still%20will%20take%20several%20years%20to%20go%20from%20an%20architectural%20style%20into%20a%20fully%20fledged%20integration%20architecture%20and%20set%20of%20protocol%20specifications.%20During%202008/09,%20This%20architecture%20will%20be%20merged%20with%20the%20WS-*%20style%20architecture,%20and%20differences%20will%20be%20hidden%20by%20extensions%20to%20existing%20tools.%20.%20Meanwhile,%20users%20should%20adopt%20a%20REST%20style%20in%20defining%20services%20whose%20function%20is%20content-centric.%20Transaction%20and%20event%20style%20services%20should%20be%20based%20on%20WS-*%20integration%20standards.%20Architects%20of%20existing%20WS-*%20systems%20should%20examine%20their%20design%20to%20see%20if%20a%20basic%20subset%20of%20the%20services%20can%20adopt%20the%20REST%20style%20%28i.e.,%20exposefunctionality%20through%20both%20SOAP%20and%20REST%20interfaces%29%20%20to%20facilitate%20adoption%20among%20small-scale%20client%20developers.%20As%20REST%20principles%20become%20better%20understood%20%28in%20the%202006-2008%20time%20frame%29,%20WS-*%20designers%20and%20users%20will%20embrace%20such%20principles,%20and%20will%20create%20a%20REST-style%20protocol%20for%20content-centric%20interactions%20using%20the%20WS-*%20mechanisms.%20%0A%0A%0A%0A%0A%0ASidebar%0A%0A%0ALast%20Callout%0A%0A%0AAttachments%0A%0A%0AExtended%20Analysis%0A%0A%0AOriginal%20Discussion%20Thread%0A%0A%0AEntire%20contents%20%C3%82%C2%A9%202005%20Gartner,%20Inc.%20All%20rights%20reserved.%20Reproduction%20of%20this%20publication%20in%20any%20form%20without%20prior%20written%20permission%20is%20forbidden.%20The%20information%20contained%20herein%20has%20been%20obtained%20from%20sources%20believed%20to%20be%20reliable.%20Gartner%20disclaims%20all%20warranties%20as%20to%20the%20accuracy,%20completeness%20or%20adequacy%20of%20such%20information.%20Gartner%20shall%20have%20no%20liability%20for%20errors,%20omissions%20or%20inadequacies%20in%20the%20information%20contained%20herein%20or%20for%20interpretations%20thereof.%20The%20reader%20assumes%20sole%20responsibility%20for%20the%20selection%20of%20these%20materials%20to%20achieve%20its%20intended%20results.%20The%20opinions%20expressed%20herein%20are%20subject%20to%20change%20without%20notice.%0A%0A%0ACreated:%20%2004/22/2005%0AUpdated:%20%2005/24/2005%2012:19%20PM%0ACurrent%20Phase%20is%20Management%20Review%0ADo%20not%20commit%20before:%0A%09Commentary%0A%09Daniel%20Sholler,%20AIM%20and%20Web%20Services%20Portals%0A%09Ray%20Valdes%0ANicholas%20Gall%09%0A%0ATitle%20%20No%20REST%20for%20the%20WS-Weary%0A%0ASummary%20%0A%0AAs%20many%20organizations%20begin%20programs%20to%20develop%20systems%20in%20a%20service-oriented%20manner,%20practitioners%20have%20become%20aware%20of%20the%20architectural%20style%20known%20as%20REST%20%28REpresentational%20State%20Transfer%29.%20This%20style%20strives%20to%20capture%20the%20architectural%20style%20and%20the%20technologies%20%28URL,%20HTTP,%20and%20HTML%29%20that%20successfully%20powered%20the%20World%20Wide%20Web,%20as%20the%20foundation%20of%20service-oriented%20interactions.%20The%20REST%20style%20of%20system-to-system%20interaction%20has%20been%20positioned%20as%20a%20simpler%20alternative%20to%20SOAP,%20WSDL,%20and%20the%20ever%20growing%20set%20of%20specifications%20based%20on%20them%20%28informally%20referred%20to%20as%20WS-*%29.%20The%20REST%20approach%20will%20become%20commonplace%20for%20content-centric%20applications,%20and%20the%20implied%20design%20style%20will%20be%20incorporated%20into%20many%20WS-*%20protocols,%20REST%20is%20not%20and%20will%20not%20be%20a%20replacement%20for%20Web%20Services.%20%0A%0A%0A%0ABody%0AThere%20has%20been%20a%20long-standing%20debate%20among%20members%20of%20the%20technical%20community%20%20regarding%20different%20approaches%20to%20evolving%20the%20World%20Wide%20Web%20%20from%20human-to-system%20interaction%20to%20%20system-to-system%20interaction.%20Over%20the%20past%20four%20years,%20the%20temperature%20of%20the%20debate%20has%20at%20times%20flared%20white-hot%20among%20communities%20such%20as%20the%20W3C%20Technical%20Architecture%20Group,%20and%20in%20related%20email%20lists%20and%20weblogs.%20One%20of%20the%20axes%20of%20this%20debate%20is%20a%20distinction%20between%20proponents%20of%20the%20Web%20Servcies%20model%20%28based%20on%20SOAP%20and%20the%20attendent%20WS-*%20standards%20%28reference%20Charles%27%20note%20on%20WS%20standards%20selection%29%20%29%20and%20advocates%20of%20REST%20%28REpresentational%20State%20Transfer%29,%20who%20believe%20the%20mechanisms%20that%20have%20powered%20the%20human%20to%20system%20model%20%28HTTP%20etc.%20%29%20are%20sufficient%20without%20the%20added%20%22complexity%22%20of%20the%20WS%20protocols.%20The%20debate%20continues%20to%20smolder,%20despite%20regular%20claims%20of%20victory%20by%20both%20sides.%20Although%20vendors%20of%20Web%20services%20platforms%20have%20mostly%20ignored%20REST%20in%20developing%20the%20WS-*%20protocol%20suite,%20REST%27s%20elegance%20and%20simplicity%20continues%20to%20attract%20a%20segment%20of%20Web%20architects.%20REST%20has%20achieved%20enough%20visibility%20that%20it%20is%20being%20discussed%20as%20part%20of%20enterprise%20SOA%20%28Service-Oriented%20Architecture%29%20plans%20among%2010%-15%%20of%20end-user%20organizations%20that%20consult%20Gartner.%20%0AThe%20REST%20debate%20is%20often%20characterized%20as%20a%20clash%20between%20the%20over-complex,%20vendor-dominated%20efforts%20around%20SOAP%20and%20WSDL,%20vs.%20a%20grassroots-based%20%22KISS%22%20approach%20based%20on%20existing%20web%20technology.%20The%20undertones%20of%20political%20ideology%20around%20this%20debate%20has%20at%20times%20obscured%20rational%20discourse,%20but%20while%20there%20are%20serious%20issues%20to%20be%20discussed,%20there%20is%20at%20least%20no%20debate%20about%20the%20endgame,%20which%20is%20to%20develop%20a%20simple,%20standardized%20style%20for%20inter-system%20integration%20within%20the%20enterprise%20and%20over%20the%20Internet.%20%0AThroughout%202005/06,%20this%20debate%20will%20be%20fueled%20by%20the%20increasing%20complexity%20of%20WS-*%20implementations.%20As%20more%20organizations%20attempt%20complex%20service%20interactions%20using%20existing%20Web%20services%20specifications,%20more%20of%20the%20challenging%20issues%20that%20result%20from%20service%20orientation%20and%20distributed%20systems%20in%20general%20will%20confront%20developers.%20Gartner%20has%20seen%20indications%20of%20frustration%20with%20%22WS-Complexity%22%20among%20end-user%20organizations,%20who%20are%20struggling%20to%20understand%20the%20essential%20requirements%20of%20an%20SOA.%20%28reference%20charle%27s%20note%20again%20here?%20%29%20%0ADuring%202006,%20better%20understanding%20will%20be%20acheived%20and%20greater%20agreement%20will%20be%20reached%20on%20several%20of%20the%20issues%20addressed%20by%20the%20REST%20style%20%28in%20particular,%20the%20means%20of%20representing%20state%20and%20the%20proper%20use%20of%20resource%20identifiers,%20e.g.,%20URLs%29.%20By%20early%202007,%20frameworks%20for%20integration%20and%20new%20programming%20models%20will%20further%20simplify%20the%20development%20models%20for%20REST-style%20systems.%20While%20all%20of%20this%20is%20going%20on,%20the%20growing%20popularity%20and%20capabilities%20of%20WS-*%20will%20expand.%20Ultimately,%20the%20concepts%20will%20borrow%20thinking%20from%20each%20other,%20and%20both%20modes%20will%20converge%20into%20a%20common%20style%20of%20integration.%20%0AStrategic%20Planning%20Assumption:%20Organizations%20will%20use%20REST-style%20interfaces%20for%20content-centric%20applications%20%28applications%20whose%20main%20function%20is%20delivering%20content%20of%20any%20type%20to%20a%20consumer%20of%20that%20content%29%20of%20%20through%202008,%20when%20WS%20standards%20and%20protocols%20will%20have%20developed%20a%20de-facto%20profile%20for%20these%20interactions%20that%20is%20functionally%20similar%20to%20REST%20and%20utilizes%20the%20WS-*%20mechanisms.%20%28.9%20probability%29%20%0AOne%20of%20the%20main%20challenges%20when%20discussing%20this%20debate%20is%20the%20fact%20that%20the%20two%20things%20that%20are%20being%20compared%20%28REST%20and%20WS-*%29%20are%20not%20the%20same%20class.%20REST%20is%20a%20somewhat%20vague%20architectural%20style,%20whereas%20WS-*%20is%20a%20specific%20set%20of%20specifications.%20While%20REST%20incorporates%20six%20architectural%20constraints%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1%29,%20the%20key%20one%20is%20the%20insistence%20on%20a%20small%20set%20of%20uniform%20interfaces:%20%22The%20central%20feature%20that%20distinguishes%20the%20REST%20architectural%20style%20from%20other%20network-based%20styles%20is%20its%20emphasis%20on%20a%20uniform%20interface%20between%20components.%22%20%28Quotation%20from%20Roy%20Fieldings%20PhD%20defining%20REST%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_5%29%29%20REST%20proponents%20%28sometimes%20called%20%22RESTifarians%22%29%20claim%20that%20REST%20builds%20upon%20the%20demonstrated%20success%20of%20the%20Web,%20in%20which%20a%20small%20number%20of%20well-known%20verbs%20%28e.g.,%20GET,%20POST,%20PUT,%20DELETE%29%20are%20applied%20to%20a%20potentially%20infinite%20number%20of%20nouns%20%28URLs%29,%20resulting%20in%20an%20architecture%20that%20is%20globally%20scalable%20and%20easily%20composable;%20enabling%20large%20numbers%20of%20otherwise%20uncoordinated%20agents%20to%20interoperate.%20%0AWhile%20this%20is%20a%20compelling%20argument%20when%20it%20comes%20to%20simple%20resources%20such%20as%20web%20pages,%20it%20is%20not%20entirely%20clear%20that%20this%20severe%20restriction%20on%20verbs%20easily%20applies%20to%20complex%20resources%20such%20as%20ERP%20systems.%20Furthermore,%20the%20WS-*%20camp%20has%20responded%20by%20embracing%20this%20key%20REST%20design%20principle%20--%20as%20can%20be%20seen%20in%20specifications%20such%20as%20WS-MetadataExchange%20and%20WS-Transfer.%20%0AOne%20of%20the%20major%20sources%20of%20confusion%20about%20REST%20is%20the%20fact%20that%20some%20use%20the%20term%20as%20equivalent%20to%20simply%20transferring%20XML%20documents%20over%20HTTP%20%28known%20informally%20as%20POX%20-%20Plain%20Old%20XML%20%28http://en.wikipedia.org/wiki/Plain_Old_XML%29%29.%20While%20this%20is%20certainly%20an%20approach%20to%20integration%20that%20follows%20some%20aspects%20of%20the%20REST%20style,%20it%20is%20not%20truly%20%22RESTful%22.%20For%20example,%20the%20REST%20approach%20makes%20a%20distinction%20between%20GET%20and%20POST,%20in%20which%20GET%20is%20used%20to%20retrieve%20information%20without%20side-effects.%20Multiple%20GET%20requests%20to%20the%20same%20resource%20will%20have%20the%20same%20result%20%28known%20in%20computer%20science%20as%20%22idempotence%22%29.%20For%20interactions%20that%20have%20side%20effects,%20POST,%20PUT%20or%20DELETE%20should%20be%20used.%0AAmazon%27s%20Web%20services%20are%20often%20cited%20as%20the%20leading%20example%20of%20the%20successful%20application%20of%20the%20REST%20style%20instead%20of%20WS-*.%20The%20oft-made%20observation%20is%20that,%20while%20Amazon%20offers%20both%20styles%20of%20interfaces%20to%20its%20thousands%20of%20developer%20affiliates,%2085%%20of%20system-to-system%20interactions%20do%20not%20use%20SOAP%20but%20REST.%20These%20are%20reasonable%20examples%20of%20POX%20Web%20services,%20but%20as%20the%20critics%20of%20REST%20point%20out,%20they%20are%20not%20truly%20RESTful%20because%20operations%20such%20as%20CartCreate,%20CartAdd,%20and%20Cartmodify%20violate%20REST%27s%20stateless%20server%20constraint%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_3%29:%20%22Session%20state%20is%20therefore%20kept%20entirely%20on%20the%20client.%22%20Critics%20argue%20that%20although%20RESTs%20basic%20concepts%20are%20simple,%20applying%20them%20rigidly%20can%20create%20its%20own%20complexity%20barriers.%20%0AThe%20primary%20argument%20for%20REST%20is%20based%20on%20its%20resemblence%20to%20the%20familiar%20web%20architectural%20style:%20everything%20is%20accessible%20via%20URLs%20via%20GET%20and%20POST.%20RESTians%20argue%20that%2080%%20of%20what%20WS-*%20attempts%20to%20do%20with%20multiple%20complex%20specifications%20can%20be%20done%20with%20existing%20web%20protocols.%20The%20argument%20continues%20with%20the%20observation%20that%20virtually%20every%20system%20has%20some%20mechanism%20for%20producing%20and%20consuming%20HTTP%20traffic,%20and%20therefore%20does%20not%20require%20new%20tooling,%20new%20protocol%20stacks,%20and%20a%20complex%20network%20of%20intermediaries%20envisioned%20by%20the%20SOAP%20model.%20While%20it%20may%20be%20true%20that%20POX%20suffices%20for%2080%%20of%20the%20read-centric%20and%20content-centric%20Web%20services%20that%20currently%20predominate,%20the%20other%2020%%20would%20require%20extensions%20to%20the%20conventional%20HTTP%20style%20of%20interaction.%20For%20example,%20REST%20does%20not%20support%20an%20EDA%20%28Event%20Driven%20Architecture%29;%20it%20lacks%20a%20robust%20error%20handling%20architecture;%20it%20has%20no%20way%20of%20providing%20varying%20degrees%20of%20QoS.%20The%20REST%20style,%20as%20currently%20implemented%20with%20HTTP%20lacks%20features%20that%20support%20Quality%20of%20Service%20capabilities%20which%20users%20have%20come%20to%20expect%20in%20an%20enterprise%20network,%20and%20which%20are%20being%20extended%20over%20the%20internet%20as%20those%20networks%20are%20extended.%20%0AUsers%20have%20begun%20to%20pay%20attention%20to%20this%20debate,%20and%20there%20is%20no%20question%20that%20for%20content-centric%20applications%20a%20REST%20style%20or%20just%20POX%20will%20continue%20to%20be%20very%20efficient%20and%20effective.%20However,%20the%20momentum%20behind%20SOAP%20is%20such%20that%20it%20will%20be%20the%20dominant%20mode%20of%20interaction%20in%20connections%20where%20the%20community%20is%20well%20known%20%28A2A%29%20or%20reasonably%20well%20bounded%20%28B2B%29.%20%0AConsumer-facing%20applications%20and%20those%20that%20are%20primarily%20content%20retrieval%20will%20use%20POX.%20The%20vocal%20enunciation%20of%20REST%20principles%20will%20oblige%20the%20WS-*%20designers%20to%20continually%20defend%20deviations%20from%20those%20principles%20in%20any%20new%20specifications.%20While%20the%20REST%20style%20will%20grow%20in%20popularity%20for%20that%20large%20category%20of%20services%20whose%20primary%20purpose%20is%20the%20delivery%20of%20content,%20this%20growth%20will%20only%20occur%20in%20fits,%20starts%20and%20inconsistent%20pockets%20%28i.e.,%20POX%20or%20REST-like%20rather%20than%20rigorously%20RESTful%29,%20More%20aggressive%20growth%20will%20require%20the%20REST%20community%20to%20deliver%20a%20coherent,%20prescriptive,%20complete%20and%20detailed%20architecture%20and%20set%20of%20specifications,%20as%20well%20as%20tooling%20that%20the%20average%20developer%20can%20use%20in%20building%20distributed%20systems.%20%0A%0A%0ABottom%20Line%0A%0AREST%20still%20will%20take%20several%20years%20to%20go%20from%20an%20architectural%20style%20into%20a%20fully%20fledged%20integration%20architecture%20and%20set%20of%20protocol%20specifications.%20During%202008/09,%20This%20architecture%20will%20be%20merged%20with%20the%20WS-*%20style%20architecture,%20and%20differences%20will%20be%20hidden%20by%20extensions%20to%20existing%20tools.%20.%20Meanwhile,%20users%20should%20adopt%20a%20REST%20style%20in%20defining%20services%20whose%20function%20is%20content-centric.%20Transaction%20and%20event%20style%20services%20should%20be%20based%20on%20WS-*%20integration%20standards.%20Architects%20of%20existing%20WS-*%20systems%20should%20examine%20their%20design%20to%20see%20if%20a%20basic%20subset%20of%20the%20services%20can%20adopt%20the%20REST%20style%20%28i.e.,%20exposefunctionality%20through%20both%20SOAP%20and%20REST%20interfaces%29%20%20to%20facilitate%20adoption%20among%20small-scale%20client%20developers.%20As%20REST%20principles%20become%20better%20understood%20%28in%20the%202006-2008%20time%20frame%29,%20WS-*%20designers%20and%20users%20will%20embrace%20such%20principles,%20and%20will%20create%20a%20REST-style%20protocol%20for%20content-centric%20interactions%20using%20the%20WS-*%20mechanisms.%20%0A%0A%0A%0A%0A%0ASidebar%0A%0A%0ALast%20Callout%0A%0A%0AAttachments%0A%0A%0AExtended%20Analysis%0A%0A%0AOriginal%20Discussion%20Thread%0A%0A%0AEntire%20contents%20%C3%82%C2%A9%202005%20Gartner,%20Inc.%20All%20rights%20reserved.%20Reproduction%20of%20this%20publication%20in%20any%20form%20without%20prior%20written%20permission%20is%20forbidden.%20The%20information%20contained%20herein%20has%20been%20obtained%20from%20sources%20believed%20to%20be%20reliable.%20Gartner%20disclaims%20all%20warranties%20as%20to%20the%20accuracy,%20completeness%20or%20adequacy%20of%20such%20information.%20Gartner%20shall%20have%20no%20liability%20for%20errors,%20omissions%20or%20inadequacies%20in%20the%20information%20contained%20herein%20or%20for%20interpretations%20thereof.%20The%20reader%20assumes%20sole%20responsibility%20for%20the%20selection%20of%20these%20materials%20to%20achieve%20its%20intended%20results.%20The%20opinions%20expressed%20herein%20are%20subject%20to%20change%20without%20notice.%0A%0A%0ACreated:%20%2004/22/2005%0AUpdated:%20%2005/24/2005%2012:19%20PM%0ACurrent%20Phase%20is%20Management%20Review%0ADo%20not%20commit%20before:%0A%09Commentary%0A%09Daniel%20Sholler,%20AIM%20and%20Web%20Services%20Portals%0A%09Ray%20Valdes%0ANicholas%20Gall%09%0A%0ATitle%20%20No%20REST%20for%20the%20WS-Weary%0A%0ASummary%20%0A%0AAs%20many%20organizations%20begin%20programs%20to%20develop%20systems%20in%20a%20service-oriented%20manner,%20practitioners%20have%20become%20aware%20of%20the%20architectural%20style%20known%20as%20REST%20%28REpresentational%20State%20Transfer%29.%20This%20style%20strives%20to%20capture%20the%20architectural%20style%20and%20the%20technologies%20%28URL,%20HTTP,%20and%20HTML%29%20that%20successfully%20powered%20the%20World%20Wide%20Web,%20as%20the%20foundation%20of%20service-oriented%20interactions.%20The%20REST%20style%20of%20system-to-system%20interaction%20has%20been%20positioned%20as%20a%20simpler%20alternative%20to%20SOAP,%20WSDL,%20and%20the%20ever%20growing%20set%20of%20specifications%20based%20on%20them%20%28informally%20referred%20to%20as%20WS-*%29.%20The%20REST%20approach%20will%20become%20commonplace%20for%20content-centric%20applications,%20and%20the%20implied%20design%20style%20will%20be%20incorporated%20into%20many%20WS-*%20protocols,%20REST%20is%20not%20and%20will%20not%20be%20a%20replacement%20for%20Web%20Services.%20%0A%0A%0A%0ABody%0AThere%20has%20been%20a%20long-standing%20debate%20among%20members%20of%20the%20technical%20community%20%20regarding%20different%20approaches%20to%20evolving%20the%20World%20Wide%20Web%20%20from%20human-to-system%20interaction%20to%20%20system-to-system%20interaction.%20Over%20the%20past%20four%20years,%20the%20temperature%20of%20the%20debate%20has%20at%20times%20flared%20white-hot%20among%20communities%20such%20as%20the%20W3C%20Technical%20Architecture%20Group,%20and%20in%20related%20email%20lists%20and%20weblogs.%20One%20of%20the%20axes%20of%20this%20debate%20is%20a%20distinction%20between%20proponents%20of%20the%20Web%20Servcies%20model%20%28based%20on%20SOAP%20and%20the%20attendent%20WS-*%20standards%20%28reference%20Charles%27%20note%20on%20WS%20standards%20selection%29%20%29%20and%20advocates%20of%20REST%20%28REpresentational%20State%20Transfer%29,%20who%20believe%20the%20mechanisms%20that%20have%20powered%20the%20human%20to%20system%20model%20%28HTTP%20etc.%20%29%20are%20sufficient%20without%20the%20added%20%22complexity%22%20of%20the%20WS%20protocols.%20The%20debate%20continues%20to%20smolder,%20despite%20regular%20claims%20of%20victory%20by%20both%20sides.%20Although%20vendors%20of%20Web%20services%20platforms%20have%20mostly%20ignored%20REST%20in%20developing%20the%20WS-*%20protocol%20suite,%20REST%27s%20elegance%20and%20simplicity%20continues%20to%20attract%20a%20segment%20of%20Web%20architects.%20REST%20has%20achieved%20enough%20visibility%20that%20it%20is%20being%20discussed%20as%20part%20of%20enterprise%20SOA%20%28Service-Oriented%20Architecture%29%20plans%20among%2010%-15%%20of%20end-user%20organizations%20that%20consult%20Gartner.%20%0AThe%20REST%20debate%20is%20often%20characterized%20as%20a%20clash%20between%20the%20over-complex,%20vendor-dominated%20efforts%20around%20SOAP%20and%20WSDL,%20vs.%20a%20grassroots-based%20%22KISS%22%20approach%20based%20on%20existing%20web%20technology.%20The%20undertones%20of%20political%20ideology%20around%20this%20debate%20has%20at%20times%20obscured%20rational%20discourse,%20but%20while%20there%20are%20serious%20issues%20to%20be%20discussed,%20there%20is%20at%20least%20no%20debate%20about%20the%20endgame,%20which%20is%20to%20develop%20a%20simple,%20standardized%20style%20for%20inter-system%20integration%20within%20the%20enterprise%20and%20over%20the%20Internet.%20%0AThroughout%202005/06,%20this%20debate%20will%20be%20fueled%20by%20the%20increasing%20complexity%20of%20WS-*%20implementations.%20As%20more%20organizations%20attempt%20complex%20service%20interactions%20using%20existing%20Web%20services%20specifications,%20more%20of%20the%20challenging%20issues%20that%20result%20from%20service%20orientation%20and%20distributed%20systems%20in%20general%20will%20confront%20developers.%20Gartner%20has%20seen%20indications%20of%20frustration%20with%20%22WS-Complexity%22%20among%20end-user%20organizations,%20who%20are%20struggling%20to%20understand%20the%20essential%20requirements%20of%20an%20SOA.%20%28reference%20charle%27s%20note%20again%20here?%20%29%20%0ADuring%202006,%20better%20understanding%20will%20be%20acheived%20and%20greater%20agreement%20will%20be%20reached%20on%20several%20of%20the%20issues%20addressed%20by%20the%20REST%20style%20%28in%20particular,%20the%20means%20of%20representing%20state%20and%20the%20proper%20use%20of%20resource%20identifiers,%20e.g.,%20URLs%29.%20By%20early%202007,%20frameworks%20for%20integration%20and%20new%20programming%20models%20will%20further%20simplify%20the%20development%20models%20for%20REST-style%20systems.%20While%20all%20of%20this%20is%20going%20on,%20the%20growing%20popularity%20and%20capabilities%20of%20WS-*%20will%20expand.%20Ultimately,%20the%20concepts%20will%20borrow%20thinking%20from%20each%20other,%20and%20both%20modes%20will%20converge%20into%20a%20common%20style%20of%20integration.%20%0AStrategic%20Planning%20Assumption:%20Organizations%20will%20use%20REST-style%20interfaces%20for%20content-centric%20applications%20%28applications%20whose%20main%20function%20is%20delivering%20content%20of%20any%20type%20to%20a%20consumer%20of%20that%20content%29%20of%20%20through%202008,%20when%20WS%20standards%20and%20protocols%20will%20have%20developed%20a%20de-facto%20profile%20for%20these%20interactions%20that%20is%20functionally%20similar%20to%20REST%20and%20utilizes%20the%20WS-*%20mechanisms.%20%28.9%20probability%29%20%0AOne%20of%20the%20main%20challenges%20when%20discussing%20this%20debate%20is%20the%20fact%20that%20the%20two%20things%20that%20are%20being%20compared%20%28REST%20and%20WS-*%29%20are%20not%20the%20same%20class.%20REST%20is%20a%20somewhat%20vague%20architectural%20style,%20whereas%20WS-*%20is%20a%20specific%20set%20of%20specifications.%20While%20REST%20incorporates%20six%20architectural%20constraints%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1%29,%20the%20key%20one%20is%20the%20insistence%20on%20a%20small%20set%20of%20uniform%20interfaces:%20%22The%20central%20feature%20that%20distinguishes%20the%20REST%20architectural%20style%20from%20other%20network-based%20styles%20is%20its%20emphasis%20on%20a%20uniform%20interface%20between%20components.%22%20%28Quotation%20from%20Roy%20Fieldings%20PhD%20defining%20REST%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_5%29%29%20REST%20proponents%20%28sometimes%20called%20%22RESTifarians%22%29%20claim%20that%20REST%20builds%20upon%20the%20demonstrated%20success%20of%20the%20Web,%20in%20which%20a%20small%20number%20of%20well-known%20verbs%20%28e.g.,%20GET,%20POST,%20PUT,%20DELETE%29%20are%20applied%20to%20a%20potentially%20infinite%20number%20of%20nouns%20%28URLs%29,%20resulting%20in%20an%20architecture%20that%20is%20globally%20scalable%20and%20easily%20composable;%20enabling%20large%20numbers%20of%20otherwise%20uncoordinated%20agents%20to%20interoperate.%20%0AWhile%20this%20is%20a%20compelling%20argument%20when%20it%20comes%20to%20simple%20resources%20such%20as%20web%20pages,%20it%20is%20not%20entirely%20clear%20that%20this%20severe%20restriction%20on%20verbs%20easily%20applies%20to%20complex%20resources%20such%20as%20ERP%20systems.%20Furthermore,%20the%20WS-*%20camp%20has%20responded%20by%20embracing%20this%20key%20REST%20design%20principle%20--%20as%20can%20be%20seen%20in%20specifications%20such%20as%20WS-MetadataExchange%20and%20WS-Transfer.%20%0AOne%20of%20the%20major%20sources%20of%20confusion%20about%20REST%20is%20the%20fact%20that%20some%20use%20the%20term%20as%20equivalent%20to%20simply%20transferring%20XML%20documents%20over%20HTTP%20%28known%20informally%20as%20POX%20-%20Plain%20Old%20XML%20%28http://en.wikipedia.org/wiki/Plain_Old_XML%29%29.%20While%20this%20is%20certainly%20an%20approach%20to%20integration%20that%20follows%20some%20aspects%20of%20the%20REST%20style,%20it%20is%20not%20truly%20%22RESTful%22.%20For%20example,%20the%20REST%20approach%20makes%20a%20distinction%20between%20GET%20and%20POST,%20in%20which%20GET%20is%20used%20to%20retrieve%20information%20without%20side-effects.%20Multiple%20GET%20requests%20to%20the%20same%20resource%20will%20have%20the%20same%20result%20%28known%20in%20computer%20science%20as%20%22idempotence%22%29.%20For%20interactions%20that%20have%20side%20effects,%20POST,%20PUT%20or%20DELETE%20should%20be%20used.%0AAmazon%27s%20Web%20services%20are%20often%20cited%20as%20the%20leading%20example%20of%20the%20successful%20application%20of%20the%20REST%20style%20instead%20of%20WS-*.%20The%20oft-made%20observation%20is%20that,%20while%20Amazon%20offers%20both%20styles%20of%20interfaces%20to%20its%20thousands%20of%20developer%20affiliates,%2085%%20of%20system-to-system%20interactions%20do%20not%20use%20SOAP%20but%20REST.%20These%20are%20reasonable%20examples%20of%20POX%20Web%20services,%20but%20as%20the%20critics%20of%20REST%20point%20out,%20they%20are%20not%20truly%20RESTful%20because%20operations%20such%20as%20CartCreate,%20CartAdd,%20and%20Cartmodify%20violate%20REST%27s%20stateless%20server%20constraint%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_3%29:%20%22Session%20state%20is%20therefore%20kept%20entirely%20on%20the%20client.%22%20Critics%20argue%20that%20although%20RESTs%20basic%20concepts%20are%20simple,%20applying%20them%20rigidly%20can%20create%20its%20own%20complexity%20barriers.%20%0AThe%20primary%20argument%20for%20REST%20is%20based%20on%20its%20resemblence%20to%20the%20familiar%20web%20architectural%20style:%20everything%20is%20accessible%20via%20URLs%20via%20GET%20and%20POST.%20RESTians%20argue%20that%2080%%20of%20what%20WS-*%20attempts%20to%20do%20with%20multiple%20complex%20specifications%20can%20be%20done%20with%20existing%20web%20protocols.%20The%20argument%20continues%20with%20the%20observation%20that%20virtually%20every%20system%20has%20some%20mechanism%20for%20producing%20and%20consuming%20HTTP%20traffic,%20and%20therefore%20does%20not%20require%20new%20tooling,%20new%20protocol%20stacks,%20and%20a%20complex%20network%20of%20intermediaries%20envisioned%20by%20the%20SOAP%20model.%20While%20it%20may%20be%20true%20that%20POX%20suffices%20for%2080%%20of%20the%20read-centric%20and%20content-centric%20Web%20services%20that%20currently%20predominate,%20the%20other%2020%%20would%20require%20extensions%20to%20the%20conventional%20HTTP%20style%20of%20interaction.%20For%20example,%20REST%20does%20not%20support%20an%20EDA%20%28Event%20Driven%20Architecture%29;%20it%20lacks%20a%20robust%20error%20handling%20architecture;%20it%20has%20no%20way%20of%20providing%20varying%20degrees%20of%20QoS.%20The%20REST%20style,%20as%20currently%20implemented%20with%20HTTP%20lacks%20features%20that%20support%20Quality%20of%20Service%20capabilities%20which%20users%20have%20come%20to%20expect%20in%20an%20enterprise%20network,%20and%20which%20are%20being%20extended%20over%20the%20internet%20as%20those%20networks%20are%20extended.%20%0AUsers%20have%20begun%20to%20pay%20attention%20to%20this%20debate,%20and%20there%20is%20no%20question%20that%20for%20content-centric%20applications%20a%20REST%20style%20or%20just%20POX%20will%20continue%20to%20be%20very%20efficient%20and%20effective.%20However,%20the%20momentum%20behind%20SOAP%20is%20such%20that%20it%20will%20be%20the%20dominant%20mode%20of%20interaction%20in%20connections%20where%20the%20community%20is%20well%20known%20%28A2A%29%20or%20reasonably%20well%20bounded%20%28B2B%29.%20%0AConsumer-facing%20applications%20and%20those%20that%20are%20primarily%20content%20retrieval%20will%20use%20POX.%20The%20vocal%20enunciation%20of%20REST%20principles%20will%20oblige%20the%20WS-*%20designers%20to%20continually%20defend%20deviations%20from%20those%20principles%20in%20any%20new%20specifications.%20While%20the%20REST%20style%20will%20grow%20in%20popularity%20for%20that%20large%20category%20of%20services%20whose%20primary%20purpose%20is%20the%20delivery%20of%20content,%20this%20growth%20will%20only%20occur%20in%20fits,%20starts%20and%20inconsistent%20pockets%20%28i.e.,%20POX%20or%20REST-like%20rather%20than%20rigorously%20RESTful%29,%20More%20aggressive%20growth%20will%20require%20the%20REST%20community%20to%20deliver%20a%20coherent,%20prescriptive,%20complete%20and%20detailed%20architecture%20and%20set%20of%20specifications,%20as%20well%20as%20tooling%20that%20the%20average%20developer%20can%20use%20in%20building%20distributed%20systems.%20%0A%0A%0ABottom%20Line%0A%0AREST%20still%20will%20take%20several%20years%20to%20go%20from%20an%20architectural%20style%20into%20a%20fully%20fledged%20integration%20architecture%20and%20set%20of%20protocol%20specifications.%20During%202008/09,%20This%20architecture%20will%20be%20merged%20with%20the%20WS-*%20style%20architecture,%20and%20differences%20will%20be%20hidden%20by%20extensions%20to%20existing%20tools.%20.%20Meanwhile,%20users%20should%20adopt%20a%20REST%20style%20in%20defining%20services%20whose%20function%20is%20content-centric.%20Transaction%20and%20event%20style%20services%20should%20be%20based%20on%20WS-*%20integration%20standards.%20Architects%20of%20existing%20WS-*%20systems%20should%20examine%20their%20design%20to%20see%20if%20a%20basic%20subset%20of%20the%20services%20can%20adopt%20the%20REST%20style%20%28i.e.,%20exposefunctionality%20through%20both%20SOAP%20and%20REST%20interfaces%29%20%20to%20facilitate%20adoption%20among%20small-scale%20client%20developers.%20As%20REST%20principles%20become%20better%20understood%20%28in%20the%202006-2008%20time%20frame%29,%20WS-*%20designers%20and%20users%20will%20embrace%20such%20principles,%20and%20will%20create%20a%20REST-style%20protocol%20for%20content-centric%20interactions%20using%20the%20WS-*%20mechanisms.%20%0A%0A%0A%0A%0A%0ASidebar%0A%0A%0ALast%20Callout%0A%0A%0AAttachments%0A%0A%0AExtended%20Analysis%0A%0A%0AOriginal%20Discussion%20Thread%0A%0A%0AEntire%20contents%20%C3%82%C2%A9%202005%20Gartner,%20Inc.%20All%20rights%20reserved.%20Reproduction%20of%20this%20publication%20in%20any%20form%20without%20prior%20written%20permission%20is%20forbidden.%20The%20information%20contained%20herein%20has%20been%20obtained%20from%20sources%20believed%20to%20be%20reliable.%20Gartner%20disclaims%20all%20warranties%20as%20to%20the%20accuracy,%20completeness%20or%20adequacy%20of%20such%20information.%20Gartner%20shall%20have%20no%20liability%20for%20errors,%20omissions%20or%20inadequacies%20in%20the%20information%20contained%20herein%20or%20for%20interpretations%20thereof.%20The%20reader%20assumes%20sole%20responsibility%20for%20the%20selection%20of%20these%20materials%20to%20achieve%20its%20intended%20results.%20The%20opinions%20expressed%20herein%20are%20subject%20to%20change%20without%20notice.%0A%0A%0ACreated:%20%2004/22/2005%0AUpdated:%20%2005/24/2005%2012:19%20PM%0ACurrent%20Phase%20is%20Management%20Review%0ADo%20not%20commit%20before:%0A%09Commentary%0A%09Daniel%20Sholler,%20AIM%20and%20Web%20Services%20Portals%0A%09Ray%20Valdes%0ANicholas%20Gall%09%0A%0ATitle%20%20No%20REST%20for%20the%20WS-Weary%0A%0ASummary%20%0A%0AAs%20many%20organizations%20begin%20programs%20to%20develop%20systems%20in%20a%20service-oriented%20manner,%20practitioners%20have%20become%20aware%20of%20the%20architectural%20style%20known%20as%20REST%20%28REpresentational%20State%20Transfer%29.%20This%20style%20strives%20to%20capture%20the%20architectural%20style%20and%20the%20technologies%20%28URL,%20HTTP,%20and%20HTML%29%20that%20successfully%20powered%20the%20World%20Wide%20Web,%20as%20the%20foundation%20of%20service-oriented%20interactions.%20The%20REST%20style%20of%20system-to-system%20interaction%20has%20been%20positioned%20as%20a%20simpler%20alternative%20to%20SOAP,%20WSDL,%20and%20the%20ever%20growing%20set%20of%20specifications%20based%20on%20them%20%28informally%20referred%20to%20as%20WS-*%29.%20The%20REST%20approach%20will%20become%20commonplace%20for%20content-centric%20applications,%20and%20the%20implied%20design%20style%20will%20be%20incorporated%20into%20many%20WS-*%20protocols,%20REST%20is%20not%20and%20will%20not%20be%20a%20replacement%20for%20Web%20Services.%20%0A%0A%0A%0ABody%0AThere%20has%20been%20a%20long-standing%20debate%20among%20members%20of%20the%20technical%20community%20%20regarding%20different%20approaches%20to%20evolving%20the%20World%20Wide%20Web%20%20from%20human-to-system%20interaction%20to%20%20system-to-system%20interaction.%20Over%20the%20past%20four%20years,%20the%20temperature%20of%20the%20debate%20has%20at%20times%20flared%20white-hot%20among%20communities%20such%20as%20the%20W3C%20Technical%20Architecture%20Group,%20and%20in%20related%20email%20lists%20and%20weblogs.%20One%20of%20the%20axes%20of%20this%20debate%20is%20a%20distinction%20between%20proponents%20of%20the%20Web%20Servcies%20model%20%28based%20on%20SOAP%20and%20the%20attendent%20WS-*%20standards%20%28reference%20Charles%27%20note%20on%20WS%20standards%20selection%29%20%29%20and%20advocates%20of%20REST%20%28REpresentational%20State%20Transfer%29,%20who%20believe%20the%20mechanisms%20that%20have%20powered%20the%20human%20to%20system%20model%20%28HTTP%20etc.%20%29%20are%20sufficient%20without%20the%20added%20%22complexity%22%20of%20the%20WS%20protocols.%20The%20debate%20continues%20to%20smolder,%20despite%20regular%20claims%20of%20victory%20by%20both%20sides.%20Although%20vendors%20of%20Web%20services%20platforms%20have%20mostly%20ignored%20REST%20in%20developing%20the%20WS-*%20protocol%20suite,%20REST%27s%20elegance%20and%20simplicity%20continues%20to%20attract%20a%20segment%20of%20Web%20architects.%20REST%20has%20achieved%20enough%20visibility%20that%20it%20is%20being%20discussed%20as%20part%20of%20enterprise%20SOA%20%28Service-Oriented%20Architecture%29%20plans%20among%2010%-15%%20of%20end-user%20organizations%20that%20consult%20Gartner.%20%0AThe%20REST%20debate%20is%20often%20characterized%20as%20a%20clash%20between%20the%20over-complex,%20vendor-dominated%20efforts%20around%20SOAP%20and%20WSDL,%20vs.%20a%20grassroots-based%20%22KISS%22%20approach%20based%20on%20existing%20web%20technology.%20The%20undertones%20of%20political%20ideology%20around%20this%20debate%20has%20at%20times%20obscured%20rational%20discourse,%20but%20while%20there%20are%20serious%20issues%20to%20be%20discussed,%20there%20is%20at%20least%20no%20debate%20about%20the%20endgame,%20which%20is%20to%20develop%20a%20simple,%20standardized%20style%20for%20inter-system%20integration%20within%20the%20enterprise%20and%20over%20the%20Internet.%20%0AThroughout%202005/06,%20this%20debate%20will%20be%20fueled%20by%20the%20increasing%20complexity%20of%20WS-*%20implementations.%20As%20more%20organizations%20attempt%20complex%20service%20interactions%20using%20existing%20Web%20services%20specifications,%20more%20of%20the%20challenging%20issues%20that%20result%20from%20service%20orientation%20and%20distributed%20systems%20in%20general%20will%20confront%20developers.%20Gartner%20has%20seen%20indications%20of%20frustration%20with%20%22WS-Complexity%22%20among%20end-user%20organizations,%20who%20are%20struggling%20to%20understand%20the%20essential%20requirements%20of%20an%20SOA.%20%28reference%20charle%27s%20note%20again%20here?%20%29%20%0ADuring%202006,%20better%20understanding%20will%20be%20acheived%20and%20greater%20agreement%20will%20be%20reached%20on%20several%20of%20the%20issues%20addressed%20by%20the%20REST%20style%20%28in%20particular,%20the%20means%20of%20representing%20state%20and%20the%20proper%20use%20of%20resource%20identifiers,%20e.g.,%20URLs%29.%20By%20early%202007,%20frameworks%20for%20integration%20and%20new%20programming%20models%20will%20further%20simplify%20the%20development%20models%20for%20REST-style%20systems.%20While%20all%20of%20this%20is%20going%20on,%20the%20growing%20popularity%20and%20capabilities%20of%20WS-*%20will%20expand.%20Ultimately,%20the%20concepts%20will%20borrow%20thinking%20from%20each%20other,%20and%20both%20modes%20will%20converge%20into%20a%20common%20style%20of%20integration.%20%0AStrategic%20Planning%20Assumption:%20Organizations%20will%20use%20REST-style%20interfaces%20for%20content-centric%20applications%20%28applications%20whose%20main%20function%20is%20delivering%20content%20of%20any%20type%20to%20a%20consumer%20of%20that%20content%29%20of%20%20through%202008,%20when%20WS%20standards%20and%20protocols%20will%20have%20developed%20a%20de-facto%20profile%20for%20these%20interactions%20that%20is%20functionally%20similar%20to%20REST%20and%20utilizes%20the%20WS-*%20mechanisms.%20%28.9%20probability%29%20%0AOne%20of%20the%20main%20challenges%20when%20discussing%20this%20debate%20is%20the%20fact%20that%20the%20two%20things%20that%20are%20being%20compared%20%28REST%20and%20WS-*%29%20are%20not%20the%20same%20class.%20REST%20is%20a%20somewhat%20vague%20architectural%20style,%20whereas%20WS-*%20is%20a%20specific%20set%20of%20specifications.%20While%20REST%20incorporates%20six%20architectural%20constraints%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1%29,%20the%20key%20one%20is%20the%20insistence%20on%20a%20small%20set%20of%20uniform%20interfaces:%20%22The%20central%20feature%20that%20distinguishes%20the%20REST%20architectural%20style%20from%20other%20network-based%20styles%20is%20its%20emphasis%20on%20a%20uniform%20interface%20between%20components.%22%20%28Quotation%20from%20Roy%20Fieldings%20PhD%20defining%20REST%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_5%29%29%20REST%20proponents%20%28sometimes%20called%20%22RESTifarians%22%29%20claim%20that%20REST%20builds%20upon%20the%20demonstrated%20success%20of%20the%20Web,%20in%20which%20a%20small%20number%20of%20well-known%20verbs%20%28e.g.,%20GET,%20POST,%20PUT,%20DELETE%29%20are%20applied%20to%20a%20potentially%20infinite%20number%20of%20nouns%20%28URLs%29,%20resulting%20in%20an%20architecture%20that%20is%20globally%20scalable%20and%20easily%20composable;%20enabling%20large%20numbers%20of%20otherwise%20uncoordinated%20agents%20to%20interoperate.%20%0AWhile%20this%20is%20a%20compelling%20argument%20when%20it%20comes%20to%20simple%20resources%20such%20as%20web%20pages,%20it%20is%20not%20entirely%20clear%20that%20this%20severe%20restriction%20on%20verbs%20easily%20applies%20to%20complex%20resources%20such%20as%20ERP%20systems.%20Furthermore,%20the%20WS-*%20camp%20has%20responded%20by%20embracing%20this%20key%20REST%20design%20principle%20--%20as%20can%20be%20seen%20in%20specifications%20such%20as%20WS-MetadataExchange%20and%20WS-Transfer.%20%0AOne%20of%20the%20major%20sources%20of%20confusion%20about%20REST%20is%20the%20fact%20that%20some%20use%20the%20term%20as%20equivalent%20to%20simply%20transferring%20XML%20documents%20over%20HTTP%20%28known%20informally%20as%20POX%20-%20Plain%20Old%20XML%20%28http://en.wikipedia.org/wiki/Plain_Old_XML%29%29.%20While%20this%20is%20certainly%20an%20approach%20to%20integration%20that%20follows%20some%20aspects%20of%20the%20REST%20style,%20it%20is%20not%20truly%20%22RESTful%22.%20For%20example,%20the%20REST%20approach%20makes%20a%20distinction%20between%20GET%20and%20POST,%20in%20which%20GET%20is%20used%20to%20retrieve%20information%20without%20side-effects.%20Multiple%20GET%20requests%20to%20the%20same%20resource%20will%20have%20the%20same%20result%20%28known%20in%20computer%20science%20as%20%22idempotence%22%29.%20For%20interactions%20that%20have%20side%20effects,%20POST,%20PUT%20or%20DELETE%20should%20be%20used.%0AAmazon%27s%20Web%20services%20are%20often%20cited%20as%20the%20leading%20example%20of%20the%20successful%20application%20of%20the%20REST%20style%20instead%20of%20WS-*.%20The%20oft-made%20observation%20is%20that,%20while%20Amazon%20offers%20both%20styles%20of%20interfaces%20to%20its%20thousands%20of%20developer%20affiliates,%2085%%20of%20system-to-system%20interactions%20do%20not%20use%20SOAP%20but%20REST.%20These%20are%20reasonable%20examples%20of%20POX%20Web%20services,%20but%20as%20the%20critics%20of%20REST%20point%20out,%20they%20are%20not%20truly%20RESTful%20because%20operations%20such%20as%20CartCreate,%20CartAdd,%20and%20Cartmodify%20violate%20REST%27s%20stateless%20server%20constraint%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_3%29:%20%22Session%20state%20is%20therefore%20kept%20entirely%20on%20the%20client.%22%20Critics%20argue%20that%20although%20RESTs%20basic%20concepts%20are%20simple,%20applying%20them%20rigidly%20can%20create%20its%20own%20complexity%20barriers.%20%0AThe%20primary%20argument%20for%20REST%20is%20based%20on%20its%20resemblence%20to%20the%20familiar%20web%20architectural%20style:%20everything%20is%20accessible%20via%20URLs%20via%20GET%20and%20POST.%20RESTians%20argue%20that%2080%%20of%20what%20WS-*%20attempts%20to%20do%20with%20multiple%20complex%20specifications%20can%20be%20done%20with%20existing%20web%20protocols.%20The%20argument%20continues%20with%20the%20observation%20that%20virtually%20every%20system%20has%20some%20mechanism%20for%20producing%20and%20consuming%20HTTP%20traffic,%20and%20therefore%20does%20not%20require%20new%20tooling,%20new%20protocol%20stacks,%20and%20a%20complex%20network%20of%20intermediaries%20envisioned%20by%20the%20SOAP%20model.%20While%20it%20may%20be%20true%20that%20POX%20suffices%20for%2080%%20of%20the%20read-centric%20and%20content-centric%20Web%20services%20that%20currently%20predominate,%20the%20other%2020%%20would%20require%20extensions%20to%20the%20conventional%20HTTP%20style%20of%20interaction.%20For%20example,%20REST%20does%20not%20support%20an%20EDA%20%28Event%20Driven%20Architecture%29;%20it%20lacks%20a%20robust%20error%20handling%20architecture;%20it%20has%20no%20way%20of%20providing%20varying%20degrees%20of%20QoS.%20The%20REST%20style,%20as%20currently%20implemented%20with%20HTTP%20lacks%20features%20that%20support%20Quality%20of%20Service%20capabilities%20which%20users%20have%20come%20to%20expect%20in%20an%20enterprise%20network,%20and%20which%20are%20being%20extended%20over%20the%20internet%20as%20those%20networks%20are%20extended.%20%0AUsers%20have%20begun%20to%20pay%20attention%20to%20this%20debate,%20and%20there%20is%20no%20question%20that%20for%20content-centric%20applications%20a%20REST%20style%20or%20just%20POX%20will%20continue%20to%20be%20very%20efficient%20and%20effective.%20However,%20the%20momentum%20behind%20SOAP%20is%20such%20that%20it%20will%20be%20the%20dominant%20mode%20of%20interaction%20in%20connections%20where%20the%20community%20is%20well%20known%20%28A2A%29%20or%20reasonably%20well%20bounded%20%28B2B%29.%20%0AConsumer-facing%20applications%20and%20those%20that%20are%20primarily%20content%20retrieval%20will%20use%20POX.%20The%20vocal%20enunciation%20of%20REST%20principles%20will%20oblige%20the%20WS-*%20designers%20to%20continually%20defend%20deviations%20from%20those%20principles%20in%20any%20new%20specifications.%20While%20the%20REST%20style%20will%20grow%20in%20popularity%20for%20that%20large%20category%20of%20services%20whose%20primary%20purpose%20is%20the%20delivery%20of%20content,%20this%20growth%20will%20only%20occur%20in%20fits,%20starts%20and%20inconsistent%20pockets%20%28i.e.,%20POX%20or%20REST-like%20rather%20than%20rigorously%20RESTful%29,%20More%20aggressive%20growth%20will%20require%20the%20REST%20community%20to%20deliver%20a%20coherent,%20prescriptive,%20complete%20and%20detailed%20architecture%20and%20set%20of%20specifications,%20as%20well%20as%20tooling%20that%20the%20average%20developer%20can%20use%20in%20building%20distributed%20systems.%20%0A%0A%0ABottom%20Line%0A%0AREST%20still%20will%20take%20several%20years%20to%20go%20from%20an%20architectural%20style%20into%20a%20fully%20fledged%20integration%20architecture%20and%20set%20of%20protocol%20specifications.%20During%202008/09,%20This%20architecture%20will%20be%20merged%20with%20the%20WS-*%20style%20architecture,%20and%20differences%20will%20be%20hidden%20by%20extensions%20to%20existing%20tools.%20.%20Meanwhile,%20users%20should%20adopt%20a%20REST%20style%20in%20defining%20services%20whose%20function%20is%20content-centric.%20Transaction%20and%20event%20style%20services%20should%20be%20based%20on%20WS-*%20integration%20standards.%20Architects%20of%20existing%20WS-*%20systems%20should%20examine%20their%20design%20to%20see%20if%20a%20basic%20subset%20of%20the%20services%20can%20adopt%20the%20REST%20style%20%28i.e.,%20exposefunctionality%20through%20both%20SOAP%20and%20REST%20interfaces%29%20%20to%20facilitate%20adoption%20among%20small-scale%20client%20developers.%20As%20REST%20principles%20become%20better%20understood%20%28in%20the%202006-2008%20time%20frame%29,%20WS-*%20designers%20and%20users%20will%20embrace%20such%20principles,%20and%20will%20create%20a%20REST-style%20protocol%20for%20content-centric%20interactions%20using%20the%20WS-*%20mechanisms.%20%0A%0A%0A%0A%0A%0ASidebar%0A%0A%0ALast%20Callout%0A%0A%0AAttachments%0A%0A%0AExtended%20Analysis%0A%0A%0AOriginal%20Discussion%20Thread%0A%0A%0AEntire%20contents%20%C3%82%C2%A9%202005%20Gartner,%20Inc.%20All%20rights%20reserved.%20Reproduction%20of%20this%20publication%20in%20any%20form%20without%20prior%20written%20permission%20is%20forbidden.%20The%20information%20contained%20herein%20has%20been%20obtained%20from%20sources%20believed%20to%20be%20reliable.%20Gartner%20disclaims%20all%20warranties%20as%20to%20the%20accuracy,%20completeness%20or%20adequacy%20of%20such%20information.%20Gartner%20shall%20have%20no%20liability%20for%20errors,%20omissions%20or%20inadequacies%20in%20the%20information%20contained%20herein%20or%20for%20interpretations%20thereof.%20The%20reader%20assumes%20sole%20responsibility%20for%20the%20selection%20of%20these%20materials%20to%20achieve%20its%20intended%20results.%20The%20opinions%20expressed%20herein%20are%20subject%20to%20change%20without%20notice.%0A%0A%0ACreated:%20%2004/22/2005%0AUpdated:%20%2005/24/2005%2012:19%20PM%0ACurrent%20Phase%20is%20Management%20Review%0ADo%20not%20commit%20before:%0A%09Commentary%0A%09Daniel%20Sholler,%20AIM%20and%20Web%20Services%20Portals%0A%09Ray%20Valdes%0ANicholas%20Gall%09%0A%0ATitle%20%20No%20REST%20for%20the%20WS-Weary%0A%0ASummary%20%0A%0AAs%20many%20organizations%20begin%20programs%20to%20develop%20systems%20in%20a%20service-oriented%20manner,%20practitioners%20have%20become%20aware%20of%20the%20architectural%20style%20known%20as%20REST%20%28REpresentational%20State%20Transfer%29.%20This%20style%20strives%20to%20capture%20the%20architectural%20style%20and%20the%20technologies%20%28URL,%20HTTP,%20and%20HTML%29%20that%20successfully%20powered%20the%20World%20Wide%20Web,%20as%20the%20foundation%20of%20service-oriented%20interactions.%20The%20REST%20style%20of%20system-to-system%20interaction%20has%20been%20positioned%20as%20a%20simpler%20alternative%20to%20SOAP,%20WSDL,%20and%20the%20ever%20growing%20set%20of%20specifications%20based%20on%20them%20%28informally%20referred%20to%20as%20WS-*%29.%20The%20REST%20approach%20will%20become%20commonplace%20for%20content-centric%20applications,%20and%20the%20implied%20design%20style%20will%20be%20incorporated%20into%20many%20WS-*%20protocols,%20REST%20is%20not%20and%20will%20not%20be%20a%20replacement%20for%20Web%20Services.%20%0A%0A%0A%0ABody%0AThere%20has%20been%20a%20long-standing%20debate%20among%20members%20of%20the%20technical%20community%20%20regarding%20different%20approaches%20to%20evolving%20the%20World%20Wide%20Web%20%20from%20human-to-system%20interaction%20to%20%20system-to-system%20interaction.%20Over%20the%20past%20four%20years,%20the%20temperature%20of%20the%20debate%20has%20at%20times%20flared%20white-hot%20among%20communities%20such%20as%20the%20W3C%20Technical%20Architecture%20Group,%20and%20in%20related%20email%20lists%20and%20weblogs.%20One%20of%20the%20axes%20of%20this%20debate%20is%20a%20distinction%20between%20proponents%20of%20the%20Web%20Servcies%20model%20%28based%20on%20SOAP%20and%20the%20attendent%20WS-*%20standards%20%28reference%20Charles%27%20note%20on%20WS%20standards%20selection%29%20%29%20and%20advocates%20of%20REST%20%28REpresentational%20State%20Transfer%29,%20who%20believe%20the%20mechanisms%20that%20have%20powered%20the%20human%20to%20system%20model%20%28HTTP%20etc.%20%29%20are%20sufficient%20without%20the%20added%20%22complexity%22%20of%20the%20WS%20protocols.%20The%20debate%20continues%20to%20smolder,%20despite%20regular%20claims%20of%20victory%20by%20both%20sides.%20Although%20vendors%20of%20Web%20services%20platforms%20have%20mostly%20ignored%20REST%20in%20developing%20the%20WS-*%20protocol%20suite,%20REST%27s%20elegance%20and%20simplicity%20continues%20to%20attract%20a%20segment%20of%20Web%20architects.%20REST%20has%20achieved%20enough%20visibility%20that%20it%20is%20being%20discussed%20as%20part%20of%20enterprise%20SOA%20%28Service-Oriented%20Architecture%29%20plans%20among%2010%-15%%20of%20end-user%20organizations%20that%20consult%20Gartner.%20%0AThe%20REST%20debate%20is%20often%20characterized%20as%20a%20clash%20between%20the%20over-complex,%20vendor-dominated%20efforts%20around%20SOAP%20and%20WSDL,%20vs.%20a%20grassroots-based%20%22KISS%22%20approach%20based%20on%20existing%20web%20technology.%20The%20undertones%20of%20political%20ideology%20around%20this%20debate%20has%20at%20times%20obscured%20rational%20discourse,%20but%20while%20there%20are%20serious%20issues%20to%20be%20discussed,%20there%20is%20at%20least%20no%20debate%20about%20the%20endgame,%20which%20is%20to%20develop%20a%20simple,%20standardized%20style%20for%20inter-system%20integration%20within%20the%20enterprise%20and%20over%20the%20Internet.%20%0AThroughout%202005/06,%20this%20debate%20will%20be%20fueled%20by%20the%20increasing%20complexity%20of%20WS-*%20implementations.%20As%20more%20organizations%20attempt%20complex%20service%20interactions%20using%20existing%20Web%20services%20specifications,%20more%20of%20the%20challenging%20issues%20that%20result%20from%20service%20orientation%20and%20distributed%20systems%20in%20general%20will%20confront%20developers.%20Gartner%20has%20seen%20indications%20of%20frustration%20with%20%22WS-Complexity%22%20among%20end-user%20organizations,%20who%20are%20struggling%20to%20understand%20the%20essential%20requirements%20of%20an%20SOA.%20%28reference%20charle%27s%20note%20again%20here?%20%29%20%0ADuring%202006,%20better%20understanding%20will%20be%20acheived%20and%20greater%20agreement%20will%20be%20reached%20on%20several%20of%20the%20issues%20addressed%20by%20the%20REST%20style%20%28in%20particular,%20the%20means%20of%20representing%20state%20and%20the%20proper%20use%20of%20resource%20identifiers,%20e.g.,%20URLs%29.%20By%20early%202007,%20frameworks%20for%20integration%20and%20new%20programming%20models%20will%20further%20simplify%20the%20development%20models%20for%20REST-style%20systems.%20While%20all%20of%20this%20is%20going%20on,%20the%20growing%20popularity%20and%20capabilities%20of%20WS-*%20will%20expand.%20Ultimately,%20the%20concepts%20will%20borrow%20thinking%20from%20each%20other,%20and%20both%20modes%20will%20converge%20into%20a%20common%20style%20of%20integration.%20%0AStrategic%20Planning%20Assumption:%20Organizations%20will%20use%20REST-style%20interfaces%20for%20content-centric%20applications%20%28applications%20whose%20main%20function%20is%20delivering%20content%20of%20any%20type%20to%20a%20consumer%20of%20that%20content%29%20of%20%20through%202008,%20when%20WS%20standards%20and%20protocols%20will%20have%20developed%20a%20de-facto%20profile%20for%20these%20interactions%20that%20is%20functionally%20similar%20to%20REST%20and%20utilizes%20the%20WS-*%20mechanisms.%20%28.9%20probability%29%20%0AOne%20of%20the%20main%20challenges%20when%20discussing%20this%20debate%20is%20the%20fact%20that%20the%20two%20things%20that%20are%20being%20compared%20%28REST%20and%20WS-*%29%20are%20not%20the%20same%20class.%20REST%20is%20a%20somewhat%20vague%20architectural%20style,%20whereas%20WS-*%20is%20a%20specific%20set%20of%20specifications.%20While%20REST%20incorporates%20six%20architectural%20constraints%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1%29,%20the%20key%20one%20is%20the%20insistence%20on%20a%20small%20set%20of%20uniform%20interfaces:%20%22The%20central%20feature%20that%20distinguishes%20the%20REST%20architectural%20style%20from%20other%20network-based%20styles%20is%20its%20emphasis%20on%20a%20uniform%20interface%20between%20components.%22%20%28Quotation%20from%20Roy%20Fieldings%20PhD%20defining%20REST%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_5%29%29%20REST%20proponents%20%28sometimes%20called%20%22RESTifarians%22%29%20claim%20that%20REST%20builds%20upon%20the%20demonstrated%20success%20of%20the%20Web,%20in%20which%20a%20small%20number%20of%20well-known%20verbs%20%28e.g.,%20GET,%20POST,%20PUT,%20DELETE%29%20are%20applied%20to%20a%20potentially%20infinite%20number%20of%20nouns%20%28URLs%29,%20resulting%20in%20an%20architecture%20that%20is%20globally%20scalable%20and%20easily%20composable;%20enabling%20large%20numbers%20of%20otherwise%20uncoordinated%20agents%20to%20interoperate.%20%0AWhile%20this%20is%20a%20compelling%20argument%20when%20it%20comes%20to%20simple%20resources%20such%20as%20web%20pages,%20it%20is%20not%20entirely%20clear%20that%20this%20severe%20restriction%20on%20verbs%20easily%20applies%20to%20complex%20resources%20such%20as%20ERP%20systems.%20Furthermore,%20the%20WS-*%20camp%20has%20responded%20by%20embracing%20this%20key%20REST%20design%20principle%20--%20as%20can%20be%20seen%20in%20specifications%20such%20as%20WS-MetadataExchange%20and%20WS-Transfer.%20%0AOne%20of%20the%20major%20sources%20of%20confusion%20about%20REST%20is%20the%20fact%20that%20some%20use%20the%20term%20as%20equivalent%20to%20simply%20transferring%20XML%20documents%20over%20HTTP%20%28known%20informally%20as%20POX%20-%20Plain%20Old%20XML%20%28http://en.wikipedia.org/wiki/Plain_Old_XML%29%29.%20While%20this%20is%20certainly%20an%20approach%20to%20integration%20that%20follows%20some%20aspects%20of%20the%20REST%20style,%20it%20is%20not%20truly%20%22RESTful%22.%20For%20example,%20the%20REST%20approach%20makes%20a%20distinction%20between%20GET%20and%20POST,%20in%20which%20GET%20is%20used%20to%20retrieve%20information%20without%20side-effects.%20Multiple%20GET%20requests%20to%20the%20same%20resource%20will%20have%20the%20same%20result%20%28known%20in%20computer%20science%20as%20%22idempotence%22%29.%20For%20interactions%20that%20have%20side%20effects,%20POST,%20PUT%20or%20DELETE%20should%20be%20used.%0AAmazon%27s%20Web%20services%20are%20often%20cited%20as%20the%20leading%20example%20of%20the%20successful%20application%20of%20the%20REST%20style%20instead%20of%20WS-*.%20The%20oft-made%20observation%20is%20that,%20while%20Amazon%20offers%20both%20styles%20of%20interfaces%20to%20its%20thousands%20of%20developer%20affiliates,%2085%%20of%20system-to-system%20interactions%20do%20not%20use%20SOAP%20but%20REST.%20These%20are%20reasonable%20examples%20of%20POX%20Web%20services,%20but%20as%20the%20critics%20of%20REST%20point%20out,%20they%20are%20not%20truly%20RESTful%20because%20operations%20such%20as%20CartCreate,%20CartAdd,%20and%20Cartmodify%20violate%20REST%27s%20stateless%20server%20constraint%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_3%29:%20%22Session%20state%20is%20therefore%20kept%20entirely%20on%20the%20client.%22%20Critics%20argue%20that%20although%20RESTs%20basic%20concepts%20are%20simple,%20applying%20them%20rigidly%20can%20create%20its%20own%20complexity%20barriers.%20%0AThe%20primary%20argument%20for%20REST%20is%20based%20on%20its%20resemblence%20to%20the%20familiar%20web%20architectural%20style:%20everything%20is%20accessible%20via%20URLs%20via%20GET%20and%20POST.%20RESTians%20argue%20that%2080%%20of%20what%20WS-*%20attempts%20to%20do%20with%20multiple%20complex%20specifications%20can%20be%20done%20with%20existing%20web%20protocols.%20The%20argument%20continues%20with%20the%20observation%20that%20virtually%20every%20system%20has%20some%20mechanism%20for%20producing%20and%20consuming%20HTTP%20traffic,%20and%20therefore%20does%20not%20require%20new%20tooling,%20new%20protocol%20stacks,%20and%20a%20complex%20network%20of%20intermediaries%20envisioned%20by%20the%20SOAP%20model.%20While%20it%20may%20be%20true%20that%20POX%20suffices%20for%2080%%20of%20the%20read-centric%20and%20content-centric%20Web%20services%20that%20currently%20predominate,%20the%20other%2020%%20would%20require%20extensions%20to%20the%20conventional%20HTTP%20style%20of%20interaction.%20For%20example,%20REST%20does%20not%20support%20an%20EDA%20%28Event%20Driven%20Architecture%29;%20it%20lacks%20a%20robust%20error%20handling%20architecture;%20it%20has%20no%20way%20of%20providing%20varying%20degrees%20of%20QoS.%20The%20REST%20style,%20as%20currently%20implemented%20with%20HTTP%20lacks%20features%20that%20support%20Quality%20of%20Service%20capabilities%20which%20users%20have%20come%20to%20expect%20in%20an%20enterprise%20network,%20and%20which%20are%20being%20extended%20over%20the%20internet%20as%20those%20networks%20are%20extended.%20%0AUsers%20have%20begun%20to%20pay%20attention%20to%20this%20debate,%20and%20there%20is%20no%20question%20that%20for%20content-centric%20applications%20a%20REST%20style%20or%20just%20POX%20will%20continue%20to%20be%20very%20efficient%20and%20effective.%20However,%20the%20momentum%20behind%20SOAP%20is%20such%20that%20it%20will%20be%20the%20dominant%20mode%20of%20interaction%20in%20connections%20where%20the%20community%20is%20well%20known%20%28A2A%29%20or%20reasonably%20well%20bounded%20%28B2B%29.%20%0AConsumer-facing%20applications%20and%20those%20that%20are%20primarily%20content%20retrieval%20will%20use%20POX.%20The%20vocal%20enunciation%20of%20REST%20principles%20will%20oblige%20the%20WS-*%20designers%20to%20continually%20defend%20deviations%20from%20those%20principles%20in%20any%20new%20specifications.%20While%20the%20REST%20style%20will%20grow%20in%20popularity%20for%20that%20large%20category%20of%20services%20whose%20primary%20purpose%20is%20the%20delivery%20of%20content,%20this%20growth%20will%20only%20occur%20in%20fits,%20starts%20and%20inconsistent%20pockets%20%28i.e.,%20POX%20or%20REST-like%20rather%20than%20rigorously%20RESTful%29,%20More%20aggressive%20growth%20will%20require%20the%20REST%20community%20to%20deliver%20a%20coherent,%20prescriptive,%20complete%20and%20detailed%20architecture%20and%20set%20of%20specifications,%20as%20well%20as%20tooling%20that%20the%20average%20developer%20can%20use%20in%20building%20distributed%20systems.%20%0A%0A%0ABottom%20Line%0A%0AREST%20still%20will%20take%20several%20years%20to%20go%20from%20an%20architectural%20style%20into%20a%20fully%20fledged%20integration%20architecture%20and%20set%20of%20protocol%20specifications.%20During%202008/09,%20This%20architecture%20will%20be%20merged%20with%20the%20WS-*%20style%20architecture,%20and%20differences%20will%20be%20hidden%20by%20extensions%20to%20existing%20tools.%20.%20Meanwhile,%20users%20should%20adopt%20a%20REST%20style%20in%20defining%20services%20whose%20function%20is%20content-centric.%20Transaction%20and%20event%20style%20services%20should%20be%20based%20on%20WS-*%20integration%20standards.%20Architects%20of%20existing%20WS-*%20systems%20should%20examine%20their%20design%20to%20see%20if%20a%20basic%20subset%20of%20the%20services%20can%20adopt%20the%20REST%20style%20%28i.e.,%20exposefunctionality%20through%20both%20SOAP%20and%20REST%20interfaces%29%20%20to%20facilitate%20adoption%20among%20small-scale%20client%20developers.%20As%20REST%20principles%20become%20better%20understood%20%28in%20the%202006-2008%20time%20frame%29,%20WS-*%20designers%20and%20users%20will%20embrace%20such%20principles,%20and%20will%20create%20a%20REST-style%20protocol%20for%20content-centric%20interactions%20using%20the%20WS-*%20mechanisms.%20%0A%0A%0A%0A%0A%0ASidebar%0A%0A%0ALast%20Callout%0A%0A%0AAttachments%0A%0A%0AExtended%20Analysis%0A%0A%0AOriginal%20Discussion%20Thread%0A%0A%0AEntire%20contents%20%C3%82%C2%A9%202005%20Gartner,%20Inc.%20All%20rights%20reserved.%20Reproduction%20of%20this%20publication%20in%20any%20form%20without%20prior%20written%20permission%20is%20forbidden.%20The%20information%20contained%20herein%20has%20been%20obtained%20from%20sources%20believed%20to%20be%20reliable.%20Gartner%20disclaims%20all%20warranties%20as%20to%20the%20accuracy,%20completeness%20or%20adequacy%20of%20such%20information.%20Gartner%20shall%20have%20no%20liability%20for%20errors,%20omissions%20or%20inadequacies%20in%20the%20information%20contained%20herein%20or%20for%20interpretations%20thereof.%20The%20reader%20assumes%20sole%20responsibility%20for%20the%20selection%20of%20these%20materials%20to%20achieve%20its%20intended%20results.%20The%20opinions%20expressed%20herein%20are%20subject%20to%20change%20without%20notice.%0A%0A%0ACreated:%20%2004/22/2005%0AUpdated:%20%2005/24/2005%2012:19%20PM%0ACurrent%20Phase%20is%20Management%20Review%0ADo%20not%20commit%20before:%0A%09Commentary%0A%09Daniel%20Sholler,%20AIM%20and%20Web%20Services%20Portals%0A%09Ray%20Valdes%0ANicholas%20Gall%09%0A%0ATitle%20%20No%20REST%20for%20the%20WS-Weary%0A%0ASummary%20%0A%0AAs%20many%20organizations%20begin%20programs%20to%20develop%20systems%20in%20a%20service-oriented%20manner,%20practitioners%20have%20become%20aware%20of%20the%20architectural%20style%20known%20as%20REST%20%28REpresentational%20State%20Transfer%29.%20This%20style%20strives%20to%20capture%20the%20architectural%20style%20and%20the%20technologies%20%28URL,%20HTTP,%20and%20HTML%29%20that%20successfully%20powered%20the%20World%20Wide%20Web,%20as%20the%20foundation%20of%20service-oriented%20interactions.%20The%20REST%20style%20of%20system-to-system%20interaction%20has%20been%20positioned%20as%20a%20simpler%20alternative%20to%20SOAP,%20WSDL,%20and%20the%20ever%20growing%20set%20of%20specifications%20based%20on%20them%20%28informally%20referred%20to%20as%20WS-*%29.%20The%20REST%20approach%20will%20become%20commonplace%20for%20content-centric%20applications,%20and%20the%20implied%20design%20style%20will%20be%20incorporated%20into%20many%20WS-*%20protocols,%20REST%20is%20not%20and%20will%20not%20be%20a%20replacement%20for%20Web%20Services.%20%0A%0A%0A%0ABody%0AThere%20has%20been%20a%20long-standing%20debate%20among%20members%20of%20the%20technical%20community%20%20regarding%20different%20approaches%20to%20evolving%20the%20World%20Wide%20Web%20%20from%20human-to-system%20interaction%20to%20%20system-to-system%20interaction.%20Over%20the%20past%20four%20years,%20the%20temperature%20of%20the%20debate%20has%20at%20times%20flared%20white-hot%20among%20communities%20such%20as%20the%20W3C%20Technical%20Architecture%20Group,%20and%20in%20related%20email%20lists%20and%20weblogs.%20One%20of%20the%20axes%20of%20this%20debate%20is%20a%20distinction%20between%20proponents%20of%20the%20Web%20Servcies%20model%20%28based%20on%20SOAP%20and%20the%20attendent%20WS-*%20standards%20%28reference%20Charles%27%20note%20on%20WS%20standards%20selection%29%20%29%20and%20advocates%20of%20REST%20%28REpresentational%20State%20Transfer%29,%20who%20believe%20the%20mechanisms%20that%20have%20powered%20the%20human%20to%20system%20model%20%28HTTP%20etc.%20%29%20are%20sufficient%20without%20the%20added%20%22complexity%22%20of%20the%20WS%20protocols.%20The%20debate%20continues%20to%20smolder,%20despite%20regular%20claims%20of%20victory%20by%20both%20sides.%20Although%20vendors%20of%20Web%20services%20platforms%20have%20mostly%20ignored%20REST%20in%20developing%20the%20WS-*%20protocol%20suite,%20REST%27s%20elegance%20and%20simplicity%20continues%20to%20attract%20a%20segment%20of%20Web%20architects.%20REST%20has%20achieved%20enough%20visibility%20that%20it%20is%20being%20discussed%20as%20part%20of%20enterprise%20SOA%20%28Service-Oriented%20Architecture%29%20plans%20among%2010%-15%%20of%20end-user%20organizations%20that%20consult%20Gartner.%20%0AThe%20REST%20debate%20is%20often%20characterized%20as%20a%20clash%20between%20the%20over-complex,%20vendor-dominated%20efforts%20around%20SOAP%20and%20WSDL,%20vs.%20a%20grassroots-based%20%22KISS%22%20approach%20based%20on%20existing%20web%20technology.%20The%20undertones%20of%20political%20ideology%20around%20this%20debate%20has%20at%20times%20obscured%20rational%20discourse,%20but%20while%20there%20are%20serious%20issues%20to%20be%20discussed,%20there%20is%20at%20least%20no%20debate%20about%20the%20endgame,%20which%20is%20to%20develop%20a%20simple,%20standardized%20style%20for%20inter-system%20integration%20within%20the%20enterprise%20and%20over%20the%20Internet.%20%0AThroughout%202005/06,%20this%20debate%20will%20be%20fueled%20by%20the%20increasing%20complexity%20of%20WS-*%20implementations.%20As%20more%20organizations%20attempt%20complex%20service%20interactions%20using%20existing%20Web%20services%20specifications,%20more%20of%20the%20challenging%20issues%20that%20result%20from%20service%20orientation%20and%20distributed%20systems%20in%20general%20will%20confront%20developers.%20Gartner%20has%20seen%20indications%20of%20frustration%20with%20%22WS-Complexity%22%20among%20end-user%20organizations,%20who%20are%20struggling%20to%20understand%20the%20essential%20requirements%20of%20an%20SOA.%20%28reference%20charle%27s%20note%20again%20here?%20%29%20%0ADuring%202006,%20better%20understanding%20will%20be%20acheived%20and%20greater%20agreement%20will%20be%20reached%20on%20several%20of%20the%20issues%20addressed%20by%20the%20REST%20style%20%28in%20particular,%20the%20means%20of%20representing%20state%20and%20the%20proper%20use%20of%20resource%20identifiers,%20e.g.,%20URLs%29.%20By%20early%202007,%20frameworks%20for%20integration%20and%20new%20programming%20models%20will%20further%20simplify%20the%20development%20models%20for%20REST-style%20systems.%20While%20all%20of%20this%20is%20going%20on,%20the%20growing%20popularity%20and%20capabilities%20of%20WS-*%20will%20expand.%20Ultimately,%20the%20concepts%20will%20borrow%20thinking%20from%20each%20other,%20and%20both%20modes%20will%20converge%20into%20a%20common%20style%20of%20integration.%20%0AStrategic%20Planning%20Assumption:%20Organizations%20will%20use%20REST-style%20interfaces%20for%20content-centric%20applications%20%28applications%20whose%20main%20function%20is%20delivering%20content%20of%20any%20type%20to%20a%20consumer%20of%20that%20content%29%20of%20%20through%202008,%20when%20WS%20standards%20and%20protocols%20will%20have%20developed%20a%20de-facto%20profile%20for%20these%20interactions%20that%20is%20functionally%20similar%20to%20REST%20and%20utilizes%20the%20WS-*%20mechanisms.%20%28.9%20probability%29%20%0AOne%20of%20the%20main%20challenges%20when%20discussing%20this%20debate%20is%20the%20fact%20that%20the%20two%20things%20that%20are%20being%20compared%20%28REST%20and%20WS-*%29%20are%20not%20the%20same%20class.%20REST%20is%20a%20somewhat%20vague%20architectural%20style,%20whereas%20WS-*%20is%20a%20specific%20set%20of%20specifications.%20While%20REST%20incorporates%20six%20architectural%20constraints%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1%29,%20the%20key%20one%20is%20the%20insistence%20on%20a%20small%20set%20of%20uniform%20interfaces:%20%22The%20central%20feature%20that%20distinguishes%20the%20REST%20architectural%20style%20from%20other%20network-based%20styles%20is%20its%20emphasis%20on%20a%20uniform%20interface%20between%20components.%22%20%28Quotation%20from%20Roy%20Fieldings%20PhD%20defining%20REST%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_5%29%29%20REST%20proponents%20%28sometimes%20called%20%22RESTifarians%22%29%20claim%20that%20REST%20builds%20upon%20the%20demonstrated%20success%20of%20the%20Web,%20in%20which%20a%20small%20number%20of%20well-known%20verbs%20%28e.g.,%20GET,%20POST,%20PUT,%20DELETE%29%20are%20applied%20to%20a%20potentially%20infinite%20number%20of%20nouns%20%28URLs%29,%20resulting%20in%20an%20architecture%20that%20is%20globally%20scalable%20and%20easily%20composable;%20enabling%20large%20numbers%20of%20otherwise%20uncoordinated%20agents%20to%20interoperate.%20%0AWhile%20this%20is%20a%20compelling%20argument%20when%20it%20comes%20to%20simple%20resources%20such%20as%20web%20pages,%20it%20is%20not%20entirely%20clear%20that%20this%20severe%20restriction%20on%20verbs%20easily%20applies%20to%20complex%20resources%20such%20as%20ERP%20systems.%20Furthermore,%20the%20WS-*%20camp%20has%20responded%20by%20embracing%20this%20key%20REST%20design%20principle%20--%20as%20can%20be%20seen%20in%20specifications%20such%20as%20WS-MetadataExchange%20and%20WS-Transfer.%20%0AOne%20of%20the%20major%20sources%20of%20confusion%20about%20REST%20is%20the%20fact%20that%20some%20use%20the%20term%20as%20equivalent%20to%20simply%20transferring%20XML%20documents%20over%20HTTP%20%28known%20informally%20as%20POX%20-%20Plain%20Old%20XML%20%28http://en.wikipedia.org/wiki/Plain_Old_XML%29%29.%20While%20this%20is%20certainly%20an%20approach%20to%20integration%20that%20follows%20some%20aspects%20of%20the%20REST%20style,%20it%20is%20not%20truly%20%22RESTful%22.%20For%20example,%20the%20REST%20approach%20makes%20a%20distinction%20between%20GET%20and%20POST,%20in%20which%20GET%20is%20used%20to%20retrieve%20information%20without%20side-effects.%20Multiple%20GET%20requests%20to%20the%20same%20resource%20will%20have%20the%20same%20result%20%28known%20in%20computer%20science%20as%20%22idempotence%22%29.%20For%20interactions%20that%20have%20side%20effects,%20POST,%20PUT%20or%20DELETE%20should%20be%20used.%0AAmazon%27s%20Web%20services%20are%20often%20cited%20as%20the%20leading%20example%20of%20the%20successful%20application%20of%20the%20REST%20style%20instead%20of%20WS-*.%20The%20oft-made%20observation%20is%20that,%20while%20Amazon%20offers%20both%20styles%20of%20interfaces%20to%20its%20thousands%20of%20developer%20affiliates,%2085%%20of%20system-to-system%20interactions%20do%20not%20use%20SOAP%20but%20REST.%20These%20are%20reasonable%20examples%20of%20POX%20Web%20services,%20but%20as%20the%20critics%20of%20REST%20point%20out,%20they%20are%20not%20truly%20RESTful%20because%20operations%20such%20as%20CartCreate,%20CartAdd,%20and%20Cartmodify%20violate%20REST%27s%20stateless%20server%20constraint%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_3%29:%20%22Session%20state%20is%20therefore%20kept%20entirely%20on%20the%20client.%22%20Critics%20argue%20that%20although%20RESTs%20basic%20concepts%20are%20simple,%20applying%20them%20rigidly%20can%20create%20its%20own%20complexity%20barriers.%20%0AThe%20primary%20argument%20for%20REST%20is%20based%20on%20its%20resemblence%20to%20the%20familiar%20web%20architectural%20style:%20everything%20is%20accessible%20via%20URLs%20via%20GET%20and%20POST.%20RESTians%20argue%20that%2080%%20of%20what%20WS-*%20attempts%20to%20do%20with%20multiple%20complex%20specifications%20can%20be%20done%20with%20existing%20web%20protocols.%20The%20argument%20continues%20with%20the%20observation%20that%20virtually%20every%20system%20has%20some%20mechanism%20for%20producing%20and%20consuming%20HTTP%20traffic,%20and%20therefore%20does%20not%20require%20new%20tooling,%20new%20protocol%20stacks,%20and%20a%20complex%20network%20of%20intermediaries%20envisioned%20by%20the%20SOAP%20model.%20While%20it%20may%20be%20true%20that%20POX%20suffices%20for%2080%%20of%20the%20read-centric%20and%20content-centric%20Web%20services%20that%20currently%20predominate,%20the%20other%2020%%20would%20require%20extensions%20to%20the%20conventional%20HTTP%20style%20of%20interaction.%20For%20example,%20REST%20does%20not%20support%20an%20EDA%20%28Event%20Driven%20Architecture%29;%20it%20lacks%20a%20robust%20error%20handling%20architecture;%20it%20has%20no%20way%20of%20providing%20varying%20degrees%20of%20QoS.%20The%20REST%20style,%20as%20currently%20implemented%20with%20HTTP%20lacks%20features%20that%20support%20Quality%20of%20Service%20capabilities%20which%20users%20have%20come%20to%20expect%20in%20an%20enterprise%20network,%20and%20which%20are%20being%20extended%20over%20the%20internet%20as%20those%20networks%20are%20extended.%20%0AUsers%20have%20begun%20to%20pay%20attention%20to%20this%20debate,%20and%20there%20is%20no%20question%20that%20for%20content-centric%20applications%20a%20REST%20style%20or%20just%20POX%20will%20continue%20to%20be%20very%20efficient%20and%20effective.%20However,%20the%20momentum%20behind%20SOAP%20is%20such%20that%20it%20will%20be%20the%20dominant%20mode%20of%20interaction%20in%20connections%20where%20the%20community%20is%20well%20known%20%28A2A%29%20or%20reasonably%20well%20bounded%20%28B2B%29.%20%0AConsumer-facing%20applications%20and%20those%20that%20are%20primarily%20content%20retrieval%20will%20use%20POX.%20The%20vocal%20enunciation%20of%20REST%20principles%20will%20oblige%20the%20WS-*%20designers%20to%20continually%20defend%20deviations%20from%20those%20principles%20in%20any%20new%20specifications.%20While%20the%20REST%20style%20will%20grow%20in%20popularity%20for%20that%20large%20category%20of%20services%20whose%20primary%20purpose%20is%20the%20delivery%20of%20content,%20this%20growth%20will%20only%20occur%20in%20fits,%20starts%20and%20inconsistent%20pockets%20%28i.e.,%20POX%20or%20REST-like%20rather%20than%20rigorously%20RESTful%29,%20More%20aggressive%20growth%20will%20require%20the%20REST%20community%20to%20deliver%20a%20coherent,%20prescriptive,%20complete%20and%20detailed%20architecture%20and%20set%20of%20specifications,%20as%20well%20as%20tooling%20that%20the%20average%20developer%20can%20use%20in%20building%20distributed%20systems.%20%0A%0A%0ABottom%20Line%0A%0AREST%20still%20will%20take%20several%20years%20to%20go%20from%20an%20architectural%20style%20into%20a%20fully%20fledged%20integration%20architecture%20and%20set%20of%20protocol%20specifications.%20During%202008/09,%20This%20architecture%20will%20be%20merged%20with%20the%20WS-*%20style%20architecture,%20and%20differences%20will%20be%20hidden%20by%20extensions%20to%20existing%20tools.%20.%20Meanwhile,%20users%20should%20adopt%20a%20REST%20style%20in%20defining%20services%20whose%20function%20is%20content-centric.%20Transaction%20and%20event%20style%20services%20should%20be%20based%20on%20WS-*%20integration%20standards.%20Architects%20of%20existing%20WS-*%20systems%20should%20examine%20their%20design%20to%20see%20if%20a%20basic%20subset%20of%20the%20services%20can%20adopt%20the%20REST%20style%20%28i.e.,%20exposefunctionality%20through%20both%20SOAP%20and%20REST%20interfaces%29%20%20to%20facilitate%20adoption%20among%20small-scale%20client%20developers.%20As%20REST%20principles%20become%20better%20understood%20%28in%20the%202006-2008%20time%20frame%29,%20WS-*%20designers%20and%20users%20will%20embrace%20such%20principles,%20and%20will%20create%20a%20REST-style%20protocol%20for%20content-centric%20interactions%20using%20the%20WS-*%20mechanisms.%20%0A%0A%0A%0A%0A%0ASidebar%0A%0A%0ALast%20Callout%0A%0A%0AAttachments%0A%0A%0AExtended%20Analysis%0A%0A%0AOriginal%20Discussion%20Thread%0A%0A%0AEntire%20contents%20%C3%82%C2%A9%202005%20Gartner,%20Inc.%20All%20rights%20reserved.%20Reproduction%20of%20this%20publication%20in%20any%20form%20without%20prior%20written%20permission%20is%20forbidden.%20The%20information%20contained%20herein%20has%20been%20obtained%20from%20sources%20believed%20to%20be%20reliable.%20Gartner%20disclaims%20all%20warranties%20as%20to%20the%20accuracy,%20completeness%20or%20adequacy%20of%20such%20information.%20Gartner%20shall%20have%20no%20liability%20for%20errors,%20omissions%20or%20inadequacies%20in%20the%20information%20contained%20herein%20or%20for%20interpretations%20thereof.%20The%20reader%20assumes%20sole%20responsibility%20for%20the%20selection%20of%20these%20materials%20to%20achieve%20its%20intended%20results.%20The%20opinions%20expressed%20herein%20are%20subject%20to%20change%20without%20notice.%0A%0A%0ACreated:%20%2004/22/2005%0AUpdated:%20%2005/24/2005%2012:19%20PM%0ACurrent%20Phase%20is%20Management%20Review%0ADo%20not%20commit%20before:%0A%09Commentary%0A%09Daniel%20Sholler,%20AIM%20and%20Web%20Services%20Portals%0A%09Ray%20Valdes%0ANicholas%20Gall%09%0A%0ATitle%20%20No%20REST%20for%20the%20WS-Weary%0A%0ASummary%20%0A%0AAs%20many%20organizations%20begin%20programs%20to%20develop%20systems%20in%20a%20service-oriented%20manner,%20practitioners%20have%20become%20aware%20of%20the%20architectural%20style%20known%20as%20REST%20%28REpresentational%20State%20Transfer%29.%20This%20style%20strives%20to%20capture%20the%20architectural%20style%20and%20the%20technologies%20%28URL,%20HTTP,%20and%20HTML%29%20that%20successfully%20powered%20the%20World%20Wide%20Web,%20as%20the%20foundation%20of%20service-oriented%20interactions.%20The%20REST%20style%20of%20system-to-system%20interaction%20has%20been%20positioned%20as%20a%20simpler%20alternative%20to%20SOAP,%20WSDL,%20and%20the%20ever%20growing%20set%20of%20specifications%20based%20on%20them%20%28informally%20referred%20to%20as%20WS-*%29.%20The%20REST%20approach%20will%20become%20commonplace%20for%20content-centric%20applications,%20and%20the%20implied%20design%20style%20will%20be%20incorporated%20into%20many%20WS-*%20protocols,%20REST%20is%20not%20and%20will%20not%20be%20a%20replacement%20for%20Web%20Services.%20%0A%0A%0A%0ABody%0AThere%20has%20been%20a%20long-standing%20debate%20among%20members%20of%20the%20technical%20community%20%20regarding%20different%20approaches%20to%20evolving%20the%20World%20Wide%20Web%20%20from%20human-to-system%20interaction%20to%20%20system-to-system%20interaction.%20Over%20the%20past%20four%20years,%20the%20temperature%20of%20the%20debate%20has%20at%20times%20flared%20white-hot%20among%20communities%20such%20as%20the%20W3C%20Technical%20Architecture%20Group,%20and%20in%20related%20email%20lists%20and%20weblogs.%20One%20of%20the%20axes%20of%20this%20debate%20is%20a%20distinction%20between%20proponents%20of%20the%20Web%20Servcies%20model%20%28based%20on%20SOAP%20and%20the%20attendent%20WS-*%20standards%20%28reference%20Charles%27%20note%20on%20WS%20standards%20selection%29%20%29%20and%20advocates%20of%20REST%20%28REpresentational%20State%20Transfer%29,%20who%20believe%20the%20mechanisms%20that%20have%20powered%20the%20human%20to%20system%20model%20%28HTTP%20etc.%20%29%20are%20sufficient%20without%20the%20added%20%22complexity%22%20of%20the%20WS%20protocols.%20The%20debate%20continues%20to%20smolder,%20despite%20regular%20claims%20of%20victory%20by%20both%20sides.%20Although%20vendors%20of%20Web%20services%20platforms%20have%20mostly%20ignored%20REST%20in%20developing%20the%20WS-*%20protocol%20suite,%20REST%27s%20elegance%20and%20simplicity%20continues%20to%20attract%20a%20segment%20of%20Web%20architects.%20REST%20has%20achieved%20enough%20visibility%20that%20it%20is%20being%20discussed%20as%20part%20of%20enterprise%20SOA%20%28Service-Oriented%20Architecture%29%20plans%20among%2010%-15%%20of%20end-user%20organizations%20that%20consult%20Gartner.%20%0AThe%20REST%20debate%20is%20often%20characterized%20as%20a%20clash%20between%20the%20over-complex,%20vendor-dominated%20efforts%20around%20SOAP%20and%20WSDL,%20vs.%20a%20grassroots-based%20%22KISS%22%20approach%20based%20on%20existing%20web%20technology.%20The%20undertones%20of%20political%20ideology%20around%20this%20debate%20has%20at%20times%20obscured%20rational%20discourse,%20but%20while%20there%20are%20serious%20issues%20to%20be%20discussed,%20there%20is%20at%20least%20no%20debate%20about%20the%20endgame,%20which%20is%20to%20develop%20a%20simple,%20standardized%20style%20for%20inter-system%20integration%20within%20the%20enterprise%20and%20over%20the%20Internet.%20%0AThroughout%202005/06,%20this%20debate%20will%20be%20fueled%20by%20the%20increasing%20complexity%20of%20WS-*%20implementations.%20As%20more%20organizations%20attempt%20complex%20service%20interactions%20using%20existing%20Web%20services%20specifications,%20more%20of%20the%20challenging%20issues%20that%20result%20from%20service%20orientation%20and%20distributed%20systems%20in%20general%20will%20confront%20developers.%20Gartner%20has%20seen%20indications%20of%20frustration%20with%20%22WS-Complexity%22%20among%20end-user%20organizations,%20who%20are%20struggling%20to%20understand%20the%20essential%20requirements%20of%20an%20SOA.%20%28reference%20charle%27s%20note%20again%20here?%20%29%20%0ADuring%202006,%20better%20understanding%20will%20be%20acheived%20and%20greater%20agreement%20will%20be%20reached%20on%20several%20of%20the%20issues%20addressed%20by%20the%20REST%20style%20%28in%20particular,%20the%20means%20of%20representing%20state%20and%20the%20proper%20use%20of%20resource%20identifiers,%20e.g.,%20URLs%29.%20By%20early%202007,%20frameworks%20for%20integration%20and%20new%20programming%20models%20will%20further%20simplify%20the%20development%20models%20for%20REST-style%20systems.%20While%20all%20of%20this%20is%20going%20on,%20the%20growing%20popularity%20and%20capabilities%20of%20WS-*%20will%20expand.%20Ultimately,%20the%20concepts%20will%20borrow%20thinking%20from%20each%20other,%20and%20both%20modes%20will%20converge%20into%20a%20common%20style%20of%20integration.%20%0AStrategic%20Planning%20Assumption:%20Organizations%20will%20use%20REST-style%20interfaces%20for%20content-centric%20applications%20%28applications%20whose%20main%20function%20is%20delivering%20content%20of%20any%20type%20to%20a%20consumer%20of%20that%20content%29%20of%20%20through%202008,%20when%20WS%20standards%20and%20protocols%20will%20have%20developed%20a%20de-facto%20profile%20for%20these%20interactions%20that%20is%20functionally%20similar%20to%20REST%20and%20utilizes%20the%20WS-*%20mechanisms.%20%28.9%20probability%29%20%0AOne%20of%20the%20main%20challenges%20when%20discussing%20this%20debate%20is%20the%20fact%20that%20the%20two%20things%20that%20are%20being%20compared%20%28REST%20and%20WS-*%29%20are%20not%20the%20same%20class.%20REST%20is%20a%20somewhat%20vague%20architectural%20style,%20whereas%20WS-*%20is%20a%20specific%20set%20of%20specifications.%20While%20REST%20incorporates%20six%20architectural%20constraints%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1%29,%20the%20key%20one%20is%20the%20insistence%20on%20a%20small%20set%20of%20uniform%20interfaces:%20%22The%20central%20feature%20that%20distinguishes%20the%20REST%20architectural%20style%20from%20other%20network-based%20styles%20is%20its%20emphasis%20on%20a%20uniform%20interface%20between%20components.%22%20%28Quotation%20from%20Roy%20Fieldings%20PhD%20defining%20REST%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_5%29%29%20REST%20proponents%20%28sometimes%20called%20%22RESTifarians%22%29%20claim%20that%20REST%20builds%20upon%20the%20demonstrated%20success%20of%20the%20Web,%20in%20which%20a%20small%20number%20of%20well-known%20verbs%20%28e.g.,%20GET,%20POST,%20PUT,%20DELETE%29%20are%20applied%20to%20a%20potentially%20infinite%20number%20of%20nouns%20%28URLs%29,%20resulting%20in%20an%20architecture%20that%20is%20globally%20scalable%20and%20easily%20composable;%20enabling%20large%20numbers%20of%20otherwise%20uncoordinated%20agents%20to%20interoperate.%20%0AWhile%20this%20is%20a%20compelling%20argument%20when%20it%20comes%20to%20simple%20resources%20such%20as%20web%20pages,%20it%20is%20not%20entirely%20clear%20that%20this%20severe%20restriction%20on%20verbs%20easily%20applies%20to%20complex%20resources%20such%20as%20ERP%20systems.%20Furthermore,%20the%20WS-*%20camp%20has%20responded%20by%20embracing%20this%20key%20REST%20design%20principle%20--%20as%20can%20be%20seen%20in%20specifications%20such%20as%20WS-MetadataExchange%20and%20WS-Transfer.%20%0AOne%20of%20the%20major%20sources%20of%20confusion%20about%20REST%20is%20the%20fact%20that%20some%20use%20the%20term%20as%20equivalent%20to%20simply%20transferring%20XML%20documents%20over%20HTTP%20%28known%20informally%20as%20POX%20-%20Plain%20Old%20XML%20%28http://en.wikipedia.org/wiki/Plain_Old_XML%29%29.%20While%20this%20is%20certainly%20an%20approach%20to%20integration%20that%20follows%20some%20aspects%20of%20the%20REST%20style,%20it%20is%20not%20truly%20%22RESTful%22.%20For%20example,%20the%20REST%20approach%20makes%20a%20distinction%20between%20GET%20and%20POST,%20in%20which%20GET%20is%20used%20to%20retrieve%20information%20without%20side-effects.%20Multiple%20GET%20requests%20to%20the%20same%20resource%20will%20have%20the%20same%20result%20%28known%20in%20computer%20science%20as%20%22idempotence%22%29.%20For%20interactions%20that%20have%20side%20effects,%20POST,%20PUT%20or%20DELETE%20should%20be%20used.%0AAmazon%27s%20Web%20services%20are%20often%20cited%20as%20the%20leading%20example%20of%20the%20successful%20application%20of%20the%20REST%20style%20instead%20of%20WS-*.%20The%20oft-made%20observation%20is%20that,%20while%20Amazon%20offers%20both%20styles%20of%20interfaces%20to%20its%20thousands%20of%20developer%20affiliates,%2085%%20of%20system-to-system%20interactions%20do%20not%20use%20SOAP%20but%20REST.%20These%20are%20reasonable%20examples%20of%20POX%20Web%20services,%20but%20as%20the%20critics%20of%20REST%20point%20out,%20they%20are%20not%20truly%20RESTful%20because%20operations%20such%20as%20CartCreate,%20CartAdd,%20and%20Cartmodify%20violate%20REST%27s%20stateless%20server%20constraint%20%28http://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_3%29:%20%22Session%20state%20is%20therefore%20kept%20entirely%20on%20the%20client.%22%20Critics%20argue%20that%20although%20RESTs%20basic%20concepts%20are%20simple,%20applying%20them%20rigidly%20can%20create%20its%20own%20complexity%20barriers.%20%0AThe%20primary%20argument%20for%20REST%20is%20based%20on%20its%20resemblence%20to%20the%20familiar%20web%20architectural%20style:%20everything%20is%20accessible%20via%20URLs%20via%20GET%20and%20POST.%20RESTians%20argue%20that%2080%%20of%20what%20WS-*%20attempts%20to%20do%20with%20multiple%20complex%20specifications%20can%20be%20done%20with%20existing%20web%20protocols.%20The%20argument%20continues%20with%20the%20observation%20that%20virtually%20every%20system%20has%20some%20mechanism%20for%20producing%20and%20consuming%20HTTP%20traffic,%20and%20therefore%20does%20not%20require%20new%20tooling,%20new%20protocol%20stacks,%20and%20a%20complex%20network%20of%20intermediaries%20envisioned%20by%20the%20SOAP%20model.%20While%20it%20may%20be%20true%20that%20POX%20suffices%20for%2080%%20of%20the%20read-centric%20and%20content-centric%20Web%20services%20that%20currently%20predominate,%20the%20other%2020%%20would%20require%20extensions%20to%20the%20conventional%20HTTP%20style%20of%20interaction.%20For%20example,%20REST%20does%20not%20support%20an%20EDA%20%28Event%20Driven%20Architecture%29;%20it%20lacks%20a%20robust%20error%20handling%20architecture;%20it%20has%20no%20way%20of%20providing%20varying%20degrees%20of%20QoS.%20The%20REST%20style,%20as%20currently%20implemented%20with%20HTTP%20lacks%20features%20that%20support%20Quality%20of%20Service%20capabilities%20which%20users%20have%20come%20to%20expect%20in%20an%20enterprise%20network,%20and%20which%20are%20being%20extended%20over%20the%20internet%20as%20those%20networks%20are%20extended.%20%0AUsers%20have%20begun%20to%20pay%20attention%20to%20this%20debate,%20and%20there%20is%20no%20question%20that%20for%20content-centric%20applications%20a%20REST%20style%20or%20just%20POX%20will%20continue%20to%20be%20very%20efficient%20and%20effective.%20However,%20the%20momentum%20behind%20SOAP%20is%20such%20that%20it%20will%20be%20the%20dominant%20mode%20of%20interaction%20in%20connections%20where%20the%20community%20is%20well%20known%20%28A2A%29%20or%20reasonably%20well%20bounded%20%28B2B%29.%20%0AConsumer-facing%20applications%20and%20those%20that%20are%20primarily%20content%20retrieval%20will%20use%20POX.%20The%20vocal%20enunciation%20of%20REST%20principles%20will%20oblige%20the%20WS-*%20designers%20to%20continually%20defend%20deviations%20from%20those%20principles%20in%20any%20new%20specifications.%20While%20the%20REST%20style%20will%20grow%20in%20popularity%20for%20that%20large%20category%20of%20services%20whose%20primary%20purpose%20is%20the%20delivery%20of%20content,%20this%20growth%20will%20only%20occur%20in%20fits,%20starts%20and%20inconsistent%20pockets%20%28i.e.,%20POX%20or%20REST-like%20rather%20than%20rigorously%20RESTful%29,%20More%20aggressive%20growth%20will%20require%20the%20REST%20community%20to%20deliver%20a%20coherent,%20prescriptive,%20complete%20and%20detailed%20architecture%20and%20set%20of%20specifications,%20as%20well%20as%20tooling%20that%20the%20average%20developer%20can%20use%20in%20building%20distributed%20systems.%20%0A%0A%0ABottom%20Line%0A%0AREST%20still%20will%20take%20several%20years%20to%20go%20from%20an%20architectural%20style%20into%20a%20fully%20fledged%20integration%20architecture%20and%20set%20of%20protocol%20specifications.%20During%202008/09,%20This%20architecture%20will%20be%20merged%20with%20the%20WS-*%20style%20architecture,%20and%20differences%20will%20be%20hidden%20by%20extensions%20to%20existing%20tools.%20.%20Meanwhile,%20users%20should%20adopt%20a%20REST%20style%20in%20defining%20services%20whose%20function%20is%20content-centric.%20Transaction%20and%20event%20style%20services%20should%20be%20based%20on%20WS-*%20integration%20standards.%20Architects%20of%20existing%20WS-*%20systems%20should%20examine%20their%20design%20to%20see%20if%20a%20basic%20subset%20of%20the%20services%20can%20adopt%20the%20REST%20style%20%28i.e.,%20exposefunctionality%20through%20both%20SOAP%20and%20REST%20interfaces%29%20%20to%20facilitate%20adoption%20among%20small-scale%20client%20developers.%20As%20REST%20principles%20become%20better%20understood%20%28in%20the%202006-2008%20time%20frame%29,%20WS-*%20designers%20and%20users%20will%20embrace%20such%20principles,%20and%20will%20create%20a%20REST-style%20protocol%20for%20content-centric%20interactions%20using%20the%20WS-*%20mechanisms.%20%0A%0A%0A%0A%0A%0ASidebar%0A%0A%0ALast%20Callout%0A%0A%0AAttachments%0A%0A%0AExtended%20Analysis%0A%0A%0AOriginal%20Discussion%20Thread%0A%0A%0AEntire%20contents%20%C3%82%C2%A9%202005%20Gartner,%20Inc.%20All%20rights%20reserved.%20Reproduction%20of%20this%20publication%20in%20any%20form%20without%20prior%20written%20permission%20is%20forbidden.%20The%20information%20contained%20herein%20has%20been%20obtained%20from%20sources%20believed%20to%20be%20reliable.%20Gartner%20disclaims%20all%20warranties%20as%20to%20the%20accuracy,%20completeness%20or%20adequacy%20of%20such%20information.%20Gartner%20shall%20have%20no%20liability%20for%20errors,%20omissions%20or%20inadequacies%20in%20the%20information%20contained%20herein%20or%20for%20interpretations%20thereof.%20The%20reader%20assumes%20sole%20responsibility%20for%20the%20selection%20of%20these%20materials%20to%20achieve%20its%20intended%20results.%20The%20opinions%20expressed%20herein%20are%20subject%20to%20change%20without%20notice.%0A%0Ahttp://www.ics.uci.edu/%7Efielding/pubs/dissertation/rest_arch_style.htm#sec_5_1_5&quot;&gt;REST&lt;/a&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;
(&quot;The central feature that distinguishes the REST architectural style
from other network-based styles is its emphasis on a uniform interface
between components&quot;) and &lt;/span&gt;&lt;a style=&quot;font-family: arial;&quot; href=&quot;http://radio.weblogs.com/0126951/2003/08/12.html#a33&quot;&gt;spanning layers&lt;/a&gt;&lt;span style=&quot;font-family: arial;&quot;&gt;, and the really important architectural issues of SOA.&lt;/span&gt;&lt;br style=&quot;font-family: arial;&quot;&gt;
&lt;/font&gt;</description>
			<guid>http://radio.weblogs.com/0126951/categories/serviceOrientedArchitecture/2005/06/01.html#a182</guid>
			<pubDate>Wed, 01 Jun 2005 07:36:48 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=126951&amp;amp;p=182&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0126951%2F2005%2F06%2F01.html%23a182</comments>
			</item>
		<item>
			<title>WS-PaintJob vs. Service Network Architecture.</title>
			<link>http://radio.weblogs.com/0126951/categories/serviceOrientedArchitecture/2005/06/01.html#a181</link>
			<description>&lt;font style=&quot;font-family: arial;&quot; size=&quot;2&quot;&gt;Jeff Schneider at Momentum has a great &lt;a href=&quot;http://schneider.blogspot.com/2005_05_22_schneider_archive.html#111685948516737164&quot;&gt;post about reuse, REACH, and Web services&lt;/a&gt;. I&apos;ll just give you the punch line:&lt;br&gt;&lt;br&gt;&lt;/font&gt;
&lt;div style=&quot;margin-left: 40px; font-family: arial;&quot;&gt;&lt;font size=&quot;2&quot;&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;WS-PaintJobs are an easy way to black box systems and increase reach.
However, the total number of protocol permutations between any given
client and any given service grows exponentially with the size of the
service network. This leads to the realization that a protocol
mediation strategy is not only useful but mandatory.&lt;/span&gt;&lt;br style=&quot;font-style: italic;&quot;&gt;
&lt;/font&gt;
&lt;/div&gt;
&lt;font style=&quot;font-family: arial;&quot; size=&quot;2&quot;&gt;&lt;br&gt;I just love it when I see people highlighting the need for SOAP
intermediaries. Web services is a application NETWORK architecture (or
if you like, a Service Network Architecture), not an application
POINT-TO-POINT architecture.&lt;br&gt;
&lt;br&gt;One other thing I&apos;ll point out while I&apos;m on my SOAPbox, SOA is NOT
about application integration. Wha? SOA is about designing application
protocols that are composable. More on this later.
&lt;/font&gt;</description>
			<guid>http://radio.weblogs.com/0126951/categories/serviceOrientedArchitecture/2005/06/01.html#a181</guid>
			<pubDate>Wed, 01 Jun 2005 06:48:37 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=126951&amp;amp;p=181&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0126951%2F2005%2F06%2F01.html%23a181</comments>
			</item>
		<item>
			<title>SOA insight: interoperability enables evolvability.</title>
			<link>http://radio.weblogs.com/0126951/categories/serviceOrientedArchitecture/2005/03/28.html#a165</link>
			<description>&lt;FONT face=Arial size=2&gt;As I mentioning in a previous post, I&apos;ve been doing a lot of deep thinking about Service-Oriented Architecture recently. Over the past couple of years, I&apos;ve been relentlessly positioning SOA as essentially a set of architectural principles for interoperability. One of the most important interoperability principles is the internetwork principle, which SOA inherited from the Internet: an interoperable network must be designed as a &lt;A href=&quot;http://www.furl.net/item.jsp?id=2442551&quot;&gt;network of (heterogeneous) networks&lt;/A&gt;.&lt;/FONT&gt; 
&lt;P&gt;&lt;FONT face=Arial size=2&gt;But in working with organizations implementing SOA (and its preferred SO- technology, Web services), I&apos;ve noticed that while they achieved dramatic improvements in basic interoperability, as advertised, they failed to achieve dramatic improvements in extensibility. This is ironic, given the central importance of XML, the eXtensible Markup Language, in SO- technologies. So I&apos;ve spent the last six months really thinking hard about extensibility specifically and evolvability generally (or course I&apos;m &lt;B&gt;always&lt;/B&gt; thinking about evolvability).&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;I&apos;ve come up with what I think is a pretty profound insight: &lt;I&gt;&lt;B&gt;interoperability enables evolvability&lt;/B&gt;&lt;/I&gt;. In fact, to push the point, I&apos;d argue that they are two sides of the same coin. Both are very slippery terms, so let&apos;s get specific. Interoperability deals with how different systems interact to form a unified system. Often, the concept is centered on the interaction between offerings from two or more different vendors. For example, if modems from several vendors can interact to communicate, we say they are &lt;I&gt;interoperable&lt;/I&gt;. Interoperability is enabled by a common protocol implemented by multiple vendors.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;But now think about a product from a single vendor as it &lt;I&gt;evolves&lt;/I&gt; from version to version. If the versions need to interact (e.g., communicate directly by some protocol or indirectly by sharing files), then we have what is commonly know as a &lt;I&gt;compatibility&lt;/I&gt; issue (specifically forward and backward compatibility). The crux of my insight is that compatibility and interoperability are merely different aspects of fundamentally the same concept: interaction. Interoperability is focused on the interaction among vendors&apos; products implementing a specific protocol version, while compatibility is focused on the interaction among one vendor&apos;s products implementing different protocol versions (which includes file or document versions).&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;But in both cases we are really dealing with variations (versions) of a common protocol. In both cases, a vendor is modifying its implementation of a protocol to add new behavior, remove old behavior, or change current behavior. If products implementing different versions of a protocol can successfully interact then they are said to be &lt;I&gt;interoperable,&lt;/I&gt; when the products are from different vendors, or &lt;I&gt;compatible&lt;/I&gt; if the products are from one vendor. But despite the different labels, it&apos;s the same concept underlying them.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;To put it succinctly: &lt;U&gt;Compatibility is simply interoperability between old, current, and new versions&lt;/U&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;Accordingly, the better an SOA enables interoperability, the better it should enable compatibility. Of course, the concept of a &lt;A href=&quot;http://radio.weblogs.com/0126951/2003/08/12.html#a33&quot;&gt;spanning layer&lt;/A&gt; (the narrow waist of the hourglass) is key to compatibility as well. If a spanning layer can be used to unify heterogeneous resources in the bottom of the hourglass, such resources can be different because they are from different vendors or because they are different versions from one vendor. Viewed this way, a &lt;A href=&quot;http://docs.sun.com/source/819-0215/loadb.html#wp1036367&quot;&gt;rolling upgrade&lt;/A&gt; (whose formal definition I cannot seem to find on the web) is simply a federation across old, current, and new versions--in principle no different from a federation across systems from different vendors.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;I&apos;ll have a lot more to say about interoperability and compatibility; but for now, just think about it.&lt;/FONT&gt;&lt;/P&gt;</description>
			<guid>http://radio.weblogs.com/0126951/categories/serviceOrientedArchitecture/2005/03/28.html#a165</guid>
			<pubDate>Tue, 29 Mar 2005 03:34:11 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=126951&amp;amp;p=165&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0126951%2F2005%2F03%2F28.html%23a165</comments>
			</item>
		<item>
			<title>The network lasts longer than the computer.</title>
			<link>http://radio.weblogs.com/0126951/categories/serviceOrientedArchitecture/2004/11/13.html#a155</link>
			<description>&lt;font size=&quot;2&quot; face=&quot;Arial&quot;&gt;Just skimmed the recently released &lt;a
href=&quot;http://www.furl.net/item.jsp?id=1272865&quot;&gt;Architecture of the World Wide
Web, First Edition&lt;/a&gt;, which is now a Proposed Recommendation. It is a lot more
complex and opaque than the &lt;a href=&quot;http://www.furl.net/item.jsp?id=1272873&quot;&gt;first
version&lt;/a&gt;, published a little over two years ago. It was the first version
that inspired my definition of &lt;a
href=&quot;http://radio.weblogs.com/0126951/2004/02/18.html#a98&quot;&gt;Service-Oriented
Architecture&lt;/a&gt;, which I repeat here:&lt;/font&gt;
&lt;blockquote&gt;
  &lt;p&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;An SOA is a dynamic, modular, general purpose,
  extensible, federated interoperability architecture that defines all processes
  as services delegated to service providers via generic envelope-based service
  interfaces. Such generic interfaces describe only the interactions between
  service providers and service consumers and s&lt;u&gt;olely in terms of extensible
  identifiers, formats, and protocols (IFaPs)&lt;/u&gt;. Such generic service
  interfaces are intended to be dynamically bound to a diverse array of specific
  concrete service transport technologies and endpoint service provider
  technologies that are both federated by envelope-processing service
  intermediaries. [emphasis added]&lt;/font&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;Here is the original definition of the WWW
Architecture from the first version:&lt;/font&gt;&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;The World Wide Web (or, Web) is a networked
  information system consisting of agents (programs acting on behalf of another
  person, entity, or process) that exchange information.&lt;br&gt;
  &lt;br&gt;
  This architecture consists of:&lt;br&gt;
  1. Identifiers. A single specification to identify objects in the system: the
  Uniform Resource Identifier (URI) [RFC2396].&lt;br&gt;
  2. Formats. A nonexclusive set of data format specifications designed for
  interchange between agents in the system. This includes several data formats
  used in isolation or in combination (e.g., XHTML, CSS, PNG, XLink, RDF, SMIL
  animation), as well as technologies for designing new data formats (XML, XML
  Namespaces).&lt;br&gt;
  3. Protocols. A small and nonexclusive set of protocol specifications for
  interchanging information between agents, including HTTP [RFC2616], SMTP, and
  others. Several of these protocols share a reliance on the Internet Media Type
  (or, &amp;quot;MIME&amp;quot;) the metadata/packaging system [RFC2046].&lt;/font&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;The current &amp;quot;definition&amp;quot; is not nearly
so definitive, especially concerning IFaPs:&lt;/font&gt;&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;The World Wide Web (WWW, or simply Web) is an
  information space in which the items of interest, referred to as resources,
  are identified by global identifiers called Uniform Resource Identifiers
  (URI).&lt;/font&gt;&lt;/p&gt;
  &lt;p&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;Examples such as the following travel scenario
  are used throughout this document to illustrate typical behavior of Web
  agents...&lt;/font&gt;&lt;/p&gt;
  &lt;p&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;This scenario illustrates the three
  architectural bases of the Web that are discussed in this document:&lt;br&gt;
  &lt;br&gt;
  1. Identification (&amp;#167;2). URIs are used to identify resources. In this travel
  scenario, the resource is a periodically updated report on the weather in
  Oaxaca, and the URI is &amp;#147;&lt;a href=&quot;http://weather.example.com/oaxaca&amp;#148;&quot;&gt;http://weather.example.com/oaxaca&amp;#148;&lt;/a&gt;.&lt;br&gt;
  &lt;br&gt;
  2. Interaction (&amp;#167;3). Web agents communicate using standardized protocols that
  enable interaction through the exchange of messages which adhere to a defined
  syntax and semantics. By entering a URI into a retrieval dialog or selecting a
  hypertext link, Nadia tells her browser to perform a retrieval action for the
  resource identified by the URI. In this example, the browser sends an HTTP GET
  request (part of the HTTP protocol) to the server at
  &amp;quot;weather.example.com&amp;quot;, via TCP/IP port 80, and the server sends back
  a message containing what it determines to be a representation of the resource
  as of the time that representation was generated. Note that this example is
  specific to hypertext browsing of information&amp;#151;other kinds of interaction are
  possible, both within browsers and through the use of other types of Web
  agent; our example is intended to illustrate one common interaction, not
  define the range of possible interactions or limit the ways in which agents
  might use the Web.&lt;br&gt;
  &lt;br&gt;
  3. Formats (&amp;#167;4). Most protocols used for representation retrieval and/or
  submission make use of a sequence of one or more messages, which taken
  together contain a payload of representation data and metadata, to transfer
  the representation between agents. The choice of interaction protocol places
  limits on the formats of representation data and metadata that can be
  transmitted. HTTP, for example, typically transmits a single octet stream plus
  metadata, and uses the &amp;quot;Content-Type&amp;quot; and
  &amp;quot;Content-Encoding&amp;quot; header fields to further identify the format of
  the representation. In this scenario, the representation transferred is in
  XHTML, as identified by the &amp;quot;Content-type&amp;quot; HTTP header field
  containing the registered Internet media type name,
  &amp;quot;application/xhtml+xml&amp;quot;. That Internet media type name indicates
  that the representation data can be processed according to the XHTML
  specification.&lt;/font&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;As you can see, &lt;i&gt;protocol&lt;/i&gt; was replaced by &lt;i&gt;interaction&lt;/i&gt;,
which is fine. But the IFaP point that was so clearly made in the first version
is now relegated to a comment at the end of the Intro section:&lt;/font&gt;&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;In the remainder of this document, we highlight
  important architectural points regarding Web &lt;u&gt;identifiers, protocols, and
  formats&lt;/u&gt;. We also discuss some important general architectural principles (&amp;#167;5)
  and how they apply to the Web. [emphasis added]&lt;/font&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;However, the latest draft absolutely nails an
essential point about the longevity of network IFaP architectures vs. software
architectures, that I&apos;ve been making for quite a while:&lt;/font&gt;&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;5.4. Protocol-based Interoperability&lt;br&gt;
  &lt;br&gt;
  The Web follows Internet tradition in that its important interfaces are
  defined in terms of protocols, by specifying the syntax, semantics, and
  sequencing constraints of the messages interchanged. Protocols designed to be
  resilient in the face of widely varying environments have helped the Web scale
  and have facilitated communication across multiple trust boundaries.
  Traditional application programming interfaces (APIs) do not always take these
  constraints into account, nor should they be required to. &lt;u&gt;One effect of
  protocol-based design is that the technology shared among agents often lasts
  longer than the agents themselves.&lt;/u&gt; [emphasis added]&lt;/font&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;Hence, the title of this post: &lt;/font&gt;&lt;font
size=&quot;2&quot; face=&quot;Arial&quot;&gt;&lt;i&gt;The network lasts longer than the computer&lt;/i&gt;. You can
be sure I&apos;ll be quoting &lt;/font&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;&amp;#167;5.4 and my pithier
version quite a bit from here on.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face=&quot;Arial&quot; size=&quot;2&quot;&gt;I&apos;ll probably have further comments when I&apos;ve
read the draft in detail.&lt;/font&gt;&lt;/p&gt;
</description>
			<guid>http://radio.weblogs.com/0126951/categories/serviceOrientedArchitecture/2004/11/13.html#a155</guid>
			<pubDate>Sat, 13 Nov 2004 04:01:13 GMT</pubDate>
			<comments>http://radiocomments2.userland.com/comments?u=126951&amp;amp;p=155&amp;amp;link=http%3A%2F%2Fradio.weblogs.com%2F0126951%2F2004%2F11%2F13.html%23a155</comments>
			</item>
		</channel>
	</rss>
