Xsl:value-of gibt nur int zurück, keine Strings

Hallo zusammen!

Ich habe ein kleines Problem mit XSL: value-of gibt mir (int) numbers zurück, keine Strings, wie ich sie eigentlich bräuchte.

Zur Verdeutlichung ein Beispiel. Meine XML sieht etwa wie folgt aus:

Nathan der WeiseG.E. Lessing8

Diese XML wird durch eine XSL-Datei ausgelesen und dargestellt. In ihr enthalten ist auch JavaScript-Code, den ich später zur weiterführenden Manipulation der Daten benötige (wozu genau ist hier nicht relevant). Ich will nun mit Hilfe von value-of Daten aus der XML in JavaScript-Variablen verfrachten. Da ich höchst unterschiedliche Datentypen habe (Titel und Autor sind Strings, die Preise hingegen sind Numbers [der Einfachheit halber Integers]), würde ich alle Daten erstmal als String übergeben wollen. Wo nötig können sie später per parseInt() in eine Integer überführt werden.
Nun ist es leider so, dass xsl:value-of mir eben _keine_ Strings liefert. Wenn man mit untenstehendem JavaScript versucht, den Titel oder den Autor an Variablen übergeben, bricht das Skript ab und tut gar nichts mehr. Allein der Preis lässt sich einlesen – offenbar, weil er als Integer geparset werden kann, denn wenn man sich per typeof() den Datentyp anzeigen lässt, gibt JS „number“ aus.
Hier mein JS-Code:

script type=„text/javascript“>
var title = ;
alert(title); --> funktioniert nicht

var author = ;
alert(author); --> funktioniert nicht

var price = ;
alert(price); --> funktioniert (allerdings nur, wenn man die obigen vier Zeilen weglässt; sonst stürzt das Skript bereits vorher ab)

Ich habe schon alles probiert, um value-of in Strings zu überführen:

select=“//author/text()“
select=“string(//author)“
var author = new String( )

Es hilft alles nichts. Das Skript schmiert weiterhin ab, und nur der Preis lässt sich erfolgreich einlesen. Was ist da faul, bzw.: Wie kann ich value-of anweisen, doch bitteschön Strings zurückzugeben?

wenn
var author = ;

ein error erzeugt

weil da z.b. var author = tim ; steht
und z.b.

var price = ;

funktioniert
weil dann da steht

var price = 6;

dann tip ich stark darauf das
anführungstriche fehlen damit der wert auch als String zugewiesen wird. Platzhalter sind ja keine JavaScript Variablen gell.

So sorgt man mit wenigen Worten dafür, dass jemand sich unheimlich blöd vorkommt. Und sich auch noch dafür bedankt. =D Herzlichen Dank, genau das war’s. Schäme mich. ^^