Ich verwende Saxon & XSLT, um HTML-Dokumente zu transformieren, über die ich keine Kontrolle habe.Erlaube ungültige HTML-Zeichen in der XSLT-Transformation
Diese Dokumente können Zeichen enthalten, die wirklich codiert werden sollten, z.
statt der
™
codiert Wie es aussieht, Saxon die folgende Ausnahme während der wirft Transformation von 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;
Gibt es trotzdem mehr zu sein nachsichtig, und sag Saxon, diese Charaktere zu ignorieren und durchzulassen, wie sie sind - oder - wie konfiguriere ich Saxon, um den XMLEmitter zu benutzen und nicht der HTMLEMitter?
XML erlaubt beliebige Zeichen, solange die Kodierung richtig ist. Die einzigen Ausnahmen sind die üblichen: '<> '" & 'die über Entity-Referenzen ausgedrückt werden müssen. Was ist ein _HTML-Zeichen_? – musiKk
@Dimitre: Das ist eine faire' xslt' Frage. –
@Alejandro: Ich würde stimme zu, ob der Titel der Frage korrekt war und ob nicht nur nach Saxon gefragt wurde.Im Titel geht es um die Frage, wie man mit Saxon mit ungültigen XML-Zeichen arbeiten soll, während das OP eigentlich will, wie man bestimmte Sonderzeichen ausgibt. –