Bernd: Problem mit Formular

Hallo,

ich bin gerade dabei unser Kontaktformular barrierefrei zu gestalten. Allerdings gibt es dabei einige kleine Probleme.

http://www.stadtbibliothek-steglitz-zehlendorf.de/kontakt.html

Wenn ich die o.g. Seite mit dem W3 Validator überprüfe, erhalte ich folg. Fehlermeldungen, mit denen ich nicht so recht weiterkomme:

Error Line 80 column 13: an attribute value specification must be an attribute value literal unless SHORTTAG YES is specified.
<form action=http://www.chris-lochner.de/cgi-bin/biblio_mail_script/bibliomail..

---

Error Line 80 column 19: NET-enabling start-tag not immediately followed by null end-tag.
<form action=http://www.chris-lochner.de/cgi-bin/biblio_mail_script/bibliomail..
This error may occur when there is a mistake in how a self-closing tag is closed, e.g '.../ >'. The proper syntax is '... />' (note the position of the space).

---

Error Line 128 column 6: end tag for element "form" which is not open.
</form>

Der öffnende Tag befindet sich in Zeile 80, weshalb mich diese Meldung etwas irritiert.

Vielen Dank im voraus für alle Tipps und Anregungen.

Grüße
Bernd

  1. Hi,

    ich bin gerade dabei unser Kontaktformular barrierefrei zu gestalten. Allerdings gibt es dabei einige kleine Probleme.

    gehe zu XHTML über, das reduziert Deine Probleme.

    Error Line 80 column 13: an attribute value specification must be an attribute value literal unless SHORTTAG YES is specified.

    So erlaubt XHTML beispielsweise _keine_ Attributwerte ohne Anführungszeichen mehr.

    Error Line 80 column 19: NET-enabling start-tag not immediately followed by null end-tag.

    Der erste Slash beendet das Element,

    Error Line 128 column 6: end tag for element "form" which is not open.
    </form>

    Der öffnende Tag befindet sich in Zeile 80,

    also gibt es auch kein geöffnetes <form> mehr.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hallo,

      Error Line 80 column 19: NET-enabling start-tag not immediately followed by null end-tag.

      Der erste Slash beendet das Element,

      Nein, der erste Slash beendet den Start-Tag (NESTC). »>« beendet das Element (NET). Das ist so in der SGML-Deklaration für XML festgelegt, die der Validator nutzt. NETENABL IMMEDNET sorgt derweil dafür, dass nur Elemente ohne Inhalt diese Konstruktion verwenden dürfen - das form-Element ist in diesem Fall aber nicht leer.

      <form action=bla//>
      ^^^^^^^^^^^^^^^^^    NET-enabling Start-Tag
                       ^   Elementinhalt
                        ^  Null-end Tag
      wäre also
      <form action="bla">/</form>
      Was nicht erlaubt ist, weil NET nur bei leeren Elementen erlaubt ist.

      Über diese Kombination von NET, NESTC und NETENABL IMMEDNET erklärt man halt die XML-Syntax von leeren Elementen <element /> über eine SGML-Deklaration.

      Sagte ich schon, dass es pervers ist, XML mit einem SGML-Parser verarbeiten zu wollen? ;)

      (Man korrigiere mich, falls nötig)

      Mathias

      1. Hi,

        Der erste Slash beendet das Element,
        Nein, der erste Slash beendet den Start-Tag (NESTC).

        ja, sorry. Danke für die Korrektur.

        Sagte ich schon, dass es pervers ist, XML mit einem SGML-Parser verarbeiten zu wollen? ;)

        Ich denke, das erwähntest Du bereits ;-)

        (Man korrigiere mich, falls nötig)

        Allerdings bin ich nicht der Meinung, der W3C-Validator sei für XHTML ungeeignet. Nach wie vor halte ich eine Validierung durch ihn für absolute und unumgängliche Pflicht. Wenn er grünes Licht gibt, _dann_ kann man sich getrost anderen Validatoren zuwenden. Zumindest sollte man IMHO so vorgehen, bis man die Vorgehensweisen und Hintergründe der Programme verinnerlicht hat.

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
  2. Hallo,

    http://www.stadtbibliothek-steglitz-zehlendorf.de/kontakt.html

    Wenn ich die o.g. Seite mit dem W3 Validator überprüfe, erhalte ich folg. Fehlermeldungen, mit denen ich nicht so recht weiterkomme:

    Vergiss den W3C Validator, wenn du XHTML schreibst! Er ist dafür nicht geeginet. Teste XHTML immer mit dem XHTML Schema Validator.

    Error Line 80 column 13: an attribute value specification must be an attribute value literal unless SHORTTAG YES is specified.
    <form action=http://www.chris-lochner.de/cgi-bin/biblio_mail_script/bibliomail..

    Attributwerte müssen in XHTML immer in Anführungszeichen notiert werden.
    (Dieses Attribut mit der URL müsste auch in HTML in Anführungszeichen notiert werden.)

    <form action="http://...">

    Error Line 80 column 19: NET-enabling start-tag not immediately followed by null end-tag.

    Lass dich durch das Gerede des Validators über SHORTTAG und NET nicht beeindrucken. Das sind SGML-spezifische Techniken, die im Web keine Rolle spielen und auf XHTML keine Anwendung haben. Das ist auch der Grund, warum der Validator XHTML nicht vernünftig händeln kann.

    Man kann in HTML
    <form action="URL"/Text/
    schreiben, das ist äquivalent zu
    <form action="URL">Text</form>
    (Transitional)

    Wenn du
    <form action=http://www.chris-lochner.de/cgi-bin/biblio_mail_script/bibliomail.pl>
    schreibst, denkt der Validator, du wollest
    <form action="http:"></form>www.chris-lochner.de/cgi-bin/biblio_mail_script/bibliomail.pl>
    schreiben.
    Da dein Dokument aber XHTML verwendet, will der Validator das nicht zulassen, kann aber nicht recht sagen, wo der Fehler liegt, schließlich hat er keinen XML-Parser und denkt nur in SGML-Kategorien... Fazit: Den W3C-Validator für XHTML vergessen.

    Mathias

    1. Hallo,

      Wenn du
      <form action=http://www.chris-lochner.de/cgi-bin/biblio_mail_script/bibliomail.pl>
      schreibst, denkt der Validator, du wollest
      <form action="http:"></form>www.chris-lochner.de/cgi-bin/biblio_mail_script/bibliomail.pl>
      schreiben.

      Korrektur:

      Hier ging ich von der SGML-Deklaration für HTML aus, die der Validator aber nicht anwendet. Siehe mein anderes Posting.

      Es müsste also heißen:
      Wenn du in XHTML
      <form action=http://www.chris-lochner.de/cgi-bin/biblio_mail_script/bibliomail.pl>
      schreibst, denkt der W3C Validator gemäß der SGML-Deklaration für XML, du wollest
      <form action="http:">/www.chris-lochner.de/cgi-bin/biblio_mail_script/bibliomail.pl</form>
      schreiben.
      Das ist aber wie gesagt nicht erlaubt, das NET-Feature ist begrenzt auf leere Elemente, z.B. <br />.

      Aber die Verrenkungen, die man veranstaltet, um XML mit SGML zu beschreiben, brauchen dich nicht weiter zu interessieren.

      Mathias