bad.html:
<!-- zur Verbesserung durch HTML Tidy --> <h1>Überschrift mit fehlendem End-Tag <h2>Überschrift mit falschem End-Tag</h3> <p>Absatz mit <i>falscher <b>Schachtelung</i> von Hervorhebungen</b> und Auszeichnungen. <h2>Überschrift mit <i>falscher Hervorhebung</h2> <p>Ein Absatz mit falscher Hervorhebung <p><a href="bad.html">Anchor ohne End-Tag<a> <li>eine fehlerhafte Liste <li>mit zwei Punkten </ul> <p align=right width=100% >Ergänzung von Anführungszeichen in Attributen und Ersetzung durch CSS Deklarationen. </p> <p tidy=spass>Unsinnige Attribute werden entdeckt.</p> <ALIGN>Netscape Erweiterung</ALIGN> <p>Text mit einem Euro-Zeichen: €</p> <img src=../images/tidy.gif width=50> <hr> <p>Dies sollte normaler Text sein.</p>
good.html:
<?xml version="1.0" encoding="iso-8859-1"?> <!-- zur Verbesserung durch HTML Tidy --> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta name="generator" content="HTML Tidy for Windows (vers 1st August 2002), see www.w3.org" /> <title></title> <style type="text/css"> /*<![CDATA[*/ p.c1 {text-align: right} /*]]>*/ </style> </head> <body> <h1>Überschrift mit fehlendem End-Tag</h1> <h2>Überschrift mit falschem End-Tag</h2> <p>Absatz mit <i>falscher <b>Schachtelung</b> von Hervorhebungen</i> und Auszeichnungen.</p> <h2>Überschrift mit <i>falscher Hervorhebung</i></h2> <p>Ein Absatz mit falscher Hervorhebung</p> <p><a href="bad.html">Anchor ohne End-Tag</a></p> <ul class="noindent"> <li>eine fehlerhafte Liste</li> <li>mit zwei Punkten</li> </ul> <p width="100%" class="c1">Ergänzung von Anführungszeichen in Attributen und Ersetzung durch CSS Deklarationen.</p> <p tidy="spass">Unsinnige Attribute werden entdeckt.</p> <align>Netscape Erweiterung</align> <p>Text mit einem Euro-Zeichen: €</p> <img src="../images/tidy.gif" width="50" /> <hr /> <p>Dies sollte normaler Text sein.</p> </body> </html>
verbesserte.html:
<!-- zur Verbesserung durch HTML Tidy --> <html> <head> <meta name="generator" content= "HTML Tidy for Windows (vers 1st August 2002), see www.w3.org" /> <title></title> </head> <body> <h1>Überschrift mit fehlendem End-Tag</h1> <h2>Überschrift mit falschem End-Tag</h2> <p>Absatz mit <i>falscher <b>Schachtelung</b> von Hervorhebungen</i> und Auszeichnungen.</p> <h2>Überschrift mit <i>falscher Hervorhebung</i></h2> <p>Ein Absatz mit falscher Hervorhebung</p> <p><a href="bad.html">Anchor ohne End-Tag</a></p> <ul class="noindent"> <li>eine fehlerhafte Liste</li> <li>mit zwei Punkten</li> </ul> <p align="right" width="100%">Ergänzung von Anführungszeichen in Attributen und Ersetzung durch CSS Deklarationen.</p> <p tidy="spass">Unsinnige Attribute werden entdeckt.</p> <align>Netscape Erweiterung</align> <p>Text mit einem Euro-Zeichen: €</p> <img src="../images/tidy.gif" width="50" /> <hr /> <p>Dies sollte normaler Text sein.</p> </body> </html>
mitstil.html:
<html> <head> <title>Beispiel mit CSS</title> <link rel="stylesheet" type="text/css" href="meinstil.css" /> <style type="text/css" > h1 { color: red; } </style> </head> <body> <h1>Beispiel mit CSS</h1> <p><font color="blue" >Ein Text in der Seite. </font> </p> <p style="color: blue;" > Ein zweiter Paragraph in der Seite. </p> <p><span style="color: blue;" >Ein Text in der Seite. </span> </p> </body> </html>
meinstil.css:
body { font-size: 30pt; background-color: pink; color: fuchsia !important; } h1 { color: lime !important; /* font-size: small; */ } p { color: black; }
Die Java Klassen zur Verarbeitung von XML-Daten gehören ab J2SDK 1.4 standartmässig zum Lieferumfang. Bis zum J2SDK 1.3 muss einzusätzliches Softwarepaket installiert werden.
Zur Überprüfung der Gültigkeit von XML-Dateien bezüglich einer gegebenen DTD benutzen wir Shell-Scripte.
JDK 1.4 und die xercesSamples.jar
von
xml.apache.org
valid (JDK 1.4 Version):
#!/bin/sh VALIDPATH="/home/.../java/lib/xercesSamples.jar" export CLASSPATH="$VALIDPATH:$CLASSPATH" /usr/java/j2sdk1.4.1_01/bin/java sax.Counter -p org.apache.crimson.parser.XMLReaderImpl -v $*
valid.bat (JDK 1.4 Version):
set VALIDPATH=u:\xerces\xercesSamples.jar set CLASSPATH=%VALIDPATH%;%CLASSPATH% java sax.Counter -v %1
Hilfe:
usage: java sax.Counter (options) uri ... options: -p name Select parser by name. -x number Select number of repetitions. -n | -N Turn on/off namespace processing. -np | -NP Turn on/off namespace prefixes. NOTE: Requires use of -n. -v | -V Turn on/off validation. -s | -S Turn on/off Schema validation support. NOTE: Not supported by all parsers. -f | -F Turn on/off Schema full checking. NOTE: Requires use of -s and not supported by all parsers. -dv | -DV Turn on/off dynamic validation. NOTE: Requires use of -v and not supported by all parsers. -m | -M Turn on/off memory usage report -t | -T Turn on/off "tagginess" report. --rem text Output user defined comment before next parse. -h This help screen.
Verwendung:
valid datei.xhtml
Alternativ können Sie die Klasse
Counter.java
selbst kompilieren und wie gewohnt benutzen:
java Counter -v datei.xhtml
© Universität Mannheim, Rechenzentrum, 1998-2005.
Heinz KredelLast modified: Sat Aug 6 23:11:21 CEST 2005