Summary
XSLT: Limited only by your imagination
The display.xsl stylesheet
is the glue that manages the entire process of accepting and returning
parameter values. However, its success is directly dependent on a series of
other files that have dependencies on one another. So far, the first three
tutorials in this series have focused on a key concept central to advanced XSLT
processing -- something the MindMap team refers to as cascading parameters.
You were introduced to this concept in the first two tutorials, but in this one the application
is more robust and ideally demonstrates that their use is limited only by your imagination.
Overall, the concept of layering multiple documents demonstrates that you can create very dynamic applications that strongly mimic the functionality of procedural programming. This can result in everything from calculators to chess games, as well as comprehensive Web applications that involve high-level processing. This doesn't mean that XSLT is a replacement for back-end and application server logic that involves databases and the business logic used by such environments as J2EE to work with them. In fact, it's always better to do as much logic as you can in the back end before processing XSLT on the presentation layer. But often, developers make the mistake of assuming XSLT can't do something, so they turn to JavaScript, which can result in unwieldy spaghetti code that takes days to reengineer when problems surface. Sometimes in XSLT, the answers to some simple logic questions are looking right at you. You just need to know where to turn, and the place to turn is very nearly always parameters and named templates.
Layering XSLT stylesheets summary
The MindMap team's interactive journey with XSLT began, as seen in the first tutorial in this series, with the team's earliest exposure to XSLT a few years ago. Then, the team, like most developers learning about a language, gingerly stepped forward, beginning with some basic string manipulation patterns and moving on to template manipulation. This led to the world of interactive forms in the second tutorial, which allowed them to create dynamic applications designed for the analysis and review of information.
Now, in this tutorial, they've taken the concept of
cascading parameters seen in the second tutorial a step further, by creating an
application that relies heavily on passing parameter values to such an extent that
it actually seems as though the parameter values aren't static. If you look
closely at display.xsl, you'll also see how CSS
styles are managed by variables that also seemingly change values. Of course,
because XSLT has only static values for variables and parameters, this is all
an illusion. A magic act of sorts.
In the next tutorial in the series, the MindMap team is going to take some of the data they've gathered and create a 3D representation of it using an XSLT stylesheet.

