Не хочу экранировать символы при преобразовании XML - PullRequest
2 голосов
/ 28 июня 2011

Я преобразую один XML в другую форму XML, используя XSL.

При преобразовании неанглоязычные символы экранируются. скажите «М» как «Атильда»;

При анализе преобразованного XML-файла я вижу следующую ошибку:

org.xml.sax.SAXParseException: На сущность "Atilde" ссылались, но не объявляли.

Мое требование: я не хочу, чтобы не английские символы экранировались. Я хочу сохранить персонажей такими, какие они есть.

В XSL, который я использую для преобразования XML, я закодировал следующее утверждение:

<xsl:output method="xml" indent="yes" encoding="utf-8" omit-xml-declaration="no"/>

Должен ли я изменить какой-либо из этих атрибутов для достижения моего требования

Ответы [ 2 ]

4 голосов
/ 17 декабря 2012

необходимо указать тип документа

<xsl:output method="xml" indent="yes" encoding="utf-8" doctype-public="-//W3C//DTD XHTML 1.1//EN" doctype-system="http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" omit-xml-declaration="no"/>
2 голосов
/ 28 июня 2011

Вы не можете обработать это в теге <output>, но вы можете выбрать не экранировать вывод при генерации text элементов в преобразовании.Для этого используйте:

<xsl:text disable-output-escaping="yes">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...