У меня есть XML-файл, который преобразуется с помощью XSL. Некоторые элементы должны быть изменены, некоторые из них должны быть оставлены как есть - в частности, текст с объектами & quot;, & amp;, & apos;, & lt;, & gt; следует оставить как есть, а в моем случае & quot; и & apos; изменены на " и ' соответственно.XSL-преобразование и специальные XML-объекты escaping
Тест XML:
<?xml version="1.0" encoding="UTF-8" ?>
<root>
<element>
"
&
'
<
>
</element>
</root>
преобразование файла:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" encoding="UTF-8" omit-xml-declaration="no" indent="no" />
<xsl:template match="element">
<xsl:copy>
<xsl:value-of disable-output-escaping="no" select="." />
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
результат:
<?xml version="1.0" encoding="UTF-8"?>
<element>
"
&
'
<
>
</element>
желаемого результата:
<?xml version="1.0" encoding="UTF-8"?>
<element>
"
&
'
<
>
</element>
У меня есть 2 вопроса:
- Почему некоторые из этих объектов преобразуются, а другие нет?
- как я могу получить желаемый результат?
Пожалуйста, ознакомьтесь с «желаемый результат:» часть моего вопроса - не было вынесено правильно, поэтому я отредактировал его. – NSPKUWCExi2pr8wVoGNk
Это не влияет на мой ответ. ;-) Я могу быть более явным: вы, вероятно, не можете получить желаемый результат, и в любом случае - вы не должны заботиться о том, как одиночные или двойные кавычки отображаются в файле XML. – Tomalak
Кажется, нет других мнений, и этот ответ довольно информативен, поэтому я согласен с этим. Спасибо. – NSPKUWCExi2pr8wVoGNk