Frage

Ich bin mit Saxon 9 ungültige HTML-Quellen zu analysieren. Insbesondere die html href Werte wie folgt hat:

some text

Ich erhalte Fehler:

"Fehler von XML-Parser berichtet: Der Verweis auf die Entität‚g_varID‘muss am Ende mit   das ';' Trennzeichen. "

Der XML-Parser liest die „& g_varID“ string und beschweren, dass es eine sein „;“ das Unternehmen zu begrenzen. Aber natürlich ist dies nicht als HTML-Einheit gedacht -. Es ist nur ein Stück einer URI

Wie kann sagen, dass ich den Parser, es zu ignorieren? Hinweis:. Ich bin mit nicht-Schema-aware Saxon, nicht Saxon-SA

War es hilfreich?

Lösung

Stellen Sie sicher, dass Sie eine korrekte xhtml DOCTYPE haben. Nach dem xhtml1-strict.dtd, die ich betrachte, ist das Attribut href CDATA deklariert, nicht PCDATA, die sich perfekt in Ordnung wörtlichen bedeutet & und nicht als Einheit analysiert werden sollen.

Andere Tipps

Wenn Sie Ihre HTML nicht XML ist, dann, wie erwarten Sie jeden XML-Prozessor zu verarbeiten?

Wie bereits erwähnt, ist dies nicht gültige XML ist, ist es HTML. Dieses besondere Problem, obwohl, ist eine, die HTML ordentlich standardmäßig bereinigt: http: // www. w3.org/People/Raggett/tidy/ . Verwenden Sie es mit den folgenden Befehlszeilenargumente zu konvertieren HTML in XHTML:

tidy -asxhtml foo.html > foo.xhtml

Und dann sollten Sie in der Lage es durch Ihre XSLT auszuführen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top