Hello, dear Michael
First of all, big thanks for your prompt response and
for the patience! I really appreciate that. I am
afraid that without you showing me the exact syntax
that you describe, I wn't cope with that problem.
Please, show these changes on the template itself!!
Thanks in advance!!!
Best regards,
nancy
--- Michael Kay <mike(_at_)saxonica(_dot_)com> wrote:
Well, it just needs a bit more string manipulation:
test for the "#" using
contains(), extract the stuff before the "#" using
substring-before() and
the stuff after using substring-after(), and
concatenate the bits together
using concat(). Tedious, but not exactly difficult.
Michael Kay
http://www.saxonica.com/
-----Original Message-----
From: Nancy Brandt [mailto:nancy_brndt(_at_)yahoo(_dot_)com]
Sent: 06 November 2007 15:13
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: [xsl] changing value of xi:include's
href
variable during compilationg with XSLTPROC
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(_at_)saxonica(_dot_)com> 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
--~------------------------------------------------------------------
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>
--~--
--~------------------------------------------------------------------
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>
--~--
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam
protection
around http://mail.yahoo.com
--~------------------------------------------------------------------
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>
--~--
--~------------------------------------------------------------------
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>
--~--
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
--~------------------------------------------------------------------
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>
--~--