Strong/Weak References

I am trying to tease out what we really mean with referential integrity and
the strong/weak distinction.

What I proposed would be that "weak" references are really just location
references. They are so weak they don't really have any relation to the
target resource.

From this I derived resource references as what we are calling "strong"
references. They have a strong connection to the specific resource.

This is what I came up with when I fleshed out the two axis we are working
with.

_ redirect location reference _
	This is a resource that contains a target URL. Clients are required
to fetch this URL from the reference to operate on the target. All methods
operate on the reference. The target may or may not exist. Servers MUST
support this. Its not much of an ask since it is virtually indistinguishable
from a normal resource with a "dead" location property and a redirect body.

_ direct location reference _
	This is a reference that "looks like" the resource at the target
URL. All methods except MOVE, COPY and DELETE operate as if they were
performed on the target URL. This is server optional and also has security
implications.

_ redirect resource reference _
	This is a resource that refers to a specific target resource.
Clients are required to fetch the current URL of the target resource to
operate on it. All methods operate on the reference. The target resource
must exist, the reference MUST be updated when the target moves. If the
server is unable to locate (or loses track of) the target then the reference
reverts to a _redirect location reference_

_ direct resource reference _
	This is a resource that "looks like" a specific target resource. All
methods except MOVE, COPY and DELETE operate as if they were performed on
the target resource. (whatever its current URL might be) The target resource
must exist, the reference MUST be updated when the target moves. If the
server is unable to locate (or loses track of) the target then the reference
reverts to a _direct location reference_

Marcus.

Received on Thursday, 8 October 1998 13:48:04 UTC