Subject: Re: Optional Backpointers from Targets to References

From: "Bruce Cragun" <[email-masked]>
Date: Wed, 23 Sep 1998 09:47:37 -0600

Use DASL just to discover references to a resource?  Depending on what you are using the backpointers for, that could put quite a load on your system.  And I would think the performance would negate its value.  The beauty of storing backpointers is that they are FAST, DIRECT, and EASY TO MAINTAIN.

>>> "Roy T. Fielding" <[email-masked]> 09/18 7:41 PM >>>
I doubt that unrestricted backpointers to collection parents will be
implementable on general web servers, but I have no objection to defining
an optional backpointer property provided that it is also mentioned that
such a property is not a very good way to implement scalable systems.
I would expect any system that implemented such a thing would restrict
the backpointers to references within the same object repository
(whatever serves as the server backend).

The same functionality can be accomplished via a DASL query, regardless
of how the server backend works, which has the advantage of specifying
the scope of the query.  So, I don't think directly specifying
a property to hold that information should imply that the property is
maintained live.  OTOH, I'm not sure how the response to such a DASL
query would look like (i.e., if it would need DAV:references itself).

....Roy

---

From: "Roy T. Fielding" <[email-masked]>
Date: Wed, 23 Sep 1998 12:13:25 -0700

>Use DASL just to discover references to a resource?  Depending on what you are
>using the backpointers for, that could put quite a load on your system.  And 
>I would think the performance would negate its value.  The beauty of storing
>backpointers is that they are FAST, DIRECT, and EASY TO MAINTAIN.

Depending on their usage. I don't use backpointers for anything, and thus
a DASL search is always more efficient.  Likewise, a WebDAV client has no
direct need for backpointers other than as a means for information discovery,
which is also more efficiently performed and scoped by a search query than
via a PROPFIND request.  How that is implemented on the server side is
none of our business.

The uses that you gave for backpointers in your system are only relevant
for behind-the-server-curtains types of operations.  That's all fine and
good, but you don't need a DAV property to do that, nor do you need any
extra client-to-server interoperability.

I don't particularly care whether a backpointer property is defined
or not, just so long as people understand that it isn't necessary.

....Roy