Subject: Lost with links ...

From: "Viktor Lioutyi" <[email-masked]>
Date: Fri, 26 Nov 1999 16:42:14 -0500

In our project we want to support persistency of our meta-data in a repository,
based on WebDAV.
We'd like to avoid fine-grain repositories because there is no a product of this
type, running
on different platforms. We'd like to use different WebDAV servers depending on
our
requirements and to protect ourselves from their differences via WebDAV
protocol.

We found that the following services from WebDAV are crucial for us:
- naming service, properties, etc. (the whole WebDAV level-2)
- versioning (Delta-V)
- query service (DASL)
- transactions
- relationships

In WebDAV level-2 there is something called links.

In RFC2518 links are defined in paragraph 4.6 "Media Independent Links"

"A WebDAV link is a special type of property value, formally defined in section
12.4, that allows
typed connections to be established between resources of any media type."

From 12.4 "Link XML Element"

<!ELEMENT link (src+, dst+) >
<!ELEMENT dst (#PCDATA) >
<!ELEMENT src (#PCDATA) >

We suppose that these links are the closest notion in WebDAV that may be used to
map relationships between models,
but there are a lot of questions in respect to Delta-V and DASL.

1) Does a link include version information for "src" and "dsc" or "src" and
"dst" will be resolved in a context of a workspace?
2) Can I get part of the whole link back as result of a DASL query?
     For example, I'd like to know all destinations for particular source for
particular kind of a link.
3) Is there any intention to provide special operations for links?
     For example, I'd like to modify link. Is it required to download the whole
link, change, then save or
     may I do incremental modifications (add/remove pairs (src, dst) from a link
without downloading it)?

Thanks,
Viktor

---

From: "Geoffrey Clemm" <[email-masked]>
Date: Sun, 28 Nov 1999 14:04:32 -0500

From: Viktor Lioutyi <[email-masked]>
> "dst" will be resolved in a context of a workspace?

I believe that the intent was for the src and dst of a link to be a URL.
This URL could be:
- a specific revision (in which case no versioning resolution
is required)
- a specific versioned resource (in which case either a
workspace or a revision-id could be used to resolve the URL to a
particular working resource or revision of the versioned resource)
- a versioned resource that is identified by performing version
selection on the versioned collections identified by prefixes of
the URL (in which case a workspace must be used to resolve
the URL to a particular working resource or revision).

Cheers,
Geoff