Я использую Saxon & XSLT для преобразования HTML-документов, над которыми я не контролирую.Разрешить недопустимые символы HTML в преобразовании XSLT
Эти документы могут содержать символы, которые действительно должны быть закодированы, например.
вместо кодированный
™
Как она стоит, Saxon бросает исключение при преобразовании из HTMLEmitter:
else if (c >= 127 && c < 160) {
// these control characters are illegal in HTML
DynamicError err = new DynamicError(
"Illegal HTML character: decimal " + (int) c);
err.setErrorCode("SERE0014");
throw err;
Есть в любом случае, чтобы быть более мягким и сказать Саксону игнорировать и пропускать эти символы, как они есть - или - как мне настроить Saxon на использование XMLEmitter и а не HTMLEmitter?
XML допускает произвольные символы, если кодировка правильная. Единственными исключениями являются обычные: '<> '" & 'которые должны быть выражены через ссылки на сущности. Также, что такое символ _HTML_? – musiKk
@Dimitre: Это справедливый вопрос' xslt'. – 2010-12-13 20:57:39
@Alejandro: Я бы согласитесь, правильно ли было задано название вопроса, и если он не попросил только саксонскую.В названии вопрос заключается в том, как работать с недопустимыми символами XML с саксофоном, а то, что действительно хочет OP, - это как выводить определенные специальные символы. –