foreach problem - newbie alarm ...
Det er under 24 timer siden det lykkedes mig at få installeret Sablotron på min BSD, så bær over med min uvidenhed :))Jeg har følgende eksperimentale xml dokument
---------
<?xml version="1.0" encoding="iso-8859-1"?>
<me>
<name>John Doe</name>
<address>94, Main Street, Nowheresville 16463, XY</address>
<tel>738 2838</tel>
<email>johndoe@black.hole.com</email>
<web>
<url>http://www.unknown_and_unsung.com/</url>
<url>http://www.ljweb.com/</url>
<url>http://www.unknown_and_unsung.com/</url>
<url>http://www.ljweb.com/</url>
</web>
</me>
Som jeg prøver at matche med følgende xsl dokument
---------
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="utf-8" indent="no"/>
<xsl:template match="/me">
<html>
<head>
</head>
<body>
<h1>Contact information for <b><xsl:value-of select="name"/></b></h1>
<h2>Mailing address:</h2>
<xsl:value-of select="address"/>
<h2>Phone:</h2>
<xsl:value-of select="tel"/>
<h2>Email address:</h2>
<xsl:value-of select="email"/>
<h2>Web site URL:</h2>
<ul>
<xsl:for-each select="web">
<xsl:value-of select="url" />
</xsl:for-each>
</ul>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Resultatet heraf giver
---------
<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body><h1>Contact information for <b>John Doe</b></h1><h2>Mailing address:</h2>94, Main Street, Nowheresville 16463, XY<h2>Phone:</h2>738 2838<h2>Email address:</h2>johndoe@black.hole.com<h2>Web site URL:</h2><ul>http://www.unknown_and_unsung.com/</ul></body></html>
okay, og til spørgsmålene)
1: jeg får kun udskrevet én <url> hvor jeg ville forvente 4. I et forsøg med <li> foran fik jeg på et tidspunkt 4 (altså den loopede) men så fik jeg ingen værdier printet.
2) mit output, der eksporteres til en html fil skrives uden newlines. Hvordan kan jeg få den til at placere et par newlines så det også er struktureret output ?
3) jeg har arbejdet med xml og sgml som datalagring inden populering af en database - hvis man gerne vil med på de nye teknologier, XSL, XPATH... er der så en bibel at læse, et gyldent sted på nettet eller ... ?
4) jeg har installeret Sablotron 0.90 med Expat 1.95.4 på min FreeBSD... Ser jeg fx. O'Reilly er meget lejnet op til Apaches Xalan - er det et dårligt valg af parser jeg har foretaget ?
Håber der er nogen der kan kickstarte mine kommende xslt eksperimenter. 20 point til hvert svar :)
/ LJ
www.ljweb.com