XML - XML Schema und Berechnungen
st0rmy
- xml
Hallo Community,
Ich bin zur Zeit daran eine kleine, fiktive Notenübersicht für ein Projekt zu erstellen.
Dabei sollten wir eine XML Schema-Datei erstellen und ein passendes XML-Dokument, das anschließend mit einer .xsd-Datei für die Webansicht gestylt werden soll.
Meine XML-Datei baut sich wie folgt auf:
<noten>
<kurs>
<titel>...</titel>
<semester>...</semester>
<dozent>...</dozent>
.
.
.
<note>...</note>
</kurs>
<kurs>
.
.
.
</kurs>
</noten>
Nun habe ich zumindest die Anzeige aller Daten per CSS bewerkstelligt, damit sie den inhaltlichen Aspekten des Projekts gerecht werden.
Zuletzt soll allerdings am Ende der HTML-Seite der Notendurchschnitt und die Gesamt-Leistungspunktzahl ausgegeben werden.
Hier komme ich nun nicht mehr weiter... JavaScript sowie das XML-DOM sollte mir hier doch eigentlich weiterhelfen, oder?
Also habe ich folgendes Script eingefügt (Er sollte mir hier einfach nur die Titel der Kurse ausgeben, damit ich feststellen kann, ob das Ganze auch funktioniert...):
<script type="text/javascript">
if (window.XMLHttpRequest){
xmlhttp=new XMLHttpRequest();
}
else // IE 5/6 {
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","noten.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var x=xmlDoc.documentElementsByTagName("kurs");
for (i=0;i<x.length;i++){
document.write(x[i].getElementsByTagName("titel")[0].childNodes[0].nodeValue);
document.write("<br />");
}
</script>
Leider generiert er mir hier genau nichts...
Kann jemand einem Anfänger hier vielleicht ein wenig auf die Sprünge helfen?
Danke euch schon einmal.
Grüße
st0rmy
Hi,
Dabei sollten wir eine XML Schema-Datei erstellen und ein passendes XML-Dokument, das anschließend mit einer .xsd-Datei für die Webansicht gestylt werden soll.
Sehr ungewöhnlich. Normalerweise dient eine .xsd-Datei dazu, zu definieren, wie das XML auszusehen hat.
Also habe ich folgendes Script eingefügt (Er sollte mir hier einfach nur die Titel der Kurse ausgeben, damit ich feststellen kann, ob das Ganze auch funktioniert...):
Wo hast Du das eingefügt?
cu,
Andreas
Hi,
Dabei sollten wir eine XML Schema-Datei erstellen und ein passendes XML-Dokument, das anschließend mit einer .xsd-Datei für die Webansicht gestylt werden soll.
Sehr ungewöhnlich. Normalerweise dient eine .xsd-Datei dazu, zu definieren, wie das XML auszusehen hat.
Also habe ich folgendes Script eingefügt (Er sollte mir hier einfach nur die Titel der Kurse ausgeben, damit ich feststellen kann, ob das Ganze auch funktioniert...):
Wo hast Du das eingefügt?
cu,
Andreas
Entschuldigung, meinte natürlich .xsl.
Die Style-Anweisungen gehören nicht in die Schema-Datei, sondern sollten mit XSL und entsprechend mit CSS/HTML-Anweisungen durchgeführt werden.
Das Script habe ich entsprechend in eben jene .xsl, nach erfolgtem Aufruf der einzelnen Datenelemente, eingefügt, sodass mir am Schluss der Seite zunächst die Titel ausgeben sollte.
Hallo st0rmy,
Entschuldigung, meinte natürlich .xsl.
Warum nicht gleich die Berechnung darin ausführen?
Grüße,
Thomas
Hallo st0rmy,
Entschuldigung, meinte natürlich .xsl.
Warum nicht gleich die Berechnung darin ausführen?
Grüße,
Thomas
Habe ich auch vor, nur leider komme ich hier, wie gesagt, nicht zu einer Anzeige, da ich scheinbar beim Ansprechen des eigentlichen XML-Dokuments mit JavaScript einen Fehler mache :(
Hi,
Das Script habe ich entsprechend in eben jene .xsl, nach erfolgtem Aufruf der einzelnen Datenelemente, eingefügt, sodass mir am Schluss der Seite zunächst die Titel ausgeben sollte.
Nur ja keinen Code zeigen, damit die Helfer im Dunkeln gelassen werden.
So klingt das, als ob Du erwartest, daß ein im .xsl befindliches Script-Element ausgeführt wird.
Aber selbst wenn es im Ergebnis der Transformation steht:
Du hast ein XML, transformierst das per XSL (vermutlich in HTML), bindest in das Ergebnis ein Script ein, daß das ursprüngliche XML per XmlHttpRequest laden soll, um dann ein paar Elemente rauszufischen und ins Dokument zu schreiben.
Warum machst Du das nicht gleich per XSL, ganz ohne Javascript-XmlHttpRequest?
cu,
Andreas