Consider the construction of a publication
node, which has a single
book
node as source context. The context-propagator of the
title
child location should not
select all title
nodes found in the source document, but a particular
title
– the one which is child of the particular book
providing the source context of the publication
. The requirement
captures a semantic relationship between the
publication
and title
nodes under construction. If
target node P and target node C have a certain semantic relationship R (here: C
gives the title of P), then the source context of P and the source context of C
should have the same semantic relationship R (the source context of C should give
the title of the source context of P). Mapping alignments to navigations (thus: SAAT
to SNAT) means selecting those instances of an alignment which have a particular
semantic relationship with the source context of the parent instance. The semantic
relationship is implicit - implied by a structural relationship, the parent-child
relationship defined as part of the target document model.
As the semantic relationship guiding navigation is implicit, implied by a structural relationship between target nodes (parent-child), it must also be derived from a structural relationship between sources nodes. So we have arrived at the general question: how is the semantic relationship pertaining to a particular parent-child pair in the target document model translated into a structural relationship connecting source nodes, more precisely: leading from the source context of the parent node to a subset of the source alignment of the child location?
We start by considering a particular case for which an intuitive solution is
easily found. Let P and C denote two target locations, where C represents child
nodes of P. (Example: P = publication
, C = title
). Assume
that the alignment of C is a child location of the alignment of P. (Example:
alignment of P: book
, alignment of C: title
.) Then we may
expect the parent-child relationship defined by the target document model to have
similar semantics as the parent-child relationship between their alignments, as
defined by the source document model. (Example: the child gives the title of the
parent.) So we set up a first, preliminary rule: “if the alignments of parent and
child locations are themselves parent and child locations, then set the
context-propagator of the target child location to select all instances of the
source child location which are child nodes of the source context of the parent
node.” In our example, this rule would yield the desired result: the source context
of the target title
would be the child node of the source node serving
as the source context of the target publication
node.
Parent-child relationships are often modified by the insertion of intermediate nodes providing some sort of grouping. Therefore we might generalize our preliminary rule to select all instances of the target child locations’s alignment which are descendant of the target parent node’s souce context. While this will cover many cases, this is a far cry from a general solution, as hierarchical relationships need not be preserved by the transformation. As an example, consider target documents focusing on authors and describing publications as child elements of the node representing an author