Я пытаюсь выбрать, какое преобразование будет применяться на основе его значения. Если тест является высоким, разрешение будет удалено, оставив только HD, но если тест является стандартным, только SD будет установленным значением.Выберите и переведите значение тега
Источник XML
<?xml version="1.0" encoding="UTF-8"?>
<file_information>
<asset_data>
<upn>FF074172</upn>
<title>test</title>
<version>High Definition</version>
<duration>00:30</duration>
<tc_in>23:00:00:00</tc_in>
<tc_out>23:00:30:00</tc_out>
<aspect_ratio>16X9</aspect_ratio>
<segment>
<sequence>1</sequence>
<tc_in>23:00:00:00</tc_in>
<tc_out>23:00:30:00</tc_out>
<comment></comment>
</segment>
</asset_data>
</file_information>
Transform
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<file_information>
<asset_data>
<upn>
<xsl:value-of select="//upn"/>
</upn>
<title>
<xsl:value-of select="//title"/>
</title>
<xsl:choose>
<xsl:when test="High Definition">
<version>
<xsl:value-of select="translate(//version,'igh efinition','')"/>
</version>
</xsl:when>
<xsl:otherwise>
<version>
<xsl:value-of select="translate(//version,'tandard','D',)"/>
</version>
</xsl:otherwise>
</xsl:choose>
<duration>
<xsl:value-of select="//duration"/>
</duration>
<tc_in>
<xsl:value-of select="//tc_in"/>
</tc_in>
<tc_out>
<xsl:value-of select="//tc_out"/>
</tc_out>
<aspect_ratio>
<xsl:value-of select="translate(//aspect_ratio,'X',':')"/>
</aspect_ratio>
</asset_data>
</file_information>
Ожидаемый результат
<?xml version="1.0" encoding="UTF-8"?>
<file_information>
<asset_data>
<upn>FF074172</upn>
<title>test</title>
<version>HD</version>
<duration>00:30</duration>
<tc_in>23:00:00:00</tc_in>
<tc_out>23:00:30:00</tc_out>
<aspect_ratio>16:9</aspect_ratio>
<segment>
<sequence>1</sequence>
<tc_in>23:00:00:00</tc_in>
<tc_out>23:00:30:00</tc_out>
<comment></comment>
</segment>
</asset_data>
</file_information>
или
<?xml version="1.0" encoding="UTF-8"?>
<file_information>
<asset_data>
<upn>FF074172</upn>
<title>test</title>
<version>SD</version>
<duration>00:30</duration>
<tc_in>23:00:00:00</tc_in>
<tc_out>23:00:30:00</tc_out>
<aspect_ratio>16:9</aspect_ratio>
<segment>
<sequence>1</sequence>
<tc_in>23:00:00:00</tc_in>
<tc_out>23:00:30:00</tc_out>
<comment></comment>
</segment>
</asset_data>
</file_information>
Вы знаете, что происходит не так? Thanks
Как это, это является XSLT 2.0 ответ (даже если версия установлена на 1.0). –
Измените на и to (запятая после удаления D) –