[Home] [By Thread] [By Date] [Recent Entries]

  • To: Marc de Graauw <marc@m...>
  • Subject: Re: What Does SOAP/WS Do that A REST System Can't?
  • From: Joe Gregorio <joe.gregorio@g...>
  • Date: Tue, 5 Apr 2005 09:33:16 -0400
  • Cc: "Bullard, Claude L (Len)" <len.bullard@i...>, xml-dev@l...
  • Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:references; b=SkTi1lLSd798DwAQvbGr+Vg+Pwe008Vt7sMFwpclSawMMobaR12VWbJx/H9gp0qfXeLc4NZgK0enlL3iPq6cK04DkRCjuVJCpsWbfE0jam42wGPSW6G9Ei1/jkmHHR1554O8heOp5YETkPxfsoONkcMKvpsHQIuWEmNXAcYpbEY=
  • In-reply-to: <200504051139.j35BdXDR050954@s...>
  • References: <15725CF6AFE2F34DB8A5B4770B7334EE07206D57@h...> <200504051139.j35BdXDR050954@s...>
  • Reply-to: Joe Gregorio <joe.gregorio@g...>

On Apr 5, 2005 7:39 AM, Marc de Graauw <marc@m...> wrote:
> I've got an actual project I wasn't able to do with REST in a satisfactory
> way (although I would have liked to).
> 
> I have been writing a SOAP/WSDL specification for HL7v3 messages for the
> Dutch Health Authority.
> 
> Those HL7v3 messages are in XML, and derived from older (v2) non-XML
> formats, so the messages themselves have a quite venerable age. As an
> example, an important class of messages is query/response. An example I've
> been working on is a query with (among others) a patient id, which gets a
> response with all medication that has been prescribed to this patient. In
> HL7v3 the queries themselves have a lot of elements. With SOAP this is not
> much of a problem: both the query and response are XML messages. With REST I
> have the following options:
> - Use GET, and translate the query to a URI. Now I have two different
> formats for query and response, and an awful long and hard-to-read URI.
> - Use POST to send the XML query and fetch the XML response. This is not
> very RESTful, since the patient's medication history in the response is
> naturally a resource, and GET is the RESTful way to retrieve a resource. (If
> I follow this solution, I would end up using POST for all or almost all
> HL7v3 interactions. If I add an envelope and headers, I've almost got SOAP
> over HTTP.)

POST is perfectly appropriate for such large queries. If you wanted to 
do that query multiple times then you can create a new URI 
while handling the POST and return that URI with the results. That newly
created URI would allow you to do a GET to perform the same query 
as the inital POST. 

   -joe

-- 
Joe Gregorio        http://bitworking.org

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member