W3C home > Mailing lists > Public > ietf-dav-versioning@w3.org > July to September 2002

RE: expand-property report, exapnding version-controlled-binding- set ?

From: Clemm, Geoff <gclemm@rational.com>
Date: Wed, 31 Jul 2002 15:35:05 -0400
Message-ID: <3906C56A7BD1F54593344C05BD1374B10783911F@SUS-MA1IT01>
To: ietf-dav-versioning@w3.org

Just wanted to confirm that I agree with Julian on this thread, i.e.
you can use the DAV:expand-property report to expand DAV:href
elements that are nested arbitarily deeply in the property value,
in particular, to expand the version history DAV:href elements
in the DAV:version-controlled-binding-set.

Cheers,
Geoff

-----Original Message-----
From: Julian Reschke [mailto:julian.reschke@greenbytes.de]
Sent: Wednesday, July 31, 2002 1:01 PM
To: Zivkov, Sasa; ietf-dav-versioning@w3.org
Subject: RE: expand-property report, exapnding
version-controlled-binding- set ?



> > From: Reschke, Julian
> > Sent: Mittwoch, 31. Juli 2002 18:25
> > To: Zivkov, Sasa; ietf-dav-versioning@w3.org
> > Subject: RE: expand-property report, exapnding
> > version-controlled-binding- set ?
> >
> >
> > > > > Hi,
> > > > >
> > > > > The rfc3253 says:
> > > > >
> > > > >    Many property values are defined as a DAV:href, or a set
> > > of DAV:href
> > > > >    elements.  The DAV:expand-property report provides a
> mechanism for
> > > > >    retrieving in one request the properties from the resources
> > > > >    identified by those DAV:href elements.  ...
> > > > >
> > > > > Since DAV:version-controlled-binding-set is list of
> > > > > (binding-name, version-history)
> > > > > elements and not list of hrefs it seems to me that it is not
> > > possible to
> > > > > further expand this property.  For example the next request tries
> > > > > to expand
> > > > > version-controlled-binding-set:
> > > > >
> > > > >      REPORT /foo.html HTTP/1.1
> > > > >      Host: www.webdav.org
> > > > >      Content-Type: text/xml; charset="utf-8"
> > > > >      Content-Length: xxxx
> > > > >
> > > > >      <?xml version="1.0" encoding="utf-8" ?>
> > > > >      <D:expand-property xmlns:D="DAV:">
> > > > >        <D:property name="version-controlled-binding-set">
> > > > >          <D:property name="version-history">
> > > > >            <D:property name="creator-displayname"/>
> > > > >          </D:property>
> > > > >        </D:property>
> > > > >      </D:expand-property>
> > > > >
> > > > > But, since members of version-controlled-binding-set are not
> > > > > href's (and they
> > > > > are not resources) we can not further expand this property.
> > > > >
> > > > > Is this correct ?
> > > >
> > > > The embedded version-history element has the href-format, so
> > > you should be
> > > > able to do:
> > > >
> > > >      <?xml version="1.0" encoding="utf-8" ?>
> > > >      <D:expand-property xmlns:D="DAV:">
> > > >        <D:property name="version-controlled-binding-set">
> > > >          <D:property name="creator-displayname"/>
> > > >        </D:property>
> > > >      </D:expand-property>
> > > >
> > > > (if what you're after is the DAV:creator-displayname of the version
> > > > history).
> > >
> > > version-controlled-binding-set members are
> version-controlled-binding's
> > > and version-controlled-binding is even not a resource so we can not
> > > ask it for its properties (creator-displayname is this case).
> >
> > As you said, version-controlled-bindings consists of binding-name
> > version-history. version-history has href format, so you *can*
> expand that
> > if you want to.
>
> An example:
> <version-controlled-binding-set>
>
>    <version-controlled-binding>
>       <binding-name>abc</binding-name>
>       <version-history><href>/vh11</href></version-history>
>    </version-controlled-binding>
>
>    <version-controlled-binding>
>       <binding-name>def</binding-name>
>       <version-history><href>/vh12</href></version-history>
>    </version-controlled-binding>
>    ...
> </version-controlled-binding-set>
>
> So the version-history is at the second level after
> version-controlled-binding-set.
> And the members of version-controlled-binding-set are not
> DAV:href's but elements
> that contain href's.
> Again from rfc3253:
>    Many property values are defined as a DAV:href, or a set of DAV:href
>    elements.  The DAV:expand-property report provides a mechanism for
>    retrieving in one request the properties from the resources
>    identified by those DAV:href elements.  ...

And it goes on saying:

"... If there are DAV:property elements nested within a DAV:property
element, then every DAV:href in the value of the corresponding property is
replaced by a DAV:response element whose DAV:prop elements report the values
of the properties identified by the nested DAV:property elements. The nested
DAV:property elements can in turn contain DAV:property elements, so that
multiple levels of DAV:href expansion can be requested."

When I implemented the expand-property report I asked this question here
([1]), and the answer was: all href elements must be expanded, independant
of the nesting, including dead properties.

[1]
<http://lists.w3.org/Archives/Public/ietf-dav-versioning/2002JanMar/thread.h
tml#187>
Received on Wednesday, 31 July 2002 15:35:38 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 8 January 2008 13:57:43 GMT