Re: Data Model, as seen from WebDAV

  In CalWS

http://www.calconnect.org/pubdocs/CD1011%20CalWS-Rest%20Restful%20Web%20Services%20Protocol%20for%20Calendaring%20V1.0.pdf

we exposed properties and relations using XRD

http://docs.oasis-open.org/xri/xrd/v1.0/xrd-1.0.html

which allows a GET with using ACCEPT to specify the xrd object

There's currently no way to specify which properties are desired.

> In WebDAV, properties are not exposed as HTTP resources (*), instead 
> the special HTTP method PROPFIND is used. Thus, collisions between 
> properties and children of a resource are no concern: a folder could 
> have both a child resource "foobar" and a property "foobar".
>
> (*) Yes, that's one of the big issues with the WebDAV approach; but 
> maybe we can fix this by exposing WebDAV properties over HTTP GET in 
> the future.
>
> In JCR, the same space of names is used for resources and properties, 
> thus once the name of a child resource and a property collide, it 
> depends on the type of API which one you'll get. This is something we 
> need to avoid.
>
> [[ Note: XPath uses a path-like syntax to address both elements and 
> attributes, but easily works around this because @ is not valid in 
> element names; similarly, it takes advantage of other reserved 
> characters such as "(" and ")" to disambiguate between function and 
> element names ]]
>
> In David's JSOP slides, we see examples similar to:
>
> var collection1 = {
>
>   "createdby" : "user1",
>
>   "child1" : {
>
>     "createdby" : "user2"
>
>   },
>
>   "child2" : {
>
>     "createdby" : "user3"
>
>   }
> };
>
> That has the same problem as JCR; member names and property names can 
> collide.
>
> I think we'll need to disambiguate by introducing intermediary objects 
> such as "props" and "members", or even model the collection 
> containment using a reserved property name.
>
> Best regards, Julian
>
>

-- 

Mike Douglass                           douglm@rpi.edu
Senior Systems Programmer
Communication&  Collaboration Technologies      518 276 6780(voice) 2809
(fax)
Rensselaer Polytechnic Institute 110 8th Street, Troy, NY 12180

Received on Monday, 20 September 2010 15:54:42 UTC