本文主要是介绍XSLT命名空间输出内部调用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
XSLT命名空间输出问题:
此属性exclude-result-prefixes可以控制命名空间的输出,比如:exclude-result-prefixes="ne xn en"【注意:命名空间前缀用空格分隔】表示在输出中不出现该命名空间的前缀列表{ne, xm, en}。
XSLT中回车换行表示:
<xsl:text> </xsl:text>
或
<xsl:text>
</xsl:text>
XSLT内部调用举例:
<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet version="2.0"xmlns:xsl="http://www.w3.org/1999/XSL/Transform"xmlns:ne="http://www.3gpp.org/ftp/specs/archive/32_series/32.615#configData"xmlns:xn="http://www.3gpp.org/ftp/specs/archive/32_series/32.625#genericNrm"xmlns:en="http://www.3gpp.org/ftp/specs/archive/32_series/32.765#eutranNrm"exclude-result-prefixes="ne xn en"><xsl:output method="xml" indent="yes" encoding="UTF-8" /><xsl:template match="/"> <NrmFile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:noNamespaceSchemaLocation="NrmFileFormat.xsd"><xsl:element name="CM"><xsl:for-each select="//xn:ManagedElement [*]"><xsl:variable name="ManagedBy" select="xn:attributes/xn:ManagedBy" /><xsl:variable name="ManagedElementID" select="@id" /><xsl:variable name="PrefixDN"><xsl:call-template name="substring-first"><xsl:with-param name="text" select="$ManagedBy" /><xsl:with-param name="splitor1" select="','" /><xsl:with-param name="splitor2" select="'\,'" /></xsl:call-template></xsl:variable><xsl:attribute name="Dn"><xsl:value-of select="concat($PrefixDN, ',ManagedElement=',$ManagedElementID)" /></xsl:attribute><ManagedElementId><xsl:value-of select="$ManagedElementID" /></ManagedElementId><UserLabel><xsl:value-of select="en:attributes/en:UserLabel" /></UserLabel> </xsl:for-each></xsl:element></NrmFile></xsl:template><xsl:template name="substring-first"><xsl:param name="text" /><xsl:param name="splitor1" /><xsl:param name="splitor2" /><xsl:choose><xsl:when test="contains($text, $splitor2)"><xsl:value-of select="substring-before($text,$splitor2)" /></xsl:when><xsl:otherwise><xsl:choose><xsl:when test="contains($text, $splitor1)"><xsl:value-of select="substring-before($text,$splitor1)" /></xsl:when><xsl:otherwise><xsl:value-of select="$text" /></xsl:otherwise></xsl:choose></xsl:otherwise></xsl:choose></xsl:template> <xsl:template name="string-replace-all"><xsl:param name="text" /><xsl:param name="old" /><xsl:param name="new" /><xsl:choose><xsl:when test="contains($text, $old)"><xsl:value-of select="substring-before($text,$old)" /><xsl:value-of select="$new" /><xsl:call-template name="string-replace-all"><xsl:with-param name="text" select="substring-after($text,$old)" /><xsl:with-param name="old" select="$old" /><xsl:with-param name="new" select="$new" /></xsl:call-template></xsl:when><xsl:otherwise><xsl:value-of select="$text" /></xsl:otherwise></xsl:choose></xsl:template>
</xsl:stylesheet>
这篇关于XSLT命名空间输出内部调用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!