<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: SOAP vs. REST</title>
	<atom:link href="http://spf13.com/post/soap-vs-rest/feed" rel="self" type="application/rss+xml" />
	<link>http://spf13.com/post/soap-vs-rest</link>
	<description></description>
	<lastBuildDate>Wed, 16 May 2012 09:39:00 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
	<item>
		<title>By: Anonymous</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-461</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Wed, 02 May 2012 16:13:00 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-461</guid>
		<description>This post has delivered a consistently steady trickle of links to my blog (&quot;Why SOAP sucks&quot;) over the past two years. I assume people search Google for &quot;SOAP vs REST&quot;, get sent here, then read far enough to click the links. I&#039;m a little surprised this topic is so popular.

My own opinion is SOAP has no purpose in the world now except as a legacy technology. XML is wrong; use JSON. And the SOAP efforts at packaging communications are a failure. You&#039;re quite polite in highlighting the advanced WS-* features as being useful for solving problems. I think they are good attempts, but I wouldn&#039;t trust either the design or implementation of any of them for anything important.</description>
		<content:encoded><![CDATA[<p>This post has delivered a consistently steady trickle of links to my blog (&#8220;Why SOAP sucks&#8221;) over the past two years. I assume people search Google for &#8220;SOAP vs REST&#8221;, get sent here, then read far enough to click the links. I&#8217;m a little surprised this topic is so popular.</p>
<p>My own opinion is SOAP has no purpose in the world now except as a legacy technology. XML is wrong; use JSON. And the SOAP efforts at packaging communications are a failure. You&#8217;re quite polite in highlighting the advanced WS-* features as being useful for solving problems. I think they are good attempts, but I wouldn&#8217;t trust either the design or implementation of any of them for anything important.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: SOAP vs REST &#124; DLS Software Studios</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-450</link>
		<dc:creator>SOAP vs REST &#124; DLS Software Studios</dc:creator>
		<pubDate>Mon, 09 Apr 2012 12:39:25 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-450</guid>
		<description>[...] Interested in reading more? Check out his article at SFP13.com. [...]</description>
		<content:encoded><![CDATA[<p>[...] Interested in reading more? Check out his article at SFP13.com. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: adel kraiem</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-426</link>
		<dc:creator>adel kraiem</dc:creator>
		<pubDate>Tue, 28 Feb 2012 10:09:00 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-426</guid>
		<description>Great Blog. Thx </description>
		<content:encoded><![CDATA[<p>Great Blog. Thx</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: adel kraiem</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-427</link>
		<dc:creator>adel kraiem</dc:creator>
		<pubDate>Tue, 28 Feb 2012 10:09:00 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-427</guid>
		<description>Great Blog.; Thx  </description>
		<content:encoded><![CDATA[<p>Great Blog.; Thx </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: SOAP Webservices mit iOS &#124; codecentric Blog</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-390</link>
		<dc:creator>SOAP Webservices mit iOS &#124; codecentric Blog</dc:creator>
		<pubDate>Mon, 02 Jan 2012 08:20:40 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-390</guid>
		<description>[...] Techniken grundsätzlich überhaupt verglichen werden sollten – damit haben sich andere bereits ausreichend [...]</description>
		<content:encoded><![CDATA[<p>[...] Techniken grundsätzlich überhaupt verglichen werden sollten – damit haben sich andere bereits ausreichend [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: SOAP web services with iOS &#124; codecentric Blog</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-389</link>
		<dc:creator>SOAP web services with iOS &#124; codecentric Blog</dc:creator>
		<pubDate>Mon, 02 Jan 2012 05:03:35 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-389</guid>
		<description>[...] of REST and SOAP or a discussion of whether they should be compared at all &#8211; others have done that at great depth [...]</description>
		<content:encoded><![CDATA[<p>[...] of REST and SOAP or a discussion of whether they should be compared at all &#8211; others have done that at great depth [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tasman Hayes</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-376</link>
		<dc:creator>Tasman Hayes</dc:creator>
		<pubDate>Wed, 30 Nov 2011 07:25:00 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-376</guid>
		<description>I&#039;ve used SOAP from a website to a web coupon published to pull coupons. It worked great.

I&#039;ve also used SOAP between a web app (PHP) and billing app (MS Basic) to push orders and pull back billing amounts. It works well for this app too.

SOAP can work really well. I&#039;ve had no issues with it.

Reading your article and &quot;Why Soap Sucks?&quot; as well certainly gave me pause.  :-)

SOAP hint: Cache the service definition (WSDL) for performance if you&#039;re doing a high volume of calls. This is configurable in PHP&#039;s SOAP implementation.

</description>
		<content:encoded><![CDATA[<p>I&#8217;ve used SOAP from a website to a web coupon published to pull coupons. It worked great.</p>
<p>I&#8217;ve also used SOAP between a web app (PHP) and billing app (MS Basic) to push orders and pull back billing amounts. It works well for this app too.</p>
<p>SOAP can work really well. I&#8217;ve had no issues with it.</p>
<p>Reading your article and &#8220;Why Soap Sucks?&#8221; as well certainly gave me pause.  <img src='http://spf13.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>SOAP hint: Cache the service definition (WSDL) for performance if you&#8217;re doing a high volume of calls. This is configurable in PHP&#8217;s SOAP implementation.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: When to use SOAP over REST &#124; www.dotnetz.net</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-370</link>
		<dc:creator>When to use SOAP over REST &#124; www.dotnetz.net</dc:creator>
		<pubDate>Tue, 22 Nov 2011 03:32:24 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-370</guid>
		<description>[...] Francia, S. (2010). SOAP vs. REST. Retrieved 11 20, 2011, from spf13: http://spf13.com/post/soap-vs-rest [...]</description>
		<content:encoded><![CDATA[<p>[...] Francia, S. (2010). SOAP vs. REST. Retrieved 11 20, 2011, from spf13: <a href="http://spf13.com/post/soap-vs-rest" rel="nofollow">http://spf13.com/post/soap-vs-rest</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: E S</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-345</link>
		<dc:creator>E S</dc:creator>
		<pubDate>Fri, 14 Oct 2011 22:29:00 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-345</guid>
		<description>A good summary of some important points, but I don&#039;t know that I really agree that the web doesn&#039;t care much about ACID transactions. Many applications do things that require ACID transactions such as updating multiple items at once, moving items from one group to another, or cascading deletes. And web applications are just applications like any other so why should that factor in? Maybe you can explain further regarding what parts of ACID don&#039;t apply to the web?</description>
		<content:encoded><![CDATA[<p>A good summary of some important points, but I don&#8217;t know that I really agree that the web doesn&#8217;t care much about ACID transactions. Many applications do things that require ACID transactions such as updating multiple items at once, moving items from one group to another, or cascading deletes. And web applications are just applications like any other so why should that factor in? Maybe you can explain further regarding what parts of ACID don&#8217;t apply to the web?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: SOAP vs REST &#187; Tech Blog</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-332</link>
		<dc:creator>SOAP vs REST &#187; Tech Blog</dc:creator>
		<pubDate>Fri, 30 Sep 2011 12:41:12 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-332</guid>
		<description>[...] http://spf13.com/post/soap-vs-rest    Posted by shahprashant at 4:41 am [...]</description>
		<content:encoded><![CDATA[<p>[...] <a href="http://spf13.com/post/soap-vs-rest" rel="nofollow">http://spf13.com/post/soap-vs-rest</a>    Posted by shahprashant at 4:41 am [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Igory Lr</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-313</link>
		<dc:creator>Igory Lr</dc:creator>
		<pubDate>Wed, 27 Jul 2011 19:51:00 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-313</guid>
		<description>I case of &quot;methods vs. resources&quot; REST also wins. Just encode method calls to URIs. You have the benefit of not being tied to XML. Sure you can transfer anything in XML too but you need to encode/decode it to/from base64.</description>
		<content:encoded><![CDATA[<p>I case of &#8220;methods vs. resources&#8221; REST also wins. Just encode method calls to URIs. You have the benefit of not being tied to XML. Sure you can transfer anything in XML too but you need to encode/decode it to/from base64.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bryan Taylor</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-217</link>
		<dc:creator>Bryan Taylor</dc:creator>
		<pubDate>Sat, 02 Apr 2011 07:26:00 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-217</guid>
		<description>WS-ReliableMessaging guarantees only reliable transport, not reliable application processing and thus is unsuitable for reliable messaging. To see why WS-RM simply fails to achieve reliable messaging, see http://www.infoq.com/articles/no-reliable-messaging. The RESTful way to do reliable messaging is to use idempotency. Either use GET until the subsequent processing succeeds as defined by the client, or use PUT followed by a verification GET until both work.  Generally, the first solution is much better, because recievers are much better positioned to be responsible for reliable delivery. Atom with archiving demonstrates good reliable delivery.

WS-AtomicTransactions. Distributed transactions are an antipattern. Ban them. If eBay can make payments between accounts at their auction site and paypal without them, so can you. Distributed transactions destroy your scalability, and they force you to give up either availability or network fault tolerance (CAP theorem). Use compensating transactions instead. If you need consistency, define a single source of truth and do ACID transactions within it.

WS-Security. This protocol is about achieving end-to-end security by using encryption and cryptographic signing to assure that messages may pass through intermediaries of lower trust without fear of tampering or disclosure. A better way to do this is to create an encrypted transport channel all the way from one endpoint to the other. This is called SSL. If you had to, you could make your representations contain encrypted and/or signed content using your favorite technologies for this. Only a middleware vendor would see any value in coupling this to your transport mechanism, though.</description>
		<content:encoded><![CDATA[<p>WS-ReliableMessaging guarantees only reliable transport, not reliable application processing and thus is unsuitable for reliable messaging. To see why WS-RM simply fails to achieve reliable messaging, see <a href="http://www.infoq.com/articles/no-reliable-messaging" rel="nofollow">http://www.infoq.com/articles/no-reliable-messaging</a>. The RESTful way to do reliable messaging is to use idempotency. Either use GET until the subsequent processing succeeds as defined by the client, or use PUT followed by a verification GET until both work.  Generally, the first solution is much better, because recievers are much better positioned to be responsible for reliable delivery. Atom with archiving demonstrates good reliable delivery.</p>
<p>WS-AtomicTransactions. Distributed transactions are an antipattern. Ban them. If eBay can make payments between accounts at their auction site and paypal without them, so can you. Distributed transactions destroy your scalability, and they force you to give up either availability or network fault tolerance (CAP theorem). Use compensating transactions instead. If you need consistency, define a single source of truth and do ACID transactions within it.</p>
<p>WS-Security. This protocol is about achieving end-to-end security by using encryption and cryptographic signing to assure that messages may pass through intermediaries of lower trust without fear of tampering or disclosure. A better way to do this is to create an encrypted transport channel all the way from one endpoint to the other. This is called SSL. If you had to, you could make your representations contain encrypted and/or signed content using your favorite technologies for this. Only a middleware vendor would see any value in coupling this to your transport mechanism, though.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-216</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Fri, 01 Apr 2011 16:29:00 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-216</guid>
		<description>I&#039;m not convinced by your &quot;financial transactions require SOAP&quot; argument. Here is my counter argument: how is it that I do financial transactions (as millions of other people do) using my bank website from my web browser, without the help from SOAP and all the WS technologies you mention?</description>
		<content:encoded><![CDATA[<p>I&#8217;m not convinced by your &#8220;financial transactions require SOAP&#8221; argument. Here is my counter argument: how is it that I do financial transactions (as millions of other people do) using my bank website from my web browser, without the help from SOAP and all the WS technologies you mention?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-215</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Fri, 01 Apr 2011 16:20:00 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-215</guid>
		<description>REST/HTTP has a defined interface: it is the HTTP spec. You&#039;ll find the definitions of methods, status code and so on. Conent exchanged over HTTP requests/responses isusualy  either specified in additional standard ocuments (i.e., XHTML, ATOM, etc.) or in your own doc (e.g., XML schema, etc.)</description>
		<content:encoded><![CDATA[<p>REST/HTTP has a defined interface: it is the HTTP spec. You&#8217;ll find the definitions of methods, status code and so on. Conent exchanged over HTTP requests/responses isusualy  either specified in additional standard ocuments (i.e., XHTML, ATOM, etc.) or in your own doc (e.g., XML schema, etc.)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://spf13.com/post/soap-vs-rest#comment-214</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Fri, 01 Apr 2011 08:16:00 +0000</pubDate>
		<guid isPermaLink="false">http://localhost/~sfrancia/wordpress/?p=121#comment-214</guid>
		<description>Point for SOAP: There is a defined interface included (as WSDL)  and any client can use it without problems while updating the service. The usage of a REST interface is described mostly on a wiki page.

Point for REST: No problems with incompatibility with different SOAP-client/server.

But you got the other point: SOAP address methods, REST address resources.</description>
		<content:encoded><![CDATA[<p>Point for SOAP: There is a defined interface included (as WSDL)  and any client can use it without problems while updating the service. The usage of a REST interface is described mostly on a wiki page.</p>
<p>Point for REST: No problems with incompatibility with different SOAP-client/server.</p>
<p>But you got the other point: SOAP address methods, REST address resources.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

