我正在尝试转换此 XML 文档:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="test.xsl"?>
<data>
<entry>
<databit>30.11.2012</databit>
<databit>Foo</databit>
<databit>Key: Value<br />Key: Value<br /> ... Key: Value</databit>
<databit>some Foo content</databit>
<databit>more Foo content</databit>
</entry>
<entry>
...
</entry>
...
</data>
键值对的数量是可变的。分隔符始终是一个<br />
标签。
输出应如下所示:
<data>
<entry>
<date>30.11.2012</date>
<title>Foo</title>
<info>
<part key="Key" value="Value" />
<part key="Key" value="Value" />
<part key="Key" value="Value" />
</info>
<databit>some Foo content</databit>
<databit>more Foo content</databit>
</entry>
<entry>
...
</entry>
...
</data>
这是我编写的 XSLT 文档:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:output method="xml" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<data>
<xsl:for-each select="/data/entry">
<entry>
<date>
<xsl:value-of select="databit[1]"/>
</date>
<title>
<xsl:value-of select="databit[2]"/>
</title>
<info>
<xsl:value-of select="databit[3]"/>
</info>
<category>
<xsl:value-of select="databit[4]"/>
</category>
<status>
<xsl:value-of select="databit[5]"/>
</status>
</entry>
</xsl:for-each>
</data>
</xsl:template>
</xsl:stylesheet>
但我不知道如何转换info
.