Hallo Michael,
[...] das, was in den CSS-Specs mit »declaration« gemeint ist, findet in »Deklaration« sicherlich keine Entsprechung.
»to declare« lässt sich mit »deklarieren« übersetzen,
Natürlich ist es unter dem Umstand möglich, dass die von der allgemeinen Bedeutung abgehobene spezielle Bedeutung von »deklarieren« als Fachbegriff gemeint ist. Dem allgemeinen Verständnis nach ist diese Übersetzung aber sinnverfälschend bzw. widersinnig. Das englische »declare« hat mit dem deutschen »deklarieren« höchstens die lateinischen Wurzeln gemeinsam. »Declare« wird im Englischen in anderen Zusammenhängen als das deutsche »deklarieren« verwendet, obwohl der Ursprung derselbe ist. Für diese Bedeutungsnuancen gibt es spezielle deutsche Wörter, es zeigen also mehrere deutsche Wörter auf ein englisches Wort bzw. umgekehrt. »Deklarieren« ist eines davon.
Nun stehen allgemeine und fachspezifische Bedeutung im Englischen nahe beieinander, im Deutschen m.M.n. nicht. »Deklarieren« verbessert das Verständnis des Gemeinten nicht, es ist in diesem Fall 1:1-Denglisch ohne Hintergedanken, keine deutsche Erklärung/Umschreibung für den Sinngehalt von »declaration«. Bei der Abbildung auf den deutschen Fachbegriff war die transparente Bedeutungswiedergabe durch ein gewöhnliches Wort kein Kriterium.
»declaration« [lässt sich] im technischen Zusammenhang u.a. mit »Deklaration« [übersetzen], eine Bezeichnung, die sich in der deutschen Sprache als Fachterminus durchgesetzt hat und imo auch verständlich ist. Ich sehe dein Problem nicht.
Ja, im technischen Zusammenhang lässt es sich mit »Deklaration« übersetzen, weil die Bedeutung des deutschen »Deklaration« dahingehend ausgeweitet wurde, dass es im EDV-Bereich eine bestimmte Sonderbedeutung hat, welche, wie gesagt, mit der alltäglichen Bedeutung wenig gemein hat. Es ist tatsächlich als Fachterminus bereits etabliert und die CSS-Spec greift dies nur auf. Ich kritisiere daran lediglich, dass der Fachterminus aus seinem Kontext entnommen nichtssagend beziehungsweise irreführend ist. Das soll heißen, dass ein Anfänger lernt, eine Deklaration »Deklaration« zu nennen, weil es eben der korrekte Fachbegriff dafür »Deklaration« ist - das Wort selbst kennt er aber, wenn überhaupt, nur aus anderen Zusammenhängen und warum speziell dieses Wort treffend ist, bleibt im Dunkeln, weil, anders als im Englischen, keine offensichtliche Verbindung zu den Wortursprüngen existiert, welche das Verständnis fördern würde. Für ihn scheint es also so, als hätte man eine Deklaration auch, um eine bekanntes Beispiel zu bemühen, »Spunk« nennen können.
Es geht mir darum, zu bezweifeln, dass jeder Deutschsprachige, der sich mit CSS beschäftigt, auch den äquivalenten »offiziellen« deutschen Fachterminus verwenden soll/muss, denn das Verständnis erleichtert er meiner Meinung nach nicht sonderlich. (Bei HTML sehe ich solche Probleme nicht, dort lässt sich declaration auch vergleichsweise bedenkenlos mit »Angabe« übersetzen, beispielsweise bei document type declaration, und eine XML declaration lässt sich auch als das Dokument einleitende Verarbeitungsanweisung - wie weit liegen »instruction« und »Befehl« wohl auseinander? ;-) - an den Parser beschreiben, welche grundsätzliche Angaben zum XML-Dokument enthält.) Beispielsweise sehe ich durchaus einen Sinn und keine Willkür oder schlichtes Unwissen darin, dass Selfhtml (und andere, unbedeutendere Dokus) durchgängig »Definition« anstelle von »Deklaration« verwendet (dagegen lassen sich auch Argumente finden, ohne Frage). Wer natürlich davon überzeugt ist, dass jede Doku, die sich nicht an die W3C-Terminologie hält, des Teufels ist, wird auch nicht Vor- und Nachteile abwägen können.
Das Wort »Deklaration« hatte nie die Bedeutung, die man in es hineinlegt, wenn man es als Übersetzung für »declaration« im CSS-Kontext gebraucht. Das Abbilden von »declaration« auf »Deklaration« ist, wie man so schön sagt, arbiträr, denn die ursprüngliche Bedeutung von »Deklaration« wurde ignoriert.
Was ist denn, deiner Ansicht nach, die ursprüngliche Bedeutung?
Die ursprüngliche, nicht-technische Bedeutung von Deklaration würde ich mit »Erklärung« in einem bestimmten Kontext, in einem bestimmten Sinne auch »Angabe«, daneben etwa »Verlautbarung« umschreiben.
Onkel Duden sagt:
1. Erklärung [die etwas Grundlegendes enthält].
2. a) abzugebende Meldung gegenüber den Außenhandelsbehörden (meist Zollbehörden) über Einzelheiten eines Geschäftes; b) Inhalts-, Wertangabe (z.B. bei einem Versandgut).
(»Meldung« verallgemeinert klingt an sich als mögliche Teilbedeutung nicht schlecht...)
Bzw. im Wörterbuch:
1. [feierliche, öffentliche] Erklärung grundsätzlicher Art, die von einer Regierung, einem Staat, einer Organisation od. von mehreren Staaten od. Organisationen [gemeinsam] abgegeben wird: die D. der Menschenrechte.
2. a) Zoll-, Steuererklärung; b) (Wirtsch.) Inhalts-, Wertangabe [bei einem Versandgut].
Declaratio/declarare gibt auch nicht mehr als erklären, kundgeben, ausrufen her.
Das hilft uns natürlich prächtig weiter, weil es ungemein viel mit dem Wesen von Deklarationen in CSS zu tun hat und förmlich den Schlüssel zum Verständnis der CSS-Terminologie enthält...
Du fragst ja selbst:
Wie würde man also die wirkliche, gemeinte Bedeutung von »declaration« übersetzen?
Ist dir die »ursprüngliche Bedeutung« klar, du kannst sie nur nicht in Worte fassen?
Die verbreitete Bedeutung von »Deklaration« bzw. besser gesagt die möglichen bzw. häufigen Konnotationen sind mir durchaus bewusst, deshalb sehe ich auch keine Verbindung zwischen diesen und der Vorstellung der CSS-Deklarationen.
Als naheliegende Umschreibungen für »declaration« schlug ich bereits (Formatierungs-)»Angabe« und (Eigenschafts-)»Zuweisung«/»Zuordnung« vor und nannte auch deren Nachteile. Für den syntaktischen Codebestandteil gibt es m.M.n. keinen eindeutige, alltagssprachlichen Begriff. Im Grunde ist die Zuweisung einer bestimmten Formatierungseigenschaft im Sinne einer Zuordnung bzw. Festlegung von Merkmal (Eigenschaft) und Merkmalsausprägung (Wert) gemeint. Natürlich wird das Objekt, dem etwas zugewiesen wird, wiederum in einem anderen Syntaxteils angegeben, dem Selektor.
So sehr man auf den korrekten Begriffen herumreitet, für einen Anfänger liegt das Wort »Befehl« diesen nicht fern, und zwar selbst wenn das Konzept von Statements, Regeln, Selektoren und Deklarationsblöcken einerseits und Eigenschaften und Eigenschaftswerten andererseits verinnerlicht wurde, ohne zwangsläufig mit diesen Begriffen umzugehen.
Wer zwischen all diesen unterschiedlichen Bestandteilen der CSS-Grammatik konzeptionell unterscheidet, wird es auch sprachlich tun wollen. Genau deswegen gibt es Bezeichungen.
Aus diesem berechtigten Anspruch lässt sich sicher nicht nicht die zwingende Notwendigkeit ableiten, diese Bezeichnungen mittels Phantasiebegriffen bzw. bekannten Begriffe mit neuer Bedeutung ohne eindeutig erkennbaren Bezug zur allgemeinen Bedeutung umgesetzt werden müssen.
Ich sehe keinen Grund, diese nicht zu verwenden.
Ich wollte nicht die Notwendigkeit der Unterscheidung anzweifeln. Ich bin lediglich der Meinung, dass Begriffe wie »Selektor« und »Deklaration« »aus sich selbst heraus« einem nicht mit der speziellen Bedeutung vertrauten Menschen wenig bis nichts sagen, also nicht die (dann in einem gewissen Sinne metaphorische) Erklärung einer abstrakteren Vorstellung über bereits bekannte Wörter eines begrenzteren Sprachschatzes leisten.
Die Benennung ist insgesamt ein einziges Dilemma - da beispielsweise rule set laut Spec mit »rule« abgekürzt werden kann, wären @-rules genauso rules wie rule sets, weil »rules« gegenüber »@-rules« suggeriert, »rules« sei eine allgemeinere Art und »@-rules« seien eine spezielle Ausprägung von »rules«, aber mitnichten(tm), der Oberbegriff ist »statements«, was, wie wir gelernt haben, angeblich »Anweisung« bedeutet, somit scheinen alle Regeln Anweisungen zu sein und alle Anweisungen Regeln... ;) Also nennen wir brav rule sets »Regelmengen« (argh!) anstatt einfach gleichmacherisch »Regeln«, und wer dann von selbst nicht darauf kommt, dass die Zusammenstellung der Syntaxbestandteile »dieser Code sagt, welchen Elementen unter welchen Umständen das folgende zugewiesen werden soll« und »dieser Code enthält Merkmalsangaben, welche auf die im vorher festgelegten Elemente angewendet werden soll« gemeint ist, na, dem kann auch nicht mehr geholfen werden(tm).
Grüße,
Mathias