使用一个XSLT文件转换2个XML文件

时间:2018-04-17 18:22:08

标签: xml xslt

第一个XML:

<Format>
    <title>Data Title</title>
    <date>Data Date</date>
    <Source>Data source</Source>
</Format>

第二个XML:

<format:format xmlns:format="http://www.w3.org/1999/XSL/Transform">
<format>    
    <formatTitle>
        <format:text/>
        <separator>, </separator>
    <formatDate>
        <format:text/>
        <separator>, </separator>
    </formatDate>
    <formatSource>
        <format:text/>
        <separator>. </separator>
    </formatSource>
</format>

我想使用XSL转换XML文件以获得以下o / p:

Data Title, Date Date, Data Source.

目标XML应如下所示:

<format> 
  <formatTitle>Data title, </formatTitle> 
  <formatDate>Data Date, </formatDate> 
  <formatSource>Data Source. </formatSource> 
</format>

1 个答案:

答案 0 :(得分:1)

你的第二个XML(X2)似乎正在定义某种简单的格式化或转换语言(让它称之为FL),它控制第一个XML(X1)的呈现方式。在不知道FL语言的语法或语义的情况下,除了其效果的一个例子之外,很难提供非常具体的编码帮助(特别是因为你的标本X2甚至不是格式良好的XML)。

但是,我发现解决这个问题的最佳方法是编写一个XSLT样式表S1,将X2转换为XSLT样式表S2,然后使用S2将X1转换为所需的输出。

但也许我完全误解了你要做的事情。它一点也不清楚。例如,我们不知道X1和X2可能与您向我们展示的单个测试案例有多大差异。