У меня есть ряд выходных документов по приложению Java, что экспорт XML с HTML-тегами незаменяемым, например, какXSL преобразование для вложенных HTML-тегов
<b>some text</b>
(я не могу изменить это поведение).
Приложения, которое использует этот вывод должны иметь все HTML-теги убежали в
<b>some text </b>
Я использую XSLT ниже, чтобы избежать тегов, но не удивительно, что не работает для вложенных HTML-тегов, например, где есть
<u><b>A string of html</b></u>
После XSLT преобразования я получаю
<u>a string of html</u>
where nested <b> and </b> tags get removed altogether.
Ищу достичь
<u><b>A string of html</b></u>
Я уверен, что есть простой ответ на этот вопрос путем корректировки стоимости из выбора или шаблона, но я попробовал и обанкротилась
Любая помощь будет высоко ценится !
Образец документ с внедренными HTML-теги
<?xml version="1.0" encoding="UTF-8"?>
<Main>
<Text><u><b>A string of html</b></u></Text>
</Main>
Это XSLT
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes" omit-xml-declaration="no" encoding="UTF-8"/>
<xsl:strip-space elements="*" />
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="Text/*">
<xsl:value-of select="concat('<',name(),'>',.,'</',name(),'>')" />
</xsl:template>
</xsl:stylesheet>
Который производит
<?xml version="1.0" encoding="UTF-8"?>
<Main>
<Text><u>A string of html</u></Text>
</Main>
Внутренние смелые теги были сняты, как вы можете видеть.
Может ли кто-нибудь помочь с настройкой xslt?
Спасибо :-)
+1 для четкого и разумно структурированного вопроса. –
Может ли любой из тегов, которые вы хотите «убежать», иметь атрибуты (например, 'link')? –
Да, они могут, но это покрыто решением Тима C ниже. Спасибо, что ответили! – user3012857