Home Previous Zeitschrift 2000/12 Next Up Next Previous Up Previous Up Next Archiv Index
 
  Inhalt:
 
 
 

  Status Quo: HTML

  XML zur Rettung

  Überblick

  Autor

XML mit FileMaker Teil 2:

CSS und XSLT - Style Sheets für XML

Der XML Code, den FileMaker generiert ist zwar gut leserlich, aber dennoch nicht repräsentativ. Im Internet sind die User ein schöneres und noch leserliches Format gewöhnt. Eine Möglichkeit die Formatierungen so zu beeinflussen sind Cascading Style Sheets (CSS). Der CSS Standard wird verwendet um Formatierungen über mehrere HTML Seiten oder ganze Websites in Einklang zu halten. Dabei bieten CSS dem Webdesigner die Chance die Formatierung vorhandener Tags zu beeinflussen oder neue Tags zu definieren. Eine CSS Anweisung sieht zum Beispiel wie folgt aus:
 

a {
color: #000066;
text-decoration: underline
}

So werden den HTML Tags "<a>" (Hyperlink) neue Farben und Formatierungen zugewiesen. Auch eine XML Datei kann mit CSS neu formatiert werden. Da jeder Dateneintrag einen eigenen Tag zugewiesen bekommt, kann man so jedes Feld einfach formatieren.Für unser Beispiel der Kino Datenbank hatten wir die Felder "Kino", "Uhrzeit" und "Film" definiert. Das CSS dazu sieht dann ungefähr so aus.

FMPDSORESULT {

font-family: sans-serif; 
font-size: 12pt;
}
ERRORCODE, DATABASE, LAYOUT {
visibility: hidden;
}
Kino {
position: absolute;
top: 20px;
left: 60px;
font-weight: bold;
}
Film {
position: absolute;
top: 40px;
left: 60px;
font-weight: bold;
}
Uhrzeit {
position: absolute;
top: 60px;
left: 80px;
}

Da alle Daten des XML Ergebnisses von dem "FMPDSORESULT" umfaßt werden, kann man dort die globalen Stile definieren. Die Tags "ERRORCODE", "DATABASE" und "LAYOUT" werden nicht dargestellt und die Daten werden als kleine Tabelle dargestellt.Um die XML Seite mit diesem CSS darzustellen geben sie folgenden Aufruf in Ihren Browser ein:

http://localhost/FMPro?-db=kino.fp5&-format=-dso_xml&-styletype
=text/css&-stylehref=fmp_kino.css&-max=1&-skip=0&-find

Der Parameter "-styletype=text/css" weist den WebCompanion an eine CSS Datei zu verwenden und "-stylehref" gibt den Ort an, wo er diese findet. "-max=1" stellt nur einen Datensatz dar und "-skip=n" überspringt n Datensätze (also in diesem Fall keinen, da wir ja den ersten DS haben wollen). Um weitere Datensätze zu sehen, geben Sie einen anderen Wert bei "-skip" ein.Das ist alles noch sehr umständlich und man kann noch nicht viel davon erleben, dass XML hier viel Arbeit ersparen soll. 

 Leider bieten CSS in der aktuellen Version noch nicht die Möglichkeiten um Text zwischen den Tags einzufügen, so daß man auf einfache Formatierungen beschränkt bleibt. Hier schafft XSLT (Extensible Stylesheet Language-Transformations) Abhilfe. Mit XSLT kann man einen Satz Regeln definieren, mit dem man ein XML Sheet in ein anderes umwandeln kann. Da HTML auch eine XML-Art ist, kann man hiermit sein FileMaker-XML in z.B. einer HTML Tabelle darstellen. Die XSL Datei sieht wie folgt aus: 

<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<html>
<body>
<table border="2">
<tr>
<th>Kino</th>
<th>Film</th>
<th>Uhrzeit</th>
</tr>
<xsl:for-each select="FMPDSORESULT/ROW" order-by="+ Kino">
<tr>
<td><xsl:value-of select="Kino"/></td>
<td><xsl:value-of select="Film"/></td>
<td><xsl:value-of select="Uhrzeit"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

In der XSL Vorlage wird eine einfache HTML Seite mit den Daten aus dem FileMaker-XML gefüllt. Der Tag 'for-each select "FMPDSORESULT/ROW"' wird für jeden Datensatz (=Zeile=ROW) wiederholt. In die Tabellenspalten wird der jeweilige Feldwert geschrieben. In dem Aufruf im Browser muß man nur die "-styletype" und "-stylehref" Parameter ändern. 

http://localhost/FMPro?-db=kino.fp5&-format=-dso_xml&-styletype
=text/xsl&-stylehref=fmp_kino.xsl&-findall

Im nächsten Kurs werden wir noch mehr Funktionalitäten von XSL erforschen.

Überblick:

Teil 1: Was ist XML?
Teil 2: CSS - Style Sheets für XML
Teil 3: XSLT - Style Sheets für Fortgeschrittene
Teil 4: Eine komplette XML Lösung
 
 
 

Armin Briegel
seit 1997 Claris und später
FileMaker Promoter und Entwickler

E-Mail: armin@briegel.de


Anmerkung:

Die Teile 3 und 4 folgen in den nächsten Ausgaben.
Die Redaktion
 

Zum Seitenanfang
 


© ADOLPH Verlag GmbH - Letztes Update 03.05.2004