<!DOCTYPE xsl:stylesheet [
<!ENTITY nbsp "&#160;">
]>

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                version="1.0">

<xsl:output method="html" encoding="iso-8859-1"/>

<xsl:template match="/">
<html>
<head><title>Madelief XML</title></head>

<body bgcolor="white" link="red" vlink="#ffaaaa" alink="red">
<table cellspacing="5" cellpadding="5">
<tbody>
<tr>
<td><img src="bellisp.gif" alt="Bellis Perennis"/>
</td>
<td><font size="+5"><b><em>Madelief XML</em> -- Een XML DTD en XSLT
stylesheets voor waarnemingslijsten</b></font></td>
</tr>
</tbody>
</table>

<p>Download: <a
href="madelief-xml-1.02.tar.gz"><tt>madelief-xml-1.02.tar.gz</tt></a>
(76kB).</p>
<hr/>

<h3>Van database naar XML file</h3>

<p>Mijn waarnemingsarchief is opgeslagen in een Postgres database.
Dat archief beheer ik via mijn programma <a
href="../madelief/index.html">Madelief</a>. Met Madelief kunnen de
waarnemingen in een XML file met de juiste struktuur geschreven
worden.</p>

<h3>De DTD</h3>

<p>XML files hoeven geen DTD te hebben. Maar het is beter om er wel
een te hebben. Deze DTD heb ik zelf geschreven. Daar is een
hoeveelheid XML kennis voor nodig, dus de meeste Web auteurs zullen
dat niet kunnen en willen doen. Meestal zul je proberen een bestaande
DTD te vinden die voor je toepassing geschikt is. Deze DTD is geschikt
voor het presenteren van waarnemingslijsten die passen binnen mijn <a
href="struktuur.html">struktuur</a>.</p>

<h3>De XML file lezen</h3>

<p>Om de XML file leesbaar te maken heb ik een XSL stylesheet
geschreven waarmee de XML files naar HTML files kunnen worden
omgezet. Die HTML files kun je dan in je WWW browser bekijken. Voor
die omzetting is een XSLT processor nodig, b.v. <a
href="http://xml.apache.org/xalan-j/index.html">Xalan</a>.  Zie <a
href="http://www.oasis-open.org/cover/xsl.html">Robin Covers
pagina</a> voor meer informatie over XSLT software.</p>

<p>Dat is een hele omweg. In de modernste browsers IE6 en Mozilla
kunnen XML files met XSL style sheets rechtstreeks gelezen worden.</p>

<p>Er zijn vier XSLT stylesheets:
<ul>
<li><tt>waarnemingen.xsl</tt>: zet een waarnemingenlijst om van xml
naar html; parameters:
<ul>
<li><tt>lijst</tt>: de naam van de lijst.</li>
<li><tt>lijstgroep</tt>: de naam van de lijstgroep waar deze lijst
deel van uit maakt.</li>
<li><tt>tocfile</tt>: de naam van de file met de lijstgroepen en
lijstrefs; verstekwaarde: <tt>toc.xml</tt>.</li>
</ul></li>
<li><tt>toc.xsl</tt>: maak <tt>index.html</tt> uit de file met de
lijstgroepen en lijstrefs, <tt>toc.xml</tt>; parameters:
<ul>
<li><tt>lijstgroep</tt>: de naam van de lijstgroep waarvoor de index
gemaakt moet worden; als er geen waarde opgegeven wordt, worden alle
lijstgroepen in de index gezet.</li>
<li><tt>lijstcols</tt>: aantal kolommen in de tabel; verstekwaarde:
5</li>
</ul></li>
<li><tt>navigation.xsl</tt>: bevat templates om een lijstref om te
zetten in een hyperlink, en om de navigatiebalk in de
waarnemingslijsten te maken.</li>
<li><tt>descriptions.xsl</tt>: bevat templates om de beschrijvende
teksten om te zetten.</li>
</ul>
</p>

<h3>Deze pagina</h3>

<p>Vanzelfsprekend bestaat er ook van deze pagina een oorspronkelijke
XML vorm <a href="index.xml"><tt>index.xml</tt></a> en een
daarvan afgeleide HTML vorm <a
href="index.html"><tt>index.html</tt></a>. Het stylesheet is
<a href="index.xsl"><tt>index.xsl</tt></a>.</p>

<p>Bovendien bestaat deze pagina in een alternatieve vorm, met een
template achtig stylesheet. Hier staat de tekst in het stylesheet <a
href="index-xsl.xsl"><tt>index-xsl.xsl</tt></a>, en is de XML file <a
href="index-xsl.xml"><tt>index-xsl.xml</tt></a> een lege huls. De
resulterende HTML file is <a
href="index-xsl.html"><tt>index-xsl.html</tt></a>.</p>

<hr/>

<p>Download: <a
href="madelief-xml-1.02.tar.gz"><tt>madelief-xml-1.02.tar.gz</tt></a>
(76kB).</p>

</body>
</html>

</xsl:template>

</xsl:stylesheet>

