[Top] [All Lists]

Re: [xsl] output the result of the transformation twice, indented and not indented, without duplicating the code

2022-05-23 13:46:02
You could treat the heavy-lifting non-indented stylesheet as an imported fragment to an onion skin stylesheet that turns on the indentation.

  <xsl:output indent="no"/>
  ...heavy lifting...


  <xsl:import href="working.xsl"/>
  <xsl:output indent="yes"/>

I hope this helps.

. . . . . Ken

At 2022-05-23 18:40 +0000, Wolfhart Totschnig wolfhart(_dot_)totschnig(_at_)mail(_dot_)udp(_dot_)cl wrote:
Content-Transfer-Encoding: 7bit

Dear list,

I have an XSL stylesheet that produces a large XML document. I would like to output the XML document twice, once indented (for human readability) and once not indented (for faster access by other scripts). I am wondering whether this can be done from within a single stylesheet.

In order to achieve what I want, I could, of course, produce two versions of the stylesheet, one with <xsl:output indent="yes"/> and the other with <xsl:output indent="no"/>, and then run them consecutively. The disadvantage of doing that would be that, if I later want to change the stylesheet, I would have to make the changes twice, which, apart from the additional effort, would be a possible source of errors.

I guess that I could achieve what I want from within a single stylesheet with <xsl:result-document>. But in that case, if I understand correctly, I would have to copy the entire code of the stylesheet into <xsl:result-document>. So the code would, again, be duplicated.

So my question is this: Is there a way to obtain the two versions of the XML document (indented and not indented) without duplicating the code?

Thank you in advance for your help!


Contact info, blog, articles, etc. http://www.CraneSoftwrights.com/s/ |
Check our site for free XML, XSLT, XSL-FO and UBL developer resources |
Streaming hands-on XSLT/XPath 2 training class @US$125 (5 hours free) |
Essays (UBL, XML, etc.) http://www.linkedin.com/today/author/gkholman |
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com

<Prev in Thread] Current Thread [Next in Thread>