|
Subject: RE: [xsl] changing value of xi:include's href variable during compilationg with XSLTPROC From: Nancy Brandt <nancy_brndt@xxxxxxxxx> Date: Tue, 6 Nov 2007 07:12:30 -0800 (PST) |
Hi dear Michael,
First of all, thank you for the suggestion. This
template did work with a little bit of modification:
<xsl:template match="xi:include">
<xi:include>
<xsl:copy-of select="@*"/>
<xsl:attribute name="href">
<xsl:copy-of select="@*"/>
<xsl:value-of select="concat(@*, '.online')"/>
</xsl:attribute>
</xi:include>
</xsl:template>
So that during compilation a file name in xi:include
href construction gets the ".online" suffix. But here
is a problem:
In my source XML, there a couple of instance of the
following href formats:
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="voip_features_operation.xml#sect_tel_op_rad"/>
where #sect_tel_op_rad is a specific section withing
the voip_features_operation.xml. My question is how do
I further customize the above template in order to
change (during compilation)
href="voip_features_operation.xml#sect_tel_op_rad"/>
with
href="voip_features_operation.xml.online#sect_tel_op_rad"/>
Thank you very much in advance!!!
Nancy
--- Michael Kay <mike@xxxxxxxxxxxx> wrote:
> >
> > And now the tricky part: the xi:include mechanism.
> If I call
> > an XML file within another file via xi:include,
> the compiler
> > does not turn the included file to
> <filename>_online.xml.
>
> Well from your description it looks like
>
> <xsl:template match="xi:include">
> <xi:include>
> <xsl:copy-of select="@*"/>
> <xsl:attribute name="href">
> <xsl:value-of select="substring-before(.,
> '.')"/>
> <xsl:text>_online.xml</xsl:text>
> </xsl:attribute>
> </xi:include>
> </xsl:template>
>
> But perhaps I've completely misunderstood the
> requirement (or the nature of
> your difficulty).
>
> Michael Kay
> http://www.saxonica.com/
>
> >
> > This is a problem if the called file contains
> macros, for
> > example a macro for inserting graphics. The macro
> is not
> > processed, and it does not turn to a mediaobject.
> >
> > What I would like to have is a kind of a
> template/mechanism
> > which will automatically substitute all instances
> of
> > xi:include href="myfile.xml" with xi:include
> > href="myfile_online.xml" during the first step of
> compilation
> > with XSLTPROC.
> >
> > Is it possible to create such?
> > Please, advise...
> >
> > Thank you very much in advance!!!!
> > My best wishes,
> > Nancy
> >
> > __________________________________________________
> > Do You Yahoo!?
> > Tired of spam? Yahoo! Mail has the best spam
> protection
> > around http://mail.yahoo.com
>
>
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| RE: [xsl] RE: Blank lines in transf, Scott Trenda | Thread | RE: [xsl] changing value of xi:incl, Michael Kay |
| RE: [xsl] Blank lines in transforme, Michael Kay | Date | RE: [xsl] changing value of xi:incl, Michael Kay |
| Month |