This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Multiple independent XSLT transforms applied to one XML file.
- From: Fabricio Chalub <CHALUB at fgv dot br>
- To: "'XSL-List at lists dot mulberrytech dot com'" <XSL-List at lists dot mulberrytech dot com>
- Date: Tue, 30 Apr 2002 15:46:39 -0300
- Subject: [xsl] Multiple independent XSLT transforms applied to one XML file.
- Reply-to: xsl-list at lists dot mulberrytech dot com
I have asked this question on a mailing list of a specific XSLT application
(Cocoon) to see if I can solve my problem using that.
It may be the case that there is already a generic solution to this problem,
using 'pure' XSLT constructs, which is better than the specific solution
using Cocoon. So I guess I might try send you my question too.
The simple question is:
How do I process a XML file that combines two different DTDs with two
*separate* XSLT transforms? Or even using a single combined DTD, in which
but a part of it goes to one XSLT file and part is processed by another XSLT
file.
---
The complete question (with examples) is:
Suppose I have a very simple site DTD:
<site>
<people>
<person>
[whatever]
</person>
</people>
</site>
And suppose I have a XSLT that transforms into a complete HTML page, like:
<html><body>
<ul>
<li>[whatever]</li>
</ul>
</body></html>
OK. Now suppose that I have another DTD that defines a specific class of
person, a teacher, that I want to mantain separately:
<teacher>
<name>John S.</name>
<class>Biology</class>
</teacher>
And I have a standard XSLT that transforms this into a HTML fragment, like:
<p><b>Name:</b> John S.</p>
<p><b>Class:</b> Biology</p>.
Now I have a XML file like this, combining both DTDs:
<page>
<people>
<person>
<!-- this using is the teacher DTD -->
<teacher>
<name>John S.</name>
<class>Biology</class>
</teacher>
<!-- this using is the teacher DTD -->
</person>
</people>
</page>
Naturally, I want to generate a complete HTML of the above output using both
transformations.
I also want to keep both XSLT files separate and independent, since I may
want to reuse the XSLT and DTD for the teacher on other parts of my site and
supporting systems.
Is there any way to do this without using a specific implementation?
Thanks!
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list