This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]