Home >Online Product Documentation >Table of Contents >Mapping Nodes in Sample Files
Mapping Nodes in Sample Files
This topic is part of a sequence that starts with Opening the XSLT Mapper.
To define links and examine the stylesheet Stylus Studio creates:
1. In the Mapper tab, expand the tree for both
You can display an entire tree using the asterisk key (*) on your keyboard's number pad.
books.xml, place the pointer over the
book repeating element.
3. Press and hold the left mouse button, and drag from
book to the
Book repeating element in
Stylus Studio draws a line as you drag.
4. Release the mouse button to create the link between
Stylus Studio creates an
xsl:for-each block that links the
Book repeating elements. (If you mouse over the block,
xsl:for-each appears in a pop-up to indicate the XSLT operation represented by the link.)
If you prefer, you can render
xsl:for-each as a simple line. You might want to do this to simplify the appearance of the mapper canvas. Select Tools > Options from the menu, and then navigate to Module Settings > XSLT Editor > Mapper.
Figure 31. xsl:for-each Block Displayed by the XSLT Mapper
Also notice that the complete
xsl:for-each instruction has been added to the XSLT source, which appears in the XSLT source pane under the XSLT Mapper canvas. The back-mapping pointer identifies the line of XSLT that was just added to stylesheet.
The template contains an
xsl:for-each instruction that selects the
book element, which is the node you selected in step 2. The output from this template is an empty
Book element, which is the node that was the target of the link. Stylus Studio created the
Catalog element automatically, to provide the document structure necessary to support the
By default, Stylus Studio creates an
xsl:value-of instruction when you link one element to another; Stylus Studio creates an
xsl:for-each instruction if you link two repeating elements. You can also create other types of instructions graphically, including
5. Click the Params/Other tab.
In the Output method: field, display the drop-down list and select xml. (Even if the setting for Output method is unspecified, Stylus Studio still generates XML.) Other choices for the output method include text and HTML.
6. Click the Mapper tab.
xsl:output instruction is added to the XSLT source:
7. Create another link from the title element to the Title element.
When you map, you always map from the source document to the destination document.
8. Click the XSLT Source tab to see the new instructions in the template. (If you prefer, you can simply adjust the splitter between the XSLT source pane and the XSLT Mapper canvas.
Figure 32. Stylus Studio Builds XSLT Based on the Mapper Links
For each link you define, Stylus Studio adds instructions to the template that matches the root node. In the XSLT you have composed so far, the XSLT inserts a
Book element for each
book element it finds in the source document. In the
Book element, the stylesheet selects the
title elements. For each
title element, it inserts a
Title element. Finally, in each
Title element, the stylesheet extracts the value of the current context node, which is the
Why does the stylesheet extract the value of the
title nodes but not the
book nodes? The
title node has only a text node as its child. In this situation, the default is that the XSLT Mapper inserts an