2016-05-15 10 views
2

Ich bin mit dem API validator.nu:Validieren von XHTML-Code mit validator.nu Webservice

https://github.com/validator/validator/wiki/Service:-Input:-POST-body

Ich möchte nach Validierung zwingen, zu streng oder Übergangs-XHTML-Doctype:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 

In der Dokumentation werden Sie aufgefordert, den Anforderungsheader zu senden: Content-type: text/html; charset = utf-8

Ich denke, dass XHTML ein XML-ähnlicher Code ist?!

Nach dem Senden des Inhalts, der ungültiges Markup wie <br> enthält (kein Schließen "/"), gibt der Webdienst keine Fehler zurück. Ich denke, das ist Code wie HTML5.

Wie validiere ich das XHTML-Dokument?

Antwort

1

Es gibt zwei Teile auf Ihre Frage:

I Validierung nach strengem oder Übergängen XHTML doctype

Sie können nicht erzwingen will. Validator.nu does not support DTD based validation. Es ist ein (X) HTML 5-Validator, kein DTD-basierter Validator. Die veraltete W3C validator provides an API, die DTD-Prüfung unterstützt, und andere XML-Validatoren basierend auf DTDs sind verfügbar.

Sie sollten jedoch wahrscheinlich zu (X) HTML 5 wechseln. Es spiegelt besser wider, was Browser tatsächlich unterstützen als XHTML 1.0.

In der Dokumentation werden sie gebeten, den Anforderungsheader zu senden: Content-type: text/html; charset = utf-8

Ich denke, dass XHTML ein XML-ähnlicher Code ist?!

Die Dokumentation sagt, dass das nur ein Beispiel ist.Der Inhaltstyp für ein XHTML-Dokument (einschließlich eines XHTML 5-Dokuments) ist application/xhtml+xml.

Das sollte die XML-Analyse auslösen, daher sollte <br> einen Fehler auslösen. Es wird jedoch immer noch die HTML 5-Spezifikation überprüfen, nicht die XHTML-DTDs.

+0

Es hat funktioniert, aber ich habe auch einen unerwarteten Fehler "Falscher Wert" Content-Type "für Attribut" http-equiv "auf XHTML-Element" Meta "für

+0

@Simohammedhttc - Warum ist es unerwartet? Sie haben zwei Behauptungen über den Inhaltstyp des Dokuments gemacht und stimmen nicht überein. – Quentin

+0

Ich muss den Wert von http- ändern. Äquivalent, http://stackoverflow.com/questions/6320084/why-is-meta-http-equiv-content-script-type-mostly-unused –

0

Folgen dies:

  1. Goto: W3C Markup Validation Service
  2. validieren Wählen von URI oder Datei hochladen oder Direkteingabe.
  3. dann in Weitere Optionen UTF-8 für Zeichencodierung und XHTML Strict für Dokumenttyp zu wählen.
  4. Dann klicken Sie auf Überprüfen Sie.

Sie erhalten die XHTML Strict-Ausgabe.

+0

Ich frage den Vadilator programmgesteuert ab. –