Combinar de XSL
|
Muitos outros stylesheets podem ser importados usando o xsl: importação ou incluído usando o xsl: incluir no stylesheet. Importar o stylesheet é mesmo que incluindo, a não ser que isso as definições e as réguas do molde em importar a precedência das tomadas do stylesheet sobre as réguas do molde e as definições em um stylesheet importado. O Stylesheet 1 é importado no Stylesheet 2.
|
XML source
<?xml version="1.0"?>
<xslTutorial >
<H1>IMPORTING STYLESHEETS</H1>
</xslTutorial>
|
HTML output 1
IMPORTING STYLESHEETS
|
|
XSL stylesheet 1
<xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:variable name="id2">Stylesheet 1(id2.xsl)</xsl:variable>
<xsl:variable name="t">Variable t from id2.xsl</xsl:variable>
</xsl:stylesheet>
|
|
Os moldes de XSL
|
Um “xsl: as crianças elemento da importação do” devem preceder todas as outras crianças do elemento do xsl: elemento do stylesheet, including algum do xsl: incluir crianças do elemento. Quando o xsl: incluir é usado incluir o stylesheet, algum do xsl: os elementos da importação em um original incluído são movidos para cima em a including o original para após algum do xsl existente: elementos da importação em a including o original.
|
XML source
<?xml version="1.0"?>
<xslTutorial >
<H1>IMPORTING STYLESHEETS</H1>
</xslTutorial>
|
HTML output 3
<P>Stylesheet 1(id2.xsl)
|
|
XSL stylesheet 2
<xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:include href="id2.xsl"/>
<xsl:template match="/">
<P><xsl:value-of select="$id2"/></P>
<P><xsl:value-of select="$id3"/></P>
</xsl:template>
</xsl:stylesheet>
|
|
Os resultados de combinar de Stylesheet
|
Os resultados de combinar um stylesheet dependem da posição de um xsl: incluir ou o xsl: importar a função.
|
XML source
<?xml version="1.0"?>
<xslTutorial >
<AAA/>
<BBB/>
<CCC/>
</xslTutorial>
|
HTML output 4
<DIV style="color:red">AAA (according to Stylesheet 1 (id2.xsl)</DIV>
<DIV style="color:red">BBB (according to Stylesheet 1 (id2.xsl)</DIV>
<DIV style="color:red">CCC (according to Stylesheet 1 (id2.xsl)</DIV>
|
|
XSL stylesheet 4
<xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:template match="/">
<xsl:apply-templates/ >
</xsl:template>
<xsl:template match="/*/*">
<DIV style="color:blue">
<xsl:value-of select="name()"/>
<xsl:text> (according to this stylesheet)</xsl:text>
</DIV>
</xsl:template>
<xsl:include href="id2.xsl"/>
</xsl:stylesheet>
|
|
Aplic-Importar a função
|
Você pode fazer o uso o xsl: aplic-importa o elemento para começar a informação do molde importado, cujo o comportamento está sendo mudado. O Stylesheet 2 importa o Stylesheet 1 e cancela o molde.
|
XML source
<?xml version="1.0"?>
<xslTutorial >
<AAA/>
<BBB/>
<CCC/>
</xslTutorial>
|
HTML output 1
<DIV style="color:red">AAA</DIV>
<DIV style="color:red">BBB</DIV>
<DIV style="color:red">CCC</DIV>
|
|
XSL stylesheet 1
<xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:template match="/*/*">
<DIV style="color:red">
<xsl:value-of select="name()"/>
</DIV>
</xsl:template>
</xsl:stylesheet>
|
|
Cancela
|
O Stylesheet 2 importa o Stylesheet 1 e cancela o molde.
|
XML source
<?xml version="1.0"?>
<xslTutorial >
<AAA/>
<BBB/>
<CCC/>
</xslTutorial>
|
HTML output 2
<EM>AAA</EM>
<EM>BBB</EM>
<EM>CCC</EM>
|
|
XSL stylesheet 2
<xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:import href="id2.xsl"/>
<xsl:template match="/*/*">
<EM>
<xsl:value-of select="name()"/>
</EM>
</xsl:template>
</xsl:stylesheet>
|
|
Precedência da importação
|
A precedência da importação é mais importante do que a precedência da prioridade. Olhar o Stylesheet 2.
|
XML source
<?xml version="1.0"?>
<xslTutorial >
<AAA id='a1' pos='start'>
<BBB id='b1'/>
<BBB id='b2'/>
</AAA>
<AAA id='a2'>
<BBB id='b3'/>
<BBB id='b4'/>
<CCC id='c1'>
<CCC id='c2'/>
</CCC>
<BBB id='b5'>
<CCC id='c3'/>
</BBB>
</AAA>
</xslTutorial>
|
HTML output 1
<H3 style="color:blue">CCC (id=c1)</H3>
<H3 style="color:blue">CCC (id=c2)</H3>
<H3 style="color:blue">CCC (id=c3)</H3>
|
HTML output 2
|
|
XSL stylesheet 1
<xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:template match="/">
<xsl:apply-templates select="//CCC"/>
</xsl:template>
<xsl:template match="CCC" priority="10">
<H3 style="color:blue">
<xsl:value-of select="name()"/>
<xsl:text> (id=</xsl:text>
<xsl:value-of select="@id"/>
<xsl:text> )</xsl:text>
</H3>
</xsl:template>
</xsl:stylesheet>
|
|
XSL stylesheet 2
<xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:import href="id2.xsl"/>
<xsl:template match="/">
<xsl:apply-templates select="//CCC"/>
</xsl:template>
<xsl:template match="CCC" priority="-100">
<H3 style="color:red">
<xsl:value-of select="name()"/>
<xsl:text> (id=</xsl:text>
<xsl:value-of select="@id"/>
<xsl:text> )</xsl:text>
</H3>
</xsl:template>
</xsl:stylesheet>
|
|
|
|
Keywords XSL Combining, xsl element, xsl entity, xsl text, xsl css, xsl translate, xsl doctype,
xsl sort, xsl count, xsl editor, xsl xhtml, xsl schema, saxon xsl, jsp xsl, xsl href,
xsl encoding, w3c xsl, xsl stylesheet, rss xsl, xsl param, xsl template, xsl include,
xsl html, xsl if, xsl replace, xsl function, xsl parameter, xsl processor, xsl id,
xsl output, xsl node, xsl fop, xsl import, xsl date, xsl select, xsl dom, xsl fo,
docbook xsl, c# xsl, xsl stylesheets, xsl parser, xsl transformation, svg xsl, xalan xsl,
xsl tree, xsl escape, msxml xsl, xsl parsing, xsl empty, xsl tag, string xsl, display xsl,
value xsl, xsl using, xsl generate, convert xsl, xsl multiple, xml combine
|