试图了解第三方xsl命名空间如何用于引用xml数据。
有两个xsl文件用于从xml生成html,我不知道如何引用根节点作为"数据源"就像在这些文件中一样。 主xsl文件包含辅助xsl文件。中学"普通" xsl文件包含以下代码:
<msxsl:script language="JScript" implements-prefix="z79">
function GetCurrentTime()
{
return String(new Date());
}
</msxsl:script>
两个xsl文件的名称空间都定义为:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:z79="Acme.Hammer" xmlns:msxsl="urn:schemas-microsoft-com:xslt" version="1.0">
<xsl:include href="Common\Common.xsl"/>
<xsl:output method="html"/>
输入的xml文件以:
开头<TopData xmlns="Acme.Hammer">
<Middle name="middleLayer">
<Lower>
<Characteristic name="UNIQUEID">
<Value>@708</Value>
<Timestamp>2016-10-23T11:35:22</Timestamp>
</Characteristic>
在主要的xsl文件中声明变量:
<xsl:variable name="language" select="/z79:Datasource/@xml:lang"/>
<xsl:template match="/">
<xsl:variable name="StartTimeCharac" select="/z79:Datasource/z79:Middle/@startTimeCharacteristic"/>
所以z97是&#34; Acme.Hammer&#34;的快捷方式。命名空间。它匹配根xml节点的xmlns&#39; TopData&#39;。 但是从那里我猜测&#34; Datasource&#34;映射到TopData节点? 这个xsl有意义吗?
我知道它只是片段,但它是专有的,我无法发布整个文件。
我已经阅读了几个xsl教程,但我还没有遇到过这种类型的配置。
请告诉我&#34; Datasource&#34;被映射到&#34; TopData&#34;。