diff options
Diffstat (limited to 'ebus-xml/transform')
-rw-r--r-- | ebus-xml/transform/ebus.html.xslt | 112 | ||||
-rw-r--r-- | ebus-xml/transform/ebus.txt.xslt | 49 |
2 files changed, 161 insertions, 0 deletions
diff --git a/ebus-xml/transform/ebus.html.xslt b/ebus-xml/transform/ebus.html.xslt new file mode 100644 index 0000000..bf2d031 --- /dev/null +++ b/ebus-xml/transform/ebus.html.xslt @@ -0,0 +1,112 @@ +<?xml version="1.0" encoding="utf8"?> +<xsl:stylesheet version="1.0" + xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + + <xsl:template match="/"> + <html> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=utf8" /> + <style type="text/css"> + table { + border: 1px solid gray; + width: 100%; + } + table td { + border-left: 1px dotted gray; + border-right: 1px + dotted gray; + } + + table th { + border: 1px dotted gray; + } + </style> + </head> + <body> + <h2>Ebus Geräte</h2> + <table class="devices"> + <tr> + <th>Adresse</th> + <th>Gerät</th> + <th>Typ</th> + </tr> + <xsl:for-each select="ebus/devices/device"> + <tr> + <td> + <!-- anchor --> + <xsl:value-of select="@address" /> + </td> + <td> + <xsl:value-of select="text()" /> + </td> + <td> + <xsl:value-of select="@type" /> + </td> + </tr> + </xsl:for-each> + </table> + + <h2>Ebus Pakete</h2> + <table class="packets"> + <tr> + <th>Primary Command</th> + <th>Secondary Command</th> + <th>Name</th> + <th>Description</th> + </tr> + <xsl:for-each select="ebus/packets/packet"> + <tr> + <td> + <xsl:value-of select="@primary" /> + </td> + <td> + <xsl:value-of select="@secondary" /> + </td> + <td> + <xsl:value-of select="@name" /> + </td> + <td> + <xsl:value-of select="@description" /> + </td> + </tr> + <tr> + <td /> + <td colspan="3"> + <table class="fields"> + <tr> + <th>offset</th> + <th>typ</th> + <th>name</th> + <th>Description</th> + </tr> + <xsl:for-each select="fields/*"> + <tr> + <td> + <xsl:value-of select="@offset" /> + </td> + <td> + <xsl:value-of select="name()" /> + </td> + <td> + <xsl:value-of select="@name" /> + </td> + <td> + <xsl:value-of select="text()" /> + </td> + </tr> + </xsl:for-each> + </table> + </td> + </tr> + <tr> + <td colspan="4"> + <hr /> + </td> + </tr> + </xsl:for-each> + </table> + </body> + </html> + </xsl:template> + +</xsl:stylesheet> diff --git a/ebus-xml/transform/ebus.txt.xslt b/ebus-xml/transform/ebus.txt.xslt new file mode 100644 index 0000000..dda1e33 --- /dev/null +++ b/ebus-xml/transform/ebus.txt.xslt @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="utf8"?> +<xsl:stylesheet version="1.0" +xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> +<!-- TODO: padding --> + <xsl:output method="text" /> + <xsl:template match="/"> +=== Ebus Geräte + +Adresse | Gerät | Typ + + <xsl:for-each select="ebus/devices/device"> + <xsl:value-of select="@address"/> + <xsl:text>|</xsl:text> + <xsl:value-of select="text()"/> + <xsl:text>|</xsl:text> + <xsl:value-of select="@type"/> + <xsl:text> +</xsl:text> + </xsl:for-each> + +=== Ebus Pakete + +Primary Command | Secondary Command | Name | Description + ---- offset | typ | name | description + <xsl:for-each select="ebus/packets/packet"> + <xsl:value-of select="@primary"/> + <xsl:text>|</xsl:text> + <xsl:value-of select="@secondary"/> + <xsl:text>|</xsl:text> + <xsl:value-of select="@name"/> + <xsl:text>|</xsl:text> + <xsl:value-of select="@description"/> + + <xsl:for-each select="fields/*"> + <xsl:value-of select="@offset"/> + <xsl:text>|</xsl:text> + <xsl:value-of select="name()"/> + <xsl:text>|</xsl:text> + <xsl:value-of select="@name"/> + <xsl:text>|</xsl:text> + <xsl:value-of select="text()"/> + <xsl:text> + </xsl:text> + </xsl:for-each> + <xsl:text> + </xsl:text> + </xsl:for-each> + </xsl:template> +</xsl:stylesheet> |