Hallo Gernot.
Wir müssen unterscheiden zwischen einer primärsprachlichen und einer metasprachlichen Ebene.
„Müssen“ wir, oder sollten wir? Ich denke nicht, dass das Eine das Andere ausschließt.
HTML ist per se eine Metasprache. Natürlich hat z.B. das OL-Element auf der metasprachlichen Ebene eine Bedeutung "geordnete Liste".
Was ich unter Semantik einordne, ja.
Betrachtet man es aber von der primärsprachlichen Ebene aus, so bildet es einfach nur eine Struktur ab, insofern es als Mutterelement mehrere Kindelemente aufnimmt, die wir als List-Items (LI-Elemente) kennen.
Die Struktur wird durch die Beziehung der einzelnen Elemente zueinander geschaffen, wie ich scchon schrieb, ja.
Das wiederum beschreibt von der Primärsprache aus betrachtet aber ausschließlich die Beziehungen der Elemente zueinander und ist somit reine Syntax.
Syntax wiederum ist meine Meinung nach wieder etwas Anderes.
Sie beschreibt die Art und Weise, wie die zur Verfügung stehenden Elemente / Objekte / ... „dargestellt“ werden. Dargestellt in Anführungszeichen, weil ich hiermit die Codeebene meine. Sie legt in HTML z. B. fest, dass ein Tag mit einem „<“ eingeleitet wird, ein Attribut durch ein „=“ einen Wert zugewiesen bekommt. Sozusagen die nackten Bausteine auf Codeebene, ohne jedoch die Bedeutung von Elementen oder die Beziehung dieser zu definieren.
Ich unterscheide hier also zwischen Semantik, Struktur und Syntax.
Die Syntax liefert also die Grundbausteine und legt fest, was in welchem Rahmen machbar ist. Nun fügt man diese Grundbausteine zusammen und „erschafft“ damit ein nächstgrößeres Element (wie passend), welchem eine Bedeutung zugewiesen wird. Die Semantik wird definiert. Schließlich werden diese definierten Elemente zueinander in Beziehung gebracht, wodurch die Struktur entsteht.
So habe ich das Ganze bisher verstanden. Ich bitte Wiederholungen zu entschuldigen, doch es fällt mir etwas schwer, dies in Worte zu fassen, da ich dies meist eher „fühle“, also einfach weiß / ahne, was wo gilt.
Einen schönen Samstag noch.
Gruß, Ashura
Selfcode: sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:) fl:( ss:) ls:[ js:|
30 Days to becoming an Opera8 Lover -- Day 21: Toolbars
Meine Browser: Opera 8.02 | Firefox 1.0.6 | Lynx 2.8.5 | Netscape 4.7 | IE 6.0
[Deshalb frei! - Argumente pro freie Software]