XSL自定义函数

利用微软的XSL的继承特性,用户可以自定义XSL函数.
基本原理是用户写的脚本代码写在msxsl中,并设置这部分msxsl继承到用户自定义空间中,那么用户就可以通过用户自定义空间使用msxsl中的脚本代码.

步骤:
1. xsl:stylesheet中定义msxml和用户空间.
  xmlns:msxsl="urn:schemas-microsoft-com:xslt" version="1.0"
  xmlns:user="MyScript"
  其中xmlns:user=可以等于任意值

2. 让msxsl继承用户空间.
  自定义函数写在msxsl:script之间,并且加上implements-prefix="user"
  
例子:
-------------------------------------------------------------
1.xml
-------------------------------------------------------------
<?xml version="1.0" encoding="GB2312"?>
<?xml-stylesheet type=‘text/xsl‘ href=‘1.xsl‘?>
<Book>
<Title>123</Title>
</Book>

-------------------------------------------------------------
1.xsl
-------------------------------------------------------------
<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" version="1.0"
xmlns:user="UserCode">
<msxsl:script language="VBScript" implements-prefix="user">
<![CDATA[ 
 Function GetName(node)
                   GetName = node.item(0).nodeName
 End Function  
]]>
</msxsl:script>
<xsl:template match="/">
 <xsl:value-of select="user:GetName(Book/Title)"/>
</xsl:template>
</xsl:stylesheet>

XSL自定义函数,布布扣,bubuko.com

时间: 2024-10-11 06:05:32

XSL自定义函数的相关文章

Oracle自定义函数1

用户定义函数是存储在数据库中的代码块,可以把值返回到调用程序.调用时如同系统函数一样,如max(value)函数,其中,value被称为参数.函数参数有3种类型. IN 参数类型:表示输入给函数的参数. OUT 参数类型:表示参数在函数中被赋值,可以传给函数调用程序. IN OUT参数类型:表示参数既可以传值也可以被赋值. 1.语法格式: SQL语法方式创建的语法格式为: CREATE OR REPLACE FUNCTION function_name         /*函数名称*/(Para

一个可以使用多个正则表达式进行多次尝试匹配,并进行替换的Excel VBA自定义函数(UFD)

以下代码可使用多个正则表达式对目标单元格进行多次匹配尝试,如匹配成功,将停止尝试匹配其他正则表达式,并且使用该正则表达式相对应的替换表达式进行替换,返回替换结果. 使用前需要做Early Binding.即在VBE编辑器中,选择菜单栏中的Tool - Reference,如图: 弹出如下图的对话框后,选择Microsoft VBSscript Regular Expression 5.5,打钩,点OK. 此UDF的使用方法为: Text参数:需要进行处理的原始文字或单元格. MatchPatte

MySQL学习笔记-自定义函数

MySQL学习笔记-自定义函数 1.自定义函数简介 自定义函数:用户自定义函数(user-defined function,UDF)是一种对MySQL扩展的途径,其用法与内置函数相同 自定义函数的两个必要条件:(1)参数  (2)返回值 自定义函数: 创建自定义函数 CREATE FUNCTION function_name RETURNS {STRING|INTEGER|REAL|DECIMAL} routine_body 关于函数体: 1.函数体可以由合法的SQL语句构成: 2.函数体可以是

FastReport调用Delphi中的自定义函数

//定义一个函数: function SmallToMoney(akey: real): string; begin   //'1234500' end; //此处为fastreport加载自定义函数以便引用 procedure Tprint_from.FormCreate(Sender: TObject);begin  frxReport1.AddFunction('function SmallToMoney(akey: real): string;', 'Myfunction', '函数功能

SQL 自定义函数(Function)——参数默认值

sql server 自定义函数分为三种类型:标量函数(Scalar Function).内嵌表值函数(Inline Function).多声明表值函数(Multi-Statement Function) 标量函数:标量函数是对单一值操作,返回单一值. 内嵌表值函数:内嵌表值函数的功能相当于一个参数化的视图.它返回的是一个表,内联表值型函数没有由BEGIN-END 语句括起来的函数体. 多声明表值函数:它的返回值是一个表,但它和标量型函数一样有一个用BEGIN-END 语句括起来的函数体,返回值

Oracle自定义函数

核心提示:函数用于返回特定数据.执行时得找一个变量接收函数的返回值; 语法如下: create or replace function function_name ( argu1 [mode1] datatype1, argu2 [mode2] datatype2, ........ ) return datatype is begin end; 执行 var v1 varchar2(100) exec :v1:=function_na 函数用于返回特定数据.执行时得找一个变量接收函数的返回值;

转:存储过程和自定义函数的区别

首先来看一下存储过程和自定义函数的概念 一. 什么是存储过程? 存储过程可以使得对数据库的管理.以及显示关于数据库及其用户信息的工作容易得多.存储过程是SQL 语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理. 存储过程存储在数据库内,可由应用程序通过一个调用执行,而且允许用户声明变量.有条件执行以及其它强大的编程功能. 存储过程可包含程序流.逻辑以及对数据库的查询.它们可以接受参数.输出参数. 返回单个或多个结果集以及返回值. 可以出于任何使用SQL 语句的目的来使用存储过程

存储过程和自定义函数的区别

1: 1)存储过程,功能强大,可以执行包括修改表等一系列数据库操作,也可以创建为 SQL Server 启动时自动运行的存储过程. 自定义函数,用户定义函数不能用于执行一组修改全局数据库状态的操作. 2)存储过程,可以使用非确定函数. 自定义函数,不允许在用户定义函数主体中内置非确定函数. 3)存储过程,主要是返回一个int状态结果,也可返回记录集. 自定义函数,可以返回表变量. 关于这个,很容易糊涂.存储过程,可以使用这样的形式来返回N多的结果: create procedure sp1  a

SQL中存储过程和自定义函数的区别(转载)

存储过程:     存储过程可以使得对数据库的管理.以及显示关于数据库及其用户信息的工作容易得多.存储过程是 SQL 语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理.存储过程存储在数据库内,可由应用程序通过一个调用执行,而且允许用户声明变量.有条件执行以及其它强大的编程功能.存储过程可包含程序流.逻辑以及对数据库的查询.它们可以接受参数.输出参数.返回单个或多个结果集以及返回值. 可以出于任何使用 SQL 语句的目的来使用存储过程,它具有以下优点: 1.可以在单个存储过程中执