[xsl] XSLT use cases; data-centric to document-centric transformations
Subject: [xsl] XSLT use cases; data-centric to document-centric transformations|
From: Peter Gerstbach <peter@xxxxxxxxxxxx>
Date: Mon, 07 Feb 2005 18:23:40 +0100
recently I've evaluated some XSLT WYSIWYG-editors, with focus on the
code they create. While comparing the tools, I identified three common
use cases, how XSLT can be used (of course there are more use cases
1) document to document transformations
2) data to data transformations
3) data to document transformations
A good example for 1) might be DocBook: there is a well structured XML
and a (very complex) XSLT which creates the result XML (e.g. FO).
Use case 2) is more about conversion between two different data formats:
for example, there exist a whole bunch of schemas representing a person.
So XSLT can map between two of these formats. There are some
implementations out there, like Altova MapForce.
But use case 3) has a problem: in my opinion XSLT is not really intended
to transform data-centric XML into a document-centric XML. Of course it
can be done, but the programming style is more imperative (for-each)
than template based (apply-template). There are a lot of tools, which
try to solve this data-document-transformation e.g. Altova StlyeVision
or StylusStudio XSLT Designer. But I think they don't succeed because
the generated code is mainly inside only one very big template with
Coming to an end, I have two questions:
- Does anybody agree/disagree to my classification?
- How can I handle use case 3)? To my mind it would be best to convert a
data-centric XML into a well structured documen-centric XML and then
apply a XSLT stylesheet.