Hallo Siechfred,
Eine Entität 'percnt' gibt es in HTML nicht.
Aber in SGML, siehe General Entities.
Die meisten Entities, die dort aufgeführt sind, sind zwar Teil des SGML-Standards (allerdings auch nicht alle, die Seite ist wirklich mit Vorsicht zu genießen), befinden sich dort aber in Annex D, Abschnitt 4. Dort werden diverse "Entity Sets" definiert, die man sich als SGML-DTD-Autor bei Bedarf (!) dazuladen kann. Dort gibt es in Unterabschnitt D.4.3.1 "Numeric and Special Graphic Characters" eine ganze Reihe von diversen Entities, unter anderem auch
<!ENTITY percnt SDATA "[percnt]"--=percent sign-->
(das würde in % expandieren, SDATA ist ne SGML-Eigenheit)
Allerdings muss man wie gesagt dieses Entity Set erst dazuladen, dies geschieht in der Regel (so wird's auch an der Stelle des SGML-Standards beschrieben) so:
<!ENTITY % ISOnum PUBLIC "IS0 8879=1986//ENTITIES Numeric and Special Graphic//EN">
%ISOnum;
Diese Zeile ist jedoch in keiner Form in der HTML-DTD enthalten - dort werden *alle* Entities nochmal *separat* vom SGML-Standard definiert und eingebunden:
Definition der Entities: In den 3 .ent-Dateien, die hier zusammengestellt sind:
http://www.w3.org/TR/html401/sgml/entities.html
Einbinden: http://www.w3.org/TR/html401/sgml/dtd.html#HTMLlat1 und darunter.
HTML nutzt also die vordefinierten SGML-Teile nicht, sondern definiert sich alle Entities (inklusive (!) ", >, <, &) selbst (die wären auch in obigem ISOnum drin).
Insofern sind beide Aussagen korrekt: Zum einen gibt es in HTML tatsächlich KEINE Entity %, zum anderen ist % eine Entity, die im SGML-Standard definiert wird. Nur heißt Anwendung von SGML halt nicht, dass *alles*, was in SGML möglich ist, in HTML auch umgesetzt wird - % gehört zu den Dingen, die in HTML nicht umgesetzt sind.
Viele Grüße,
Christian