2012-04-06 138 views
2

我开发的应用程序是我需要改变看起来像这样的XML文档:XSLT转换

<?xml version='1.0' encoding='ISO-8859-1'?> 
<!DOCTYPE markables SYSTEM "markables.dtd"> 
<markables> 
<markable id="markable_1" mmax_level="coref" span="word_1..word_4"> </markable> 
<markable id="markable_2" mmax_level="coref" span="word_6..word_7"> </markable> 
<markable id="markable_3" mmax_level="coref" span="word_10..word_24"> </markable> 
</markables> 

使用XSLT样式表。我想转换的结果是(在这种情况下)word_1 word_6 word_10这是我使用的XSL:

<?xml version='1.0' encoding='ISO-8859-1'?> 

<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 

<xsl:template match="markable"> 
    <html> 
    <body> 
    <tr> 
     <td><xsl:value-of select="@span"/></td> 
    </tr> 
    </body> 
    </html> 
</xsl:template> 

</xsl:stylesheet> 

结果是word_1..word_4 word_6..word_7 word_10..word_24。我必须在XSLT中更改哪些内容?

回答

2

您需要使用XSLT功能,即fn:substring-before(@span, '..')

+0

非常感谢! – Haritz 2012-04-06 12:01:22