Versioning, responses to comments on our document

As Kenji noted, there are a number of predictable relationships between
versions. In particular there are contraints (version graphs can be no more
unrestricted than DAGs no matter how flexible the system).

Like variants (e.g by language, encoding format, etc.) versions relate many
particular forms (specialized URLs) of a single document (generic URL) that
represents a piece of intellectual content.

However, versions are an independent dimension from e.g. langauge variants
or format variants.

Scenario: Many language variants of one document. Each language variant has
a separate revision tree, since typos must be corrected by hand, and thus
the revision tree of the variants differs from that of the whole document.
However, there is a meaningful sense to "most recent version of revision
1.2 of the document", it just happens to be "mydoc, version 1.2, Spanish
rev 1.3"

Scenario: Many data formats fro one XML document. One single version tree
refers to the history of the XML document. Variants in delivery formats are
available in PDF, HTML, Postscript, Nroff output, etc. These variants are
accessible by content negotiation only, and do NOT have separate URLs.

The point is that version information is a relation, but that it is
orthogonal to other dimensions.

I think the arguments against making versioning "just another random
variation" relate to the following points:

1. Despite a great deal of variety, there are lots of common meaningful
semantics for versions as opposed to other forms of variation.

2. Editing applications must have access to at least some of this
information to offer meaningful editing, locking, browsing, and
user-interface features.

3. There is great potential value in being able to transmit, query, and
update the differences between _versions_ of documents, whereas there is no
such value in doing these operations on arbitrary axes of variation such as
target audience, encoding type, or natural language.

4. While some special media types (like text/* and application/XML) may
pragmatically deserve special acomoddation given their place in many
editorial processes, _any_ data type can accomodate operations like those
in point 3. since it can somehow be reduced to a sequence of octets, which
can then be compared, etc.

5. link endpoint propogation between versions of resources linked via
independent separately stored links requires access to low-level difference
information as in 3. These features should be acomodated by DAV, even
though they are unliekly to be required.

Whether or not typed relationships are used to represent versions for DAV
queries doesn't change the fact that DAV operations will affect these
version relations and that editors and servers will need special knowledge
about these relations (as they may not for language for media variants).

The issues of comparison and link-endpoint progation can be quite
significant. At least some editing methods (Such as the one I am doing my
thesis research on, and the one implemented by the CVS version system)
would be able to take significant advantage of the ability to transmit
changes rather than whole states of changing resources.

Sp without taking a position on whether the current DAV spec (which I'v not
read) provides suffcient representational muscle for versions, I do believe
that special semantics and server/client information exchanges are required
to handle versioning properly.

As I understand the goals of DAV, we are trying to define a lingua franca
to support interoperable versioning, not just an infrastructure that could
be applied to create a support mechanism (but that can't guarantee
interoperability, because it neither provides versioning operations, nor
specifies versioning related behavior, nor allows negotiation of
versioning-related policy).

In other words, the _semantics_ of versioning is squarely in this group's
mission.

   -- David

_________________________________________
David Durand              dgd@cs.bu.edu  \  david@dynamicDiagrams.com
Boston University Computer Science        \  Sr. Analyst
http://www.cs.bu.edu/students/grads/dgd/   \  Dynamic Diagrams
--------------------------------------------\  http://www.dynamicDiagrams.com/
MAPA: mapping for the WWW                    \__________________________

Received on Friday, 29 May 1998 16:36:59 UTC