我正在使用SAS PROC XSL通过合并来自多个XML的信息来创建新的XML.为此,我使用Document()函数和()中的XML文件的路径.当我在Windows上提交代码时,此代码工作正常,但在LINUX服务器上却没有.令我惊讶的是,日志中没有错误或警告消息.我正在使用XSL处理器1.0.
使用的xsl文件的内容
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<root>
<xsl:comment>One Argument </xsl:comment>
<xsl:for-each select="document('/project/dev/xml_test/b.xml')//a">
<xsl:copy-of select="."/>
</xsl:for-each>
<xsl:comment>Two Argument </xsl:comment>
<xsl:for-each select="document('/project/dev/xml_test/a.xml', .)//a">
<xsl:copy-of select="."/>
</xsl:for-each>
</root>
</xsl:template>
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)
SAS代码:
filename infile "/project/dev/xml_test/b.xml" ;
filename style "/project/dev/xml_test/xslfile.xsl"; --the content is as given above
filename outfile "/project/dev/xml_test/c.xml";
proc xsl in=infile xsl=style out=outfile;
run;
Run Code Online (Sandbox Code Playgroud)