html und sgml
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
anwendung
anzeige
code
definition
dialekt
dokument
eigenschaft
geschichte
http
layout
markup
sinn
sprache
standard
stehen
tag
typ
url
vorkommen
zusammenhang
-
Hi @ all,
ich würde mal gerne wissen, in welchem Zusammenhang HTML und SGML tag/stehen">stehen. Und in wie weit XHTML damit noch zusammenhängt. HAbe mich auf Wikepedia darüber bereits informiert, kann aber vorallem den Sinn von SGML nicht so ganz erkennen.
Auch wüsste ich gerne, was für Doctypetypen es gibt, und welche Eigenschaften welcher Typ hat.
Ich hoffe Ihr könnt mir weiterhelfen.
MFG -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
programtools schrieb:
sgml ist eine metasprache.
... in welchem Zusammenhang HTML und SGML stehen. Und in wie weit XHTML damit noch zusammenhängt ...
hier steht es ziemlich klar:
Die bekanntesten auf SGML basierenden Sprachentwicklungen sind HTML und XML. Sie werden oft als Ableitungen beziehungsweise als Dialekte von SGML beschrieben. HTML ist eine Anwendung (engl. application) von SGML und XML eine bestimmte Untermenge von SGML. In der Praxis hat XML heute den Platz von SGML eingenommen und wird in breitem Umfang verwendet.
..., was für Doctypetypen es gibt, und welche Eigenschaften welcher Typ hat.
1. wiki
2. w3c
3. oliverbertschinger.ch
4. w3c (anspruchsvoll ;o) -
Ist eigentlich ganz einfach:
SGML:
Standard, der Beschreibt, wie ein XML-Dokument auszusehen hat. Zwangsläufig kommt da natürlich immer ein XML-Dokument heraus und das ist denke ich das, was ein wenig verwirrt.
XML:
Alles was so aussieht:
<element> <bla test="blubb" /> <hallo>Welt</hallo> </element>
XHTML
Auf SGML basiertes XML-Dokument mit zusätzlicher DTD (Doctype-Definition). Die DTD ist das "Regelbuch" wie ein XHTML-Dokument auszusehen hat.
Wenn du dein eigenes XML schreibst, kannst du unter Einhaltung von SGML deine Elemente beliebig anordnen, verschachteln etc. Bei XHTML macht das jedoch kein Sinn, deshalb muss man die Regeln festlegen, was man wo darf.
Beispiel:
- Das Rootelement heißt <html>
- Die Kindelemente von <html> dürfen nur <head> und <body> sein
- In <head> muss der Titel vorkommen, aber maximal nur ein mal
- Text- und Blocklevelelemente dürfen nur im <body> sein
- usw.
Und so hat quasi jeder XML-Dialekt seine eigenen spezifischen Doctype-Definitionen. -
Vielen Dank für die vielen Infos ;)
Ich habe gelesen, dass man in HTMl, da es ja auf SGML basiert tag-minimierungen anwenden kann,
also einen <p> tag nicht schließen muss. Stimmt das?
Desweiteren frage ich mich noch, was dann der Unterschied bei HTML5 sein soll, denn es steht bei Wikepedia:
Erstmals seit der Entstehung von HTML wird die Sprache nicht mehr als eine Anwendung von SGML, sondern selbst als eine generalisierte Sprache in der Art von SGML definiert.
MFG
Beitrag zuletzt geändert: 7.9.2011 16:49:54 von programtools -
Hallo,
um es kurz zu machen einige Antworten hier sind ziemlicher Müll!
Und jetzt zum Inhalt, SGML (Standard Generalized Markup Language) ist sozusagen der Vater von HTML, es wurde in den 80ern entwickelt und 1986 das erste mal Standartisiert.
HTML (HyperText Markup Language) bildete Ursprünglich eine konkrete Anwendung von SGML, den SGML selbst legt nicht fest, welche Tags in dem Dokument vorkommen dürfen, sondern dies wird im Doctype festgelegt.
Des weiteren legt SGML auch kein Layout für den ausgezeichneten Text fest, sprich man kann (und sollte) Überschriften zwar in SGML als solche Auszeichnen, aber das ändert nichts an der Anzeige. Denn die Anzeige wird durch eine eigene Stylesprache festgelegt, auf die Ich hier nicht eingehen will, es handelt sich um DSSSL.
Da in der Anfangszeit des Internets die Entwicklung sehr rasant ging hat sich HTML in dieser Zeit vom SGML-Standard weg entwickelt, das heißt, dass die Entwickler nicht genug Zeit hatten, bzw. nicht genug Geld zur Verfügung stand, um echte SGML-Parser zum parsen des HTML zu entwickeln, außerdem wurde diese Zielsetzung relativ schnell hinfällig, da es zum Browserkrieg kam und sich die Implementierungen vor allem dadurch auszeichneten, vor allem die eigenen Erfindugen (font, marquee, blink, usw.) korrekt darstellen zu können und die Konkurrenz schlecht aussehen zu lassen. Diese Entwicklung stnd alleine schon dadurch, dass sie das Layout beeinflusste im krassen Wiederspruch zu SGML, so das entsprechende Parser spätestens hier hinfällig wurden und sogennante "Tag-Soup-Parser" zum defakto-Standard mutierten, welche diverse Eigenschaften nicht unterstützten aber selbst Fehlerhaftestes HTML irgendwie anzeigten (heute ist das etwas besser, mit HTML5 wird sogar definiert wie fehlerhaftes HTML verarbeitet werden muss.was für eine scheiße eigentlich, ein Fehlerhaftes Dokument irgendwie richtig machen wollen…).
XML dagegen ist eine echte Untermenge von SGML und hat diese mittlerweile als wichtigste Beschreibungssprache abgelöst, vor allem wegen der wesentlich einfacheren Syntax und weil es zu XML wesentlich mehr ausgereifte Parser gibt als zu SGML.
Um jetzt nochmal zu zeigen, worin sich die drei Sprachen hauptsächlich unterscheiden gebe ich hier einige Codebeispiele und sage welche Sprachen sie parsen können:
Um dem Thema noch etwas mehr tiefe zu geben empfehle ich diesen Podcast, der sehr gut und genau die Geschichte von HTML erklärt: http://molily.de/weblog/html-geschichteHTML, SGML, XML: (das sollte eh bekannt sein…) <elementA attr="foo">bar</elementA> <elementA attr="foo"/> <elementA><elementB attr="foo">bar</elementB></elementA> <elementA><elementB attr="foo"/>bar</elementA> HTML, SGML: <elementA>bar (ohne schließendes TAG) <elementA attr=foo></elementA> (keine Anführungszeichen bei alphanumerischen-Attributen) HTML: (Diese Dinge sind nie(!) valide) <elementA><elementB>foo</elementA>bar</elementB> (nicht valide, weil falsch geschlossen) SGML: <elementA>bar</> <elementA/bar/ (Verkürzungen von <elementA>bar</elementA>)
Mit freundlichen Grüßen -
Super!
Vielen vielen Dank für diese sehr ausführliche Antwort. Hat mir unglaublich viel geholfen ;)
MFG -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage