xsl 定义variable

===========================x1.xsl:
    <!-- convert an attachment_id of a image to image filename
    @param    id (type:string, required) attachment_id
    @param    type (type:string, required) image type, eg Gws, Pdt, Logo
    @param    name (type:string, required) original filename with file extension
    @param    entity_id (type:string, optional) entity_id to put as filename
    -->
    <xsl:template name="attachmentid2filename ">
        <xsl:param name="id"/>
        <xsl:param name="type"/>
        <xsl:param name="mime_type"/>
        <xsl:param name="name" select="'image.bin'"/>
        <xsl:param name="entity_id" select="''"/>

        <xsl:variable name="prefix">
            <xsl:value-of select="substring($type,1,1)"/>
        </xsl:variable>

        <xsl:variable name="aid">
            <xsl:choose>
                <xsl:when test="$entity_id != ''">
                    <xsl:value-of select="$entity_id"/>
                </xsl:when>
                <xsl:otherwise>
                    <xsl:value-of select="substring($id+10000000000,2,10)"/>
                </xsl:otherwise>
            </xsl:choose>
        </xsl:variable>
        <xsl:variable name="ext">
            <xsl:call-template name="mime2ext">
                <xsl:with-param name="mime_type" select="$mime_type"/>
            </xsl:call-template>
            <!--
            <xsl:variable name="tmpext">
                <xsl:value-of select="translate(substring-after(substring($name,string-length($name)-4),'.'),'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz')"/>
            </xsl:variable>
            <xsl:choose>
                <xsl:when test="$tmpext = 'jpeg'">
                    <xsl:value-of select="'jpg'"/>
                </xsl:when>
                <xsl:otherwise>
                    <xsl:value-of select="$tmpext"/>
                </xsl:otherwise>
            </xsl:choose>
            -->
        </xsl:variable>
        <xsl:variable name="filename">
            <xsl:value-of select="concat($prefix,$aid,'.',$ext)"/>
        </xsl:variable>
        <xsl:value-of select="$filename"/>
    </xsl:template>



===========================x2.xsl: how to call
 <xsl:variable name="filename">
    <xsl:call-template name="attachmentid2filename ">
           <xsl:with-param name="id" select="AttachmentID/text()"/>
           <xsl:with-param name="type" select="'ContactImage'"/>
           <xsl:with-param name="mime_type" select="MimeType/text()"/>
           <xsl:with-param name="name" select="FileName/text()"/>
    </xsl:call-template>
</xsl:variable>

=============================xml

      <ContactImage type="Group">
          <FileName type="String" lang="en">144426707.jpg</FileName>
          <AttachmentID type="String" lang="en">144426707</AttachmentID>
          <MimeType type="String" lang="en">image/pjpeg</MimeType>
          <ImageSize type="String" lang="en">148408</ImageSize>
      </ContactImage>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值