PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : W3C Validator - Was mache ich falsch?


bArToN
2006-09-10, 20:14:03
Unser lieber Informatiklehrer hat uns folgenden Code gegeben:

<?xml version="1.0" encoding="utf-8">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>
<title>Test</title>
</head>

<body>

</body>

</html>
Das soll nun ein, nach den W3C Standards, korrektes xhtml Dokument sein.
Checkt man das Dokument aber mit dem HTML Validator werden 11 Fehler angezeigt: http://validator.w3.org/check?uri=http%3A%2F%2Fnilz.uttx.net%2F
Was bitte mach ich falsch?!:confused:

darph
2006-09-10, 20:37:27
Die ganzen Fehler treten nur auf, weil der Doctype nicht richtig erkannt wird. Die URL scheint inkorrekt zu sein. Wenn man es manuell auf XML Strict setzt, stimmt alles (außer dem Doctype halt).

<!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" xml:lang="en">
<head>
<title> </title>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />

<!-- fix the FOUC -->
<script type="text/javascript"> </script>
<style type="text/css" media="screen">
@import url("format.css");
</style>
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
</head>
<body>

</body>
</html>

DanMan
2006-09-10, 23:10:01
Lass mal den Teil mit der URL weg. Den brauchst du eigentlich nicht.

Sephiroth
2006-09-10, 23:18:50
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

und nicht
<?xml version="1.0" encoding="utf-8">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml/DTD/xhtml1-strict.dtd">


Und ja die URI gehört zum DOCTYPE.

DanMan
2006-09-10, 23:35:04
Und ja die URI gehört zum DOCTYPE.
Nicht zwingend laut Selfhtml.

Sephiroth
2006-09-10, 23:55:22
Nicht zwingend laut Selfhtml.
Beim Public-Identifier muß der Identifier und mindestens eine DTD-Datei angeben werden. Woher soll denn sonst der Parser die Definitionen herbekommen, wenn keine Datei mit der document type definition angegeben ist?

Über die angegebene Web-Adresse kann eine auslesende Software die Dokumenttyp-Definitionen aufrufen und in den darin notierten Regeln "nachgucken". Die meisten heutigen Browser tun das bei HTML allerdings nicht, weil die verbreiteten Dokumenttypen bereits implementiert sind.
Das ist ja schön und gut, nur ist das eben eine Ausnahme (die man imo nicht wahrnehmen sollte :tongue: ). Was wenn die Dokument-Typ-Definition zu diesem Identifier nicht mit in den Parser integriert ist? ;)

p.s.
There must be a DOCTYPE declaration in the document prior to the root element. The public identifier included in the DOCTYPE declaration must reference one of the three DTDs found in DTDs (http://www.w3.org/TR/xhtml1/#dtds) using the respective Formal Public Identifier.