2015-09-29 2 views
0

Новое в XSLT и пытается вставить дефис после определенных атрибутов.XSLT - Добавить значения Hyphen to Attribute

XML пример Источник:

<TASK CHAPNBR="12" SECTNBR="13" SUBJNBR="01" FUNC="130" SEQ="803"> 

    @CHAPNBR will always contain two digits 
    @SECTNBR will always contain two digits 
    @SUBJNBR will always contain two digits 
    @FUNC will always contain three digits. 

Нет дефис вставили после того, как SEQ.
Имена атрибутов никогда не будут меняться, но числовые значения могут/будут.

Только нужно вставить дефис после следующих атрибутов:

@CHAPNBR, @SECTNBR, @SUBJNBR, @FUNC 

Мой выходной ток XSLT делает это:

<TASK>12 13 01 130 803</TASK>   

нужно это сделать так:

<TASK>12-13-01-130-803</TASK>   

Предельно благодарен за любые предложения/мысли!

ответ

0

Использование <xsl:template match="TASK"><xsl:copy><xsl:value-of select="concat(@CHAPNBR, '-', @SECTNBR, '-', @SUBJNBR, '-', @FUNC, '-', @SEQ)"/></xsl:copy></xsl:template>.

+0

Большое спасибо! Просто потрясающе, и я слишком долго бил головой об этом, делал это более сложным, чем нужно! Еще раз спасибо - по достоинству оцените свое время и помощь! :) –