Re: Link relations between revisions of documents

It looks like your case is a specialized case of a problem I've been
working on lately.

Like you, I have XML documents in publications. The publications have a
semi-regular revision cycle, and the documents within them are revised
as needed. Thus, any particular revision of a publication may contain
documents at various revision levels (each in their own, independent
revision series).

I'm not concerned with links like "next", "previous", and "up". I have
to deal with arbitrary cross-references to locations in other documents
(same or different publication). When the target document is revised,
the link from the source document to the target must not be replaced,
but "extended" to reflect not only the original link, but also an
additional link from the source location to the revised (new) target
location. When browsing the collection, the user will in some contexts
need to be directed to the original target, and in other cases to the
new target. Thus, we have "synchronic" links (those that navigate
between contemporaneous publication versions), and "diachronic" links
(those that navigate between publications from different dates).

I suspect the XLink [1] linking model will work for this, but I haven't
worked out the details. XLink separates the notions of locators, links,
and link traversal, and also provides the concept of "Extended Link"
containing many locators and arcs. So you should be able to capture all
the necessary information for run-time or publication-time resolution of
link behavior. The XLink XML model goes over into RDF fairly easily,
although there does not appear to be a standard RDF vocabulary for
xlink.

Regards,
--Paul

[1] http://www.w3.org/TR/xlink11/


On Sat, 2015-08-29 at 15:37 -0700, Austin William Wright wrote:
> I've come across a problem trying to make it easy to revision
> documents that have link relations to each other. I keep document
> which embed fairly standard link relations like "up", "tag" and
> "collection". These documents are stored in a database alongside
> metadata, revisioning link relations like "predecessor-version".
> 
> 
> So the links from one document might look something like this:
> { ex:foo3 iana:predecessor-version ex:foo2 ; iana:up ex:top . }
> 
> 
> But what about the resource containing the previous, now-outdated
> document? { ex:foo2 predecessor-version ex:foo1 ; up ex:top . }
> 
> 
> Both these documents are saying that "up" is pointing to the same
> document, which might be correct. Suppose I use these link relations
> to build a directory listing, then my listing will contain old
> versions of documents that I don't want to include. How do I avoid
> this?
> 
> 
> How do you revision documents in practice?
> 
> 
> Austin Wright.

Received on Sunday, 30 August 2015 13:49:52 UTC