Subject:existing xslt, source and destination xsds - how to show GUI mapping Author:Mark Boulton Date:11 Jun 2008 06:40 PM
Hi,
I am evaluating SS to see if it meets the needs of my project in being able to view XSLT effects on XSDs.
Background:
I have source and destination xsd files and an xslt file mapping the two together. These files were all sent to us by an external party.
When load all three files into SS, the Mapper GUI only shows the portion of the xslt that corresponds to the destination xsd. It appears, as well, that when an xsl:call-template in the xslt calls a method from a referenced file (one that was loaded by SS into the Other Documents folder when the "master" xsl was placed in the project) then the GUI connection lines from the referenced file did not show up on the destination file structure - although it appears that it knows they are there since a red checkmark appears by the elements in question.
The source file is referenced as an x-path reference along the lines of
<xsl:call-template name="transform_X">
<xsl:with-param name="paramX"
select="Xpath_source_locationX"/> and this Xpath reference shows up in the GUI on the right-hand knobbly item when moused over.
Question(s):
(1) - how can I get the GUI to display connection with both the source and destination
(2) - how can I get the GUI to display connections from more than one xslt file overtly (assuming both files are in the same project)?
Subject:existing xslt, source and destination xsds - how to show GUI mapping Author:(Deleted User) Date:12 Jun 2008 02:47 PM
Hi Mark,
Mapper shows the links for one template only; you can then switch to a different template (from the same source file) by using the combo box located at the top of the middle pane. In order to edit the code for a template located in a different, imported stylesheet, you need to open that file and switch to mapper, select the target schema (that could be different from the one used for the main file) and start mapping elements. If you want to use the same schema, you will probably have to locate the element generated by the template in the schema, right click on it and select 'Set As Target Context'.
Subject:existing xslt, source and destination xsds - how to show GUI mapping Author:Mark Boulton Date:12 Jun 2008 06:45 PM
Hi Alberto,
Thank you for your timely feedback. Your comments on how to access different xsl code was quite beneficial.
I am still stuck, however, on how to bring up an existing xsl file and have the mapping show up graphically in Mapper. When I add new mapping elements in Mapper, the connection show from source to destination but all existing mapping items only show the connection to the destination (see screen shot attached to original post). It appears that the connections are evident during the building of an xsl, but what about when I pull up an xsl that someone else has created which I want to maintain/quickly understand. Is there a way to open an xsl and accompanying xsds and have the entire mapping connection illustrated in Mapper?
Subject:existing xslt, source and destination xsds - how to show GUI mapping Author:(Deleted User) Date:18 Jun 2008 03:50 PM
Hi Mark,
if the blocks in mapper are not connected to the source tree, it means that the XPath paths cannot be navigated from the root down to children. From the picture I cannot see enough code or UI to determine what is wrong; if you are displaying a named template, you need to select the context from which the template is invoked (by right clicking on the desired element in the source tree and invoking Set As Source Context); if the context is correct, you could be missing the namespace from the XPath expression; but in any case, we would need to have a look at the complete stylesheet to be able to spot the problem.