xsl-list
[Top] [All Lists]

Re: [xsl] xsl:import

2009-09-04 13:57:21
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(_at_)CraneSoftwrights(_dot_)com
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(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

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