RE: Simple XSL question

2002-02-05 Thread Ivan Rubin Ayma

Simone,

Just for the record, I went on using this template.

xsl:template match=@* | node()
  xsl:copy
xsl:apply-templates select=@* | node()/
  /xsl:copy
/xsl:template

I still wonder if it is not a bad design to generate a base xml at the
begining of the pipeline, aggregate other generated xml data and then go
into a number of transformations for each specific section of the base
xml, transforming them with the other generated data, and copying all
the unused data, in each transformation, for the rest of the pipeline,
basically in terms of performance. By now, that's what I'm doing.

Thanks,

-Mensaje original-
De: Simone Gianni [mailto:[EMAIL PROTECTED]]
Enviado el: lunes, 28 de enero de 2002 12:50
Para: [EMAIL PROTECTED]
Asunto: Re: Simple XSL question


At 12.37 28/01/2002 -0300, you wrote:
Hello,

How can I make a XSLT transformation of just a couple of elements,
leaving the rest untouched, without having to select everything and
passing it through?

You can create a catch all template with lower priority, for example :

xsl:template match=something
 dosomething/do
/xsl:template

xsl:template match=*|node() priority=-10
 xsl:copy-of select=./
/xsl:template

This means that if something is found, it will be processed by the
first 
template, if else is found it will be processed by the second
template, 
which does a copy. The lower priority is an optional, since the XSLT 
processor should use the first template since it's more specific, but
I've 
had some strange results, and forcing it is a good idea.

I'm not sure about the xsl:copy-of .. ... it could cause some 
duplications, you could try a xsl:copy/ and see which one works better
...

Ciao

Simone


-
Please check that your question has not already been answered in the
FAQ before posting. http://xml.apache.org/cocoon/faqs.html

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


-
Please check that your question has not already been answered in the
FAQ before posting. http://xml.apache.org/cocoon/faqs.html

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Re: Simple XSL question

2002-02-05 Thread Bryan Murphy

xsl:import and xsl:include are your friends when you start getting 
concerned about performance issues and want to do everything in one 
pass!  Of course though, if you generate one form of content, and then 
transform it to another form of content (say, xml-docbook-html) you 
are SOL. :(

Simone,

Just for the record, I went on using this template.

xsl:template match=@* | node()
  xsl:copy
xsl:apply-templates select=@* | node()/
  /xsl:copy
/xsl:template

I still wonder if it is not a bad design to generate a base xml at the
begining of the pipeline, aggregate other generated xml data and then go
into a number of transformations for each specific section of the base
xml, transforming them with the other generated data, and copying all
the unused data, in each transformation, for the rest of the pipeline,
basically in terms of performance. By now, that's what I'm doing.

Thanks,

-Mensaje original-
De: Simone Gianni [mailto:[EMAIL PROTECTED]]
Enviado el: lunes, 28 de enero de 2002 12:50
Para: [EMAIL PROTECTED]
Asunto: Re: Simple XSL question


At 12.37 28/01/2002 -0300, you wrote:

Hello,

How can I make a XSLT transformation of just a couple of elements,
leaving the rest untouched, without having to select everything and
passing it through?


You can create a catch all template with lower priority, for example :

xsl:template match=something
 dosomething/do
/xsl:template

xsl:template match=*|node() priority=-10
 xsl:copy-of select=./
/xsl:template

This means that if something is found, it will be processed by the
first 
template, if else is found it will be processed by the second
template, 
which does a copy. The lower priority is an optional, since the XSLT 
processor should use the first template since it's more specific, but
I've 
had some strange results, and forcing it is a good idea.

I'm not sure about the xsl:copy-of .. ... it could cause some 
duplications, you could try a xsl:copy/ and see which one works better
...

Ciao




-
Please check that your question has not already been answered in the
FAQ before posting. http://xml.apache.org/cocoon/faqs.html

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]