xsl-list
[Top] [All Lists]

Re: system call?

2005-09-19 11:24:54
Thanks Jay! This is exactly what I was looking for. -troy



JBryant(_at_)s-s-t(_dot_)com 
09/19/2005 11:06 AM
Please respond to
xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com


To
xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
cc

Subject
Re: [xsl] system call?






I have a comment and an idea:

<xsl:variable name="year">
        <xsl:value-of select="article/fm/hdr/hdr2/pdt/yr"/>
</xsl:variable>

can be just

<xsl:variable name="year" elect="article/fm/hdr/hdr2/pdt/yr"/>

Also, I strongly suspect that you need / in front of that select string.

Now for the idea:

If you use an XSLT 2.0 processor (such as Saxon 8), you can get the 
current year as follows:

<xsl:variable name="thisyear" select="format-date(current-date(), 
'[Y0001]')"/>

Then you can use

<xsl:if test="$year = $thisyear">

The FAQ has information about getting the current date in XSLT 1.0:
http://www.dpawson.co.uk/xsl/sect2/dates.html

Jay Bryant
Bryant Communication Services
(presently consulting at Synergistic Solution Technologies)




TGolshan(_at_)computer(_dot_)org 
09/19/2005 12:30 PM
Please respond to
xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com


To
xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
cc

Subject
[xsl] system call?






I am trying to disable URL links from legacy files. I am not sure how to 
do this without hard-coding the $year to the current year, 2005. Any 
better ideas? I have heard that one might be able to do a system call, but 


that completely escaped me. 

Thanks in advance,
troy

**************************

XML file
<hdr2>
        <obi>
                <volno></volno>
                        <issno></issno>
        </obi>
        <pdt>
                <mo></mo>
                        <yr>2005</yr>
        </pdt>
        <pp</pp>
</hdr2>

<p><url>URL TEXT HERE</url></p>
 

Code
<xsl:variable name="year">
        <xsl:value-of select="article/fm/hdr/hdr2/pdt/yr"/>
</xsl:variable>

<xsl:template match="url">
                <xsl:if test="$year='2005'">
                        <a>
                                <xsl:choose>
                                        <xsl:when test="
substring(text(),1,5)='http:'">
                                                <xsl:attribute name="href
"><xsl:value-of select="text()"/></xsl:attribute>
                                        </xsl:when>
                                        <xsl:when test="
substring(text(),1,4)='ftp:'">
                                                <xsl:attribute name="href
"><xsl:value-of select="text()"/></xsl:attribute>
                                        </xsl:when>
                                        <xsl:otherwise>
                                                <xsl:attribute name="href
"><xsl:value-of select="concat('http://',text())"/></xsl:attribute>
                                        </xsl:otherwise>
                                </xsl:choose>
                                        <xsl:attribute name="target">blank
</xsl:attribute>
                                                <xsl:apply-templates/>
                        </a>
                </xsl:if> 
                <xsl:if test="$year!='2005'">
                        <xsl:apply-templates/>
                </xsl:if>
        </xsl:template>

--~------------------------------------------------------------------
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>
--~--




--~------------------------------------------------------------------
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>