Hallo Richard,
Selbstverständlich! Meine etwas ironische Bemerkung zielte in eine andere Richtung: Irgendwie kann ich mir nicht vorstellen, dass ein Mensch in der Lage ist, die richtige Syntax einer Tabelle zu zu beschreiben ohne sich dabei eine Tabelle vorzustellen.
Hm, also ich kann schon allein mit einer formalen Grammatik arbeiten ohne die Bedeutung zu kennen. Aber vielleicht muss man dafür mit theoretischer Informatik beschäftigen ;)
Bei CSS z.B. wäre das einfacher festzumachen. Die Semantik von CSS ordnet einem CSS-Dokument eine Abbildung zu, die einem (XML)-Dokument eine Darstellung zuordnet.
Was ist daran semantisch? Diese Zuordnung folgt festgelegten Regeln, ist also syntaktischer Art.
Nur weil etwas gestgelegt ist, ist es nicht gleich Syntax. Wie Du selbst gesagt hast, ist Syntax allein auf Basis der Zeichen definiert. Daran lässt sich recht gut erkennen, wo die Syntax einer formalen Sprache aufhört. Welche Formatierung eine CSS-Regel zur folge hat, lässt sich eben nicht allein auf Basis der Zeichen beschreiben, aus denen sie besteht. Auch bei Programmiersprachen klappt das z.B. nicht. Man benötigt irgendwelche Strukturen (im Falle der Programmiersprache z.B. Funktionen) auf denen man dann die Semantik der Programmiersprache definieren kann.
Interessant wäre die Frage, warum in der Informatik in diesen Fällen von Semantik gesprochen wird.
Weil es Semantik ist. Es wird beschrieben, was mit einer Zeichenfolge gemeint ist, es wird _nicht_ beschrieben, wie diese Zeichenfolgen aufgebaut werden müssen.
Dieser Artikel ist zumindest sehr dürftig und lückenhaft. Semantik ist auch in der Linguistik und Semiotik ein vielschichtiger Begriff. Der Übergang von einem syntaktischen zu einem semantischen Bereich folgt in der Informatik einer anderen Interpretation.
Diesen Eindruck hatte ich bisher, auch in Diskussionen mit Linguisten, eigentlich nicht. Im Kern scheinen die Begriffe gleich zu sein, natürlich sehen Semantiken bei natürlichen Sprachen anders aus und außerdem ist alles viel schwieriger zu trennen. Die Sprachen sind eben nicht entworfen.
Warum? Braucht doch nicht gleich jeder verstehen, worum es geht. ;-)
Wenigstens ein "Experte" sollte das erkennen können, aber wenn Du die Begriffe dann wirklich klar definierst, mag es noch gehen.
Ich habe aber von <br><br> als Möglichkeit einen neuen Textabsatz zu erzeugen geschrieben, was nach allgemeiner Ansicht kein semantisch korrektes Markup ist.
Okey, es wird bezüglich der Struktur nicht das ausgedrückt, was vermutlich ausgedrückt werden sollte. Das Markup ist deswegen nicht "unsemantisch", sondern es wird einfach etwas falsches gesagt. In etwa so wie "Die Erde ist eine Scheibe." nicht "unsematisch" ist, sonder eben einfach eine falsche Aussage.
Aber du lieferst mir hier das Stichwort: In der Informatik wird Semantik *definiert*.
Ja, in der Linguistik wird Semantik normalerweise nur Beobachtet (aber Syntax ja auch). Es gibt aber ja auch Kunstsprachen. Und auch in der Informatik findet eine solche schleichende Veränderung der Semantik in der Praxis statt, indem z.B. ein Browser ein Element anders interpretiert, als vorgesehen. Das ist natürlich dennoch ein wichtiger Unterschied, allerdings keiner, der Grundsätzlich ändert, was mit Semantik gemeint ist.
Ich meinte damit nicht, dass Syntax und Semantik identisch sind. Ich meinte, dass die Semantik nach den gleichen Regeln wie die Syntax abgeleitet wird, nämlich per Definition. Die Bedeutung von Wörtern der natürlichen Sprachen ergibt sich hingegen aus dem intersubjektiven Gebrauch der Sprache und kann nur festgestellt werden.
Ja, deswegen beschreibt Semantik dennoch in beiden Fällen im Prinzip das selbe. Nur wird sie im einen Fall definiert und im anderen beobachtet.
Was ist mit der strickten Trennung von Struktur und Darstellung?
Diese ist mit HTML nicht vollständig möglich oder sinnvoll. Die HTML-Spezifikation enthält angaben zur Darstellung und auch zum Verhalten z.B. von Links oder Formularelementen.
Und was ist Struktur: Syntax oder Semantik?
Die Struktur von HTML ist natürlich Syntax, die Struktur des Dokuments (die HTML beschreibt) ist Semantik.
Die dabei verwendete Terminologie stellt aber ein Problem dar. Klar ist aber, dass HTML nicht weiter als Formatierungssprache eingesetzt werden sollte.
Naja, jedenfalls fährt man besser damit, zu Berücksichtigen welche strukturierende Bedeutung Elemente haben. Übertreiben sollte man die Wichtigkeit aber auch nicht.
Das ist allerdings ein ganz anderes Thema! Bei semantischem Markup geht es in keiner Art und Weise um die Semantik des Dokuments.
Gut, das scheinen nämlich auch viele anzunehmen.
Grüße
Daniel