2014-10-15 3 views
0

У меня есть XML следующего процессаКак сохранить пространство в XSL

<p> 
<contribution> 
    <authors><author> 
    <surname>Zhengxing</surname> <given-name>Chen</given-name> 
    </author> </authors> 
</contribution> 
</p> 

Но мне нужно ниже формат. Основная проблема заключается в пробеле между фамилией и именем. Но после преобразования файла пространство пропало.

<p> 
<span class="contribution"> 
    <span class="authors"><span class="author"> 
    <span class="surname">Zhengxing</span> <span class="given-name">Chen</span> 
    </span> </span> 
</span> 
</p> 

Спасибо за наступление.

+0

Почему вы не добавить пространство самостоятельно? –

ответ

1

Попробуйте это:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
    <xsl:template match="@*|node()"> 
    <xsl:copy> 
     <xsl:apply-templates select="@*|node()"/> 
    </xsl:copy> 
</xsl:template> 
<xsl:template match="p"> 
    <xsl:element name="p"><xsl:apply-templates/></xsl:element> 
</xsl:template> 
    <xsl:template match="contribution|authors|author|surname|given-name"> 
    <xsl:element name="span"> 
     <xsl:attribute name="class"><xsl:value-of select="name()"/></xsl:attribute> 
     <xsl:apply-templates/> 
    </xsl:element> 
    </xsl:template> 
</xsl:stylesheet> 
+0

Это правильно. Но мне нужно оставаться между фамилией и именем. При конвертации он не должен меняться. – Shanmugalakshmi

+0

@Shanmugalakshmi, u нужно удалить пространство или сохранить пространство? В настоящее время это вне клад Zhengxing Chen

+0

Необходимо сохранить пространство – Shanmugalakshmi

Смежные вопросы