Home. 
.

transparent

transparent

transparent

Altova Mailing List Archives


Re: [xml-dev] RESTful XML for updates?

From: John Kemp <john.kemp@-----.--->
To: "ext Scott, Christopher" <christopher.scott@------.--->
Date: 3/9/2009 3:32:00 PM
You might post the same questions to the 'rest-discuss' list which is  
more focussed on these types of issues. That said, my comments below:

On Mar 9, 2009, at 10:53 AM, ext Scott, Christopher wrote:

> Thanks for the responses.  It seems that the consensus is that if a
> resource is partially updateable, the updateable parts should be their
> own resource.  That seems elegant and RESTful.  Thus we're left with
> something like:
>
> <Widget>
>  <Id>0FAB7894C</Id>
>  <CreatedDate>2009-03-05</CreatedDate>
>  <State href="./State">INSPECTED</State>
>  <Color href="./Blue">Blue</Color>
>  <Whatsists>
>    <Whatsist href="./Whatsist/1002"/>
>    <Whatsist href="./Whatsist/1002"/>
>  </Whatsists>
> </Widget>
>
> Even so, that leaves me with two questions:
>
> 1. Take, for instance, the State element and the Whatsists.  How would
> the client know if you could POST to the "State", but not PUT, and  
> only
> GET and PUT "Whatsists"?  The server would return a 405 when something
> isn't allowed, but I still feel as though the client should be able to
> know this information before making another request.

As you mentioned yourself, the OPTIONS method would be one way. You  
could also use a metadata format such as WADL (or in theory WSDL 2.0)  
and create metadata resources linked to your data resources. A client  
would need to retrieve metadata before it could "know" anything about  
the data.

I'll just note that some people do not "believe" in the need for  
metadata in RESTful systems.

[...]

> 2. It would seem that for large partially-updateable resources, this
> would increase the amount of HTTP traffic over, say, a single update
> document.

That's true.

>  Furthermore, if keep-alive isn't used, then there is a
> significant connection overhead.  For me, however, this isn't a big  
> deal
> because my resources aren't that huge, but this design could impact
> scalability.  Some sort of container POST with separated documents, as
> postulated in the article linked by Peter could be an OK solution to
> this.

Indeed, your design will be affected by constraints, such as network  
latency and bandwidth. Only you can decide what the constraints worth  
paying attention to are, and thus, the design that will work best  
within those constraints. Your answers are likely at least as good as  
anyone else's, but Fielding's thesis [1] on the design of networked  
software architectures might provide a good starting point, if your  
domain is roughly 'the Web'.

Regards,

- johnk

[1] http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm

> ~Chris
>
> _______________________________________________________________________
>
> XML-DEV is a publicly archived, unmoderated list hosted by OASIS
> to support XML implementation and development. To minimize
> spam in the archives, you must subscribe before posting.
>
> [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
> Or unsubscribe: xml-dev-unsubscribe@l...
> subscribe: xml-dev-subscribe@l...
> List archive: http://lists.xml.org/archives/xml-dev/
> List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
>


_______________________________________________________________________

XML-DEV is a publicly archived, unmoderated list hosted by OASIS
to support XML implementation and development. To minimize
spam in the archives, you must subscribe before posting.

[Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
Or unsubscribe: xml-dev-unsubscribe@l...
subscribe: xml-dev-subscribe@l...
List archive: http://lists.xml.org/archives/xml-dev/
List Guidelines: http://www.oasis-open.org/maillists/guidelines.php



transparent
Print
Mail
Like It
Disclaimer
.

These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on www.altova.com/list/index.html. Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.

.
.

transparent

transparent