Subject: RE: [xsl] Multiple independent XSLT transforms applied to one XML file. From: "Michael Kay" <michael.h.kay@xxxxxxxxxxxx> Date: Tue, 30 Apr 2002 20:51:33 +0100 |
You can generally achieve this by using xsl:import. By writing your transformations as a set of template rules to be applied to particular elements, and keeping the rules for each DTD in a separate stylesheet module, you can assemble a composite stylesheet that contains all the rules for the composite document using xsl:import. Michael Kay Software AG home: Michael.H.Kay@xxxxxxxxxxxx work: Michael.Kay@xxxxxxxxxxxxxx > -----Original Message----- > From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx > [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx]On Behalf Of Fabricio > Chalub > Sent: 30 April 2002 19:47 > To: 'XSL-List@xxxxxxxxxxxxxxxxxxxxxx' > Subject: [xsl] Multiple independent XSLT transforms applied to one XML > file. > > > 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 > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Multiple independent XSLT tra, Fabricio Chalub | Thread | Re: [xsl] Code Generation, doug |
Re: [xsl] javascript in XSLT, Ming | Date | Re: [xsl] Code Generation, doug |
Month |