基于XSD文件(所有节点)和动态客户端XML(只有50%的节点和值)创建XSLT模板

问题描述 投票:0回答:1

在应用程序客户端中,生成XML,然后将其转换为PDF。 (使用FONET)

PDF具有固定格式,并且以表格格式显示所有可能的节点(无论是否有数据)。

XML中的每个父节点都是PDF中的一部分,具有复杂的UI结构。 PDF共有34个部分。

XML是动态的,将始终只有18-20个部分。并且在每个部分(父节点)中,没有值的子节点将丢失。

了解100%XML结构的唯一方法是来自XSD文件。

问题:

有没有办法在XSLT中同时使用XML和XSD来生成PDF,或者我们需要一些中间的东西?

可能是具有所有可能节点的固定XML,然后向其添加客户端生成的XML值?

xml pdf xslt xsd
1个回答
0
投票

关于从XSL生成PDF,您可以使用xsl:fo生成PDF。

对于动态XML,如果您在不同级别上有多个部分,则只编写一个模板,就可以编写一个通用模板作为示例。

此外,如果您需要捕获尚未为其编写任何模板匹配项的所有元素,则只需编写一个身份模板以在输出中复制所有这些元素:

<xsl:template match="node()|@*">
        <xsl:copy><xsl:apply-templates select="node()|@*"/></xsl:copy>
</xsl:template>

我希望这会对您有所帮助,如果您需要更多详细信息,请共享输入和输出示例。

© www.soinside.com 2019 - 2024. All rights reserved.