Markus studiert!
Relationemodelle mit XSL erzeugen
Für unser Datenbank-Projekt habe ich ein XML-Stylesheet geschrieben, dass aus einer einfachen XML-Datei ein schönes Relationenmodell erzeugt.
XML
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="relationenmodell.xsl"?>
<relationmodel>
<relation>
<name>Relation</name></p>
<property primary="true">Primärschlüssel</property>
<property foreign="true">Fremdschlüssel</property>
<property>Datenfeld</property>
</relation>
</relationmodel>
XSL
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes" />
<xsl:template match="/relationmodel">
<html>
<head>
<title>Relationenmodell Auktionsdatenbank 2010db02</title>
<link rel="stylesheet" type="text/css"
href="http://yui.yahooapis.com/3.2.0/build/cssreset/reset-min.css" />
<link rel="stylesheet" type="text/css"
href="http://yui.yahooapis.com/3.2.0/build/cssbase/base-min.css" />
<link rel="stylesheet" type="text/css"
href="http://yui.yahooapis.com/3.2.0/build/cssfonts/fonts-min.css" />
<link rel="stylesheet" type="text/css" href="relationenmodell.css" />
</head>
<body>
<h1>Relationenmodell Auktionsdatenbank 2010db02</h1>
<xsl:apply-templates />
</body>
</html>
</xsl:template>
<xsl:template match="relation">
<table>
<tbody>
<tr>
<th>
<xsl:value-of select="name"></xsl:value-of>
</th>
<xsl:for-each select="property">
<xsl:element name="td">
<xsl:attribute name="class">
<xsl:if test="@primary">primary</xsl:if>
<xsl:if test="@foreign">foreign</xsl:if>
</xsl:attribute>
<xsl:value-of select="."></xsl:value-of>
</xsl:element>
</xsl:for-each>
</tr>
</tbody>
</table>
</xsl:template>
</xsl:stylesheet>
Und damit es hübsch aussieht, dazu noch ein CSS-File:
body { margin: 1em 2em; }
th { background-color: #ccc; font-weight: bold; min-width: 15em; }
td { min-width: 8em; }
.primary { text-decoration: underline; }
.foreign { font-style: italic; }
< 31. December 2010, 14:40 Uhr
Tags: #XML #Datenbanksysteme
Laufende Projekte Ende 2010
In der kurzen freien Zeit zwischen den Jahren muss ich mich gleich um drei Projekte kümmern:
- In Datenbanksysteme entwickeln wir eine PostgreSQL-Datenbank für ein Auktionssystem, hierzu wird am 6. Januar das Entity-Relationship-Modell und das Relationenmodell, sowie SQL-Script für den Datenbankentwurf abgegeben. Am 21. Januar dann die vollständige GUI-Anwendung der Auktionsplattform.
- In Softwaretechnik sind wir aktuell an der Umsetzung des Projekts (Verkehrsplaner). Hier ist die Abgabe ebenfalls am 21. Januar.
- Für Betriebssysteme gibt es eine Einzel-Abgabe: eine Datenbank für ein Fisch-Hotel in C — die habe ich schon fertig.
< 31. December 2010, 14:26 Uhr
Tags: #SoftwareTechnik #C #Datenbanksysteme #Betriebssysteme