Marcelo's WebLog

Improving the world one entity at a time (now tweeting on @mlrdev)

Updates to URL syntax for December CTP of ADO.NET Data Services

Updates to URL syntax for December CTP of ADO.NET Data Services

  • Comments 8

This post talks a bit about updates from the last post on the URI format.

In that post, we discussed how we were considering having a "full form" and a "compressed form" for syntax. With the convergence of using ATOM and JSON as the serialization formats, we’ve been able to converge on the URI format as well and thus we no longer have both forms - we simply have the resource set name and a comma-separated list of key values in parents: /Customers('ALFKI')

The use of parens for values is a classic CSV-style design: a character to separate (,); a character to delimit the values so you can include the separator in them ('Lopez Ruiz, Marcelo','another string'), and a convention to double the delimiter to use it ('Marcelo''s World','Party time! Excellent!').

There are other types that don't really require delimiters, like dates, but because they come in handy when used in expressions on the query side of the string (after the '?'), we've kept them in the key portion as well. This way client libraries only need to deal with a single format. If this doesn't make much sense, wait a bit and I'll go into it in a post in the near future.

Everything else works pretty much as described in the post - feel free to post here or in the forums if you have any questions or want to provide feedback on this.

This post is part of the transparent design exercise in the Astoria Team. To understand how it works and how your feedback will be used please look at this post.

  • Honest opinion?  That is some GHETTO syntax.  That syntax is beating a round peg in a square hole.

    Now, because I'm not on your payroll I'm going to give you the full answer to your problem.  However, I'll give you a hint.  You need oridination within your schema's metadata,. I'll even drop another hint: ordination (read:metadata) that can be versioned.

    I wrote something similar (though probably not as extensive as Astoria) using WCF, RDF and SQL Server - I am in process of refactoring for SimpleDb.

  • Pingback from http://oakleafblog.blogspot.com/2008/01/linq-and-entity-framework-posts-for.html

  • Let's say that we have a data service exposing all of Northwind. We can get all customers in the database

  • Let's say that we have a data service exposing all of Northwind. We can get all customers in the

  • We made few tweaks to our URI syntax to clean it up in the last CTP of ADO.NET Data Services. Marcelo

  • Michael Sync has written a sample using the new Astoria Silverlight client library. David Hayden posted

  • Michael Sync has written a sample using the new Astoria Silverlight client library. David Hayden posted

  • There are a whole bunch of interesting posts / stuff I find on the net that I bookmark on del.icio.us

Page 1 of 1 (8 items)