我不想在xslt代码的输出中显示标题(列名)。
我有xslt代码,可将数据加载到具有列名称的csv文件中,但我不想显示列标题(元数据)。怎么做? 我是xslt的新手,并建议我精通一些文档。
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
exclude-result-prefixes="xs ws" xmlns:ws="urn:com.workday/workersync"
xmlns:xtt="urn:com.workday/xtt" xmlns:etv="urn:com.workday/etv"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
version="2.0">
<xsl:output method="xml"></xsl:output>
<xsl:template name="Header">
<Line xmlns:xtt="urn:com.workday/xtt" xtt:separator="," xtt:quotes="csv">
<PositionName>PositionName</PositionName>
<EffectiveStartDate>EffectiveStartDate</EffectiveStartDate>
<EffectiveEndDate>EffectiveEndDate</EffectiveEndDate>
<EmployeeID>EmployeeID</EmployeeID>
</Line>
</xsl:template>
<xsl:template match="/">
<File xmlns:xtt="urn:com.workday/xtt" xtt:quotes="csv" xtt:separator="
">
<Record xtt:separator="," xtt:quotes="csv">
<xsl:call-template name="Header" />
</Record>
<xsl:for-each select="ws:Worker_Sync/ws:Worker/ws:Additional_Information">
<xsl:variable name="Current_date">
<xsl:value-of select="current-date()"/>
</xsl:variable>
<Record xtt:separator="," xtt:quotes="csv">
<PositionName>
<xsl:value-of select="ws:PositionName"/>
</PositionName>
<EffectiveStartDate xtt:dateFormat="MM/dd/yyyy">
<xsl:value-of select="$Current_date"/>
</EffectiveStartDate>
<EffectiveEndDate xtt:dateFormat="MM/dd/yyyy">
<xsl:value-of select="ws:EffectiveEndDate"/>
</EffectiveEndDate>
<EmployeeID>
<xsl:value-of select="ws:EmployeeID"/>
</EmployeeID>
</Record>
</xsl:for-each>
</File>
</xsl:template>
</xsl:stylesheet>
答案 0 :(得分:1)
可能会删除整个部分:
<Record xtt:separator="," xtt:quotes="csv">
<xsl:call-template name="Header" />
</Record>
会返回您想要的结果吗?无论如何,最好能看到输入和所需的输出。
答案 1 :(得分:1)
您说您的XSLT代码正在生成CSV文件,但事实并非如此。您的XSLT代码正在生成XML,在我看来,该XML似乎正在传递给某个将XML转换为CSV的后期处理程序。可能(如@ user631953所建议),删除名为“ Header”的模板的调用将具有预期的效果,但这仅是猜测;不知道我们真的不知道后处理程序的规范。