7. Unterrichtsblock
Inhaltsverzeichnis
XHTML
- XHTML steht für EXtensible HyperText Markup Language
- XHTML ist eine strengere, stärker auf XML basierende Version von HTML
- XHTML ist HTML, das als XML-Anwendung definiert ist
- XHTML wird von allen gängigen Browsern unterstützt
Warum wird XHTML verwendet?
XML ist eine Auszeichnungssprache, bei der alle Dokumente korrekt ausgezeichnet sein müssen. XHTML wurde entwickelt, um HTML erweiterbarer und flexibler für die Arbeit mit anderen Datenformaten (wie XML) zu machen.
Darüber hinaus ignorieren Browser eventuelle Fehler in HTML-Seiten und versuchen, die Website anzuzeigen, selbst wenn sie einige Fehler im Markup aufweist. XHTML kommt also mit einer viel strengeren Fehlerbehandlung.
Die größten Unterschiede zu HTML
- <!DOCTYPE> ist Pflicht
- Das xmlns-Attribut in <html> ist Pflicht
- <html>, <head>, <title> und <body> sind Pflicht
- Elemente müssen immer richtig verschachtelt sein
- Elemente müssen immer geschlossen sein
- Elemente müssen immer in Kleinbuchstaben geschrieben werden
- Attributnamen müssen immer in Kleinbuchstaben geschrieben werden
- Attributwerte müssen immer in Anführungszeichen gesetzt werden
- Attributminimierung ist verboten
Bei XHTML ist der <!DOCTYPE…> verpflichtend
Ein XHTML-Dokument muss eine XHTML <!DOCTYPE>
-Deklaration haben.
Die Elemente <html>
, <head>
, <title>
und <body>
müssen ebenfalls vorhanden sein, und das xmlns-Attribut in <html>
muss den XML-Namespace für das Dokument angeben.
<!-- Beispiel eines XHTML-Dokuments mit dem Minimum an Tags -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Titel des Dokuments</title>
</head>
<body>
Hier kommt der Inhalt...
</body>
</html>
XHTML-Elemente müssen richtig verschachtelt sein
In XHTML müssen Elemente immer richtig ineinander verschachtelt sein, wie hier:
<!-- Richtig -->
<b><i>Beliebiger Text</i></b>
<!-- Falsch -->
<b><i>Beliebiger Text</b></i>
XHTML-Elemente müssen immer geschlossen sein
Tags in XMTL müssen immer geschlossen werden.
<!-- Richtig -->
<p>Dies ist ein Satz</p>
<p>Dies ist ein weiterer Satz</p>
<!-- Falsch -->
<p>Dies ist ein Satz
<p>Dies ist ein weiterer Satz
Leere XHTML-Elemente müssen immer geschlossen werden
<!-- Richtig -->
<br />
<hr />
<img src="/wp-content/uploads/2022/09/Webentwicklerkurs-Logo-150x60.png" alt="Logo" />
<!-- Falsch -->
<br>
<hr>
<img src="/wp-content/uploads/2022/09/Webentwicklerkurs-Logo-150x60.png" alt="Logo">
XHTML-Elemente und Attribute müssen kleingeschrieben werden
<!-- ELEMENTE -->
<!-- Richtig -->
<body>
<p>Dies ist ein Satz</p>
</body>
<!-- Falsch -->
<BODY>
<P>Dies ist ein Satz</P>
</BODY>
<!-- ATTRIBUTE -->
<!-- Richtig -->
<a href="https://webentwicklerkurs.de/html/">HTML Kurs</a>
<!-- Falsch -->
<a HREF="https://webentwicklerkurs.de/html/">HTML Kurs</a>
XHTML-Attributwerte müssen in Anführungszeichen gesetzt werden
<!-- Richtig -->
<a href="https://webentwicklerkurs.de/html/">HTML Kurs</a>
<!-- Falsch -->
<a href=https://webentwicklerkurs.de/html/>HTML Kurs</a>
Minimierung von XHTML-Attributen ist verboten
<!-- Richtig -->
<input type="checkbox" name="fahrzeug" value="auto" checked="checked" />
<input type="text" name="nachname" disabled="disabled" />
<!-- Falsch -->
<input type="checkbox" name="fahrzeug" value="auto" checked />
<input type="text" name="nachname" disabled />
Aufgabe
- Baue eine Seite in HTML (Mit Menüzeile, Footer, Sidebar, Überschriften und Textelementen)
- Baue bewusst Syntax-Fehler ein.
- Baue die Seite dann auch nochmal in XHTML und prüfe die Verwendbarkeit
- Sollten Fehler auftauchen, korrigiere diese
XML
- XML bedeutet eXtensible Markup Language.
- XML ist eine Auszeichnungssprache wie HTML
- XML wurde entwickelt, um Daten zu speichern und zu transportieren.
- XML wurde so entwickelt, dass die Sprache von Menschen und Maschinen gelesen werden kann.
Unterschiede zu HTML
- XML wurde entwickelt, um Daten zu transportieren – mit dem Fokus auf den Informationsgehalt der Daten
- HTML wurde entwickelt, um Daten anzuzeigen – mit dem Fokus auf die Darstellung der Daten
- XML-Tags sind nicht vordefiniert, wie bei HTML
XML Namensregeln
XML Elemente müssen folgenden Regeln in der Namensgebung folgen:
- Element-Namen müssen eine korrekte Groß- und Kleinschreibung haben (am besten klein)
- Element-Namen müssen mit einem Buchstaben oder einem Unterstrich beginnen
- Element-Namen können nicht mit den Buchstaben XML oder Xml oder xml beginnen
- Element-Namen können Buchstaben, Ziffern, Bindestriche, Unterstriche und Punkte enthalten
- Element-Namen können keine Leerzeichen enthalten
Es kann jeder Name verwendet werden (außer XML). Es gibt keine reservierten Namen.
<?xml version="1.0" encoding="UTF-8"?>
<notiz>
<an>Markus</an>
<von>Martina</von>
<ueberschrift>Erinnerung</ueberschrift>
<nachricht>Vergiss mich dieses Wochenende nicht!</nachricht>
</notiz>
Beispiel 2
<?xml version="1.0" encoding="UTF-8"?>
<fruehstuecks_menue>
<essen>
<name>Belgische Waffeln</name>
<preis>5,95 €</preis>
<beschreibung>
Zwei unserer beliebten belgischen Waffeln mit Marmelade und Honig.
</beschreibung>
<kalorien>650</kalorien>
</essen>
<essen>
<name>Belgische Waffeln mit Erdbeeren</name>
<preis>7,95 €</preis>
<beschreibung>
Zwei belgische Waffeln mit Erdbeeren und Schlagsahne.
</beschreibung>
<kalorien>900</kalorien>
</essen>
<essen>
<name>Belgische Waffeln mit Waldbeeren-Mix</name>
<preis>8,95 €</preis>
<beschreibung>
Zwei belgische Waffeln mit verschiedenen Waldbeeren und Schlagsahne.
</beschreibung>
<kalorien>900</kalorien>
</essen>
<essen>
<name>Armer Ritter</name>
<preis>4,50 €</preis>
<beschreibung>
Hausgemachte Brotscheiben in Eiern heraus gebraten.
</beschreibung>
<kalorien>600</kalorien>
</essen>
<essen>
<name>Frühstücksplatte</name>
<preis>12,50 €</preis>
<beschreibung>
Diverse Brote, Schinken, Salami, zwei Frühstückseier, Aufstriche, Orangensaft und Kaffee
</beschreibung>
<kalorien>600</kalorien>
</essen>
</fruehstuecks_menue>
Warum ist XML wichtig?
- XML spielt eine wichtige Rolle in verschiedenen IT-Systemen.
- XML wird oft verwendet, um Daten im Internet zu transportieren.
- Es ist für alle Softwareentwickler wichtig, ein Verständnis für XML zu haben
Wichtige XML Standards
Übungsaufgabe
1. Aufgabe
Baue eine XML-Datei für folgende Tabelle:
Firma | Kontaktperson | Stadt |
---|---|---|
Marias Cafe | Maria Meier | Rosenheim |
Maschinenbau Maier | Hans Maier | Stuttgart |
Schreinerei Müller | Roland Müller | Traunstein |
Pizza Palast | Mario Rovelli | Rosenheim |
Weinkellerei Münster | Friedrich Speer | Münster |
Gasthof zur Post | Georg Huber | Miesbach |