Home. 
.

transparent

transparent

transparent

Altova Mailing List Archives


Re: [xsl] xsl:import

From: "G. Ken Holman" <gkholman@----------------.--->
To: "xsl-list@-----.------------.---" <--------@-----.------------.--->
Date: 9/4/2009 5:57:00 PM
At 2009-09-04 09:54 -0700, Bill French wrote:
>Thanks for your reply, Ken. So an importing stylesheet doesn't 
>respect priorities assigned explicitly in imported stylesheets?

"Respect"?  I wouldn't use that word ... it is just that there are 
two concepts:  priority and importance ... and importance trumps priority.

The reason XSLT has both <xsl:import> and <xsl:include> is that 
<xsl:import> introduces a new level of importance while <xsl:include> 
uses the same level of importance (thus risking collisions).

>I.e., if in stylesheet A.xsl, I have
>
><xsl:template match="ElemName">
>   DO THIS
></xsl:template>
>
>and in stylesheet B.xsl I have
>
><xsl:template match="node()" priority="-1">
>   DO THAT
></xsl:template>
>
>and then I run the stylesheet C.xsl which looks like
>
><xsl:import href="A.xsl"/>
><xsl:import href="B.xsl"/>
>
>any element called elemName (and any other, for that matter, if we 
>stick with just the XSL upstairs) is going to DO THAT instead of DOING THIS.

Since you are using "node()" it would DO THAT for *every* node in the 
tree, not just element nodes.

If you used <xsl:include> above instead of <xsl:import> you would get 
"DO THIS" for <ElemName> because they would both be at the same level 
of importance.

>This seems to be what David Carlisle was explaining in his post 
>archived  on David Pawson's XSLT FAQ: 
>http://www.dpawson.co.uk/xsl/sect2/N4738.html#d6607e353

Indeed it is.  I tell my students that <xsl:import> is for tweaking 
stylesheets using introduced levels of importance while <xsl:include> 
is for modularizing stylesheets at the same level of importance.

I hope this helps.

. . . . . . . . . Ken

--
Interested in these classes?  http://www.CraneSoftwrights.com/s/i/
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/s/
Training tools: Comprehensive interactive XSLT/XPath 1.0/2.0 video
Video lesson:    http://www.youtube.com/watch?v=PrNjJCh7Ppg&fmt=18
Video overview:  http://www.youtube.com/watch?v=VTiodiij6gE&fmt=18
G. Ken Holman                 mailto:gkholman@C...
Male Cancer Awareness Nov'07  http://www.CraneSoftwrights.com/s/bc
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe@l...>
--~--



transparent
Print
Mail
Like It
Disclaimer
.

These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on www.altova.com/list/index.html. Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.

.
.

transparent

transparent