A minor correction:
When the above transformation is applied on your source.xml (corrected to
be
well-formed!):
[wrong xml (one of the stylesheets was pasted here by mistake) snipped]
Below is the original (corrected) xml document:
<RDF xmlns:r="http://www.w3.org/TR/RDF/"
xmlns:d="http://purl.org/dc/elements/1.0/">
<Node r:id="Root">
<num> 1</num>
<d:Title> Root</d:Title>
<link r:resource="Root/a"></link>
<link r:resource="Root/b"></link>
<link r:resource="Root/c"></link>
</Node>
<Node r:id="Root/a">
<num> 2</num>
<d:Title> a</d:Title>
<link r:resource="Root/a/d"></link>
<link r:resource="Root/a/e"></link>
</Node>
<Node r:id="Root/b">
<num> 3</num>
<d:Title> b</d:Title>
<link r:resource="Root/b/g"></link>
<crosslink r:resource="f:Root/a/e"/>
</Node>
<Node r:id="Root/c">
<num> 4</num>
<d:Title> c</d:Title>
<crosslink r:resource="h:Root/b/g"/>
</Node>
<Node r:id="Root/a/d">
<num> 5</num>
<d:Title> d</d:Title>
</Node>
<Node r:id="Root/a/e">
<num> 6</num>
<d:Title> e</d:Title>
</Node>
<Node r:id="Root/b/g">
<num> 7</num>
<d:Title> g</d:Title>
</Node>
</RDF>
the wanted result is produced:
a d
a e
b f
b g
c h
Hope this helped.
Cheers,
Dimitre Novatchev
FXSL developer,
http://fxsl.sourceforge.net/ -- the home of FXSL
Resume: http://fxsl.sf.net/DNovatchev/Resume/Res.html
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list