Author: Derick Rethans
Date: 2007-04-03 10:29:40 +0200 (Tue, 03 Apr 2007)
New Revision: 4801

Log:
- Added XSL template to convert rst to ezxml
- Update description generation script to create RST, and from there on
  EZXML that can be put online.
- Added links to the documentation on this overview page.

Added:
   docs/rstxml2ezxml.xsl
   docs/website/components_descriptions_marketing.ezxml
Modified:
   docs/website/components_descriptions_marketing.txt
   scripts/generate_descriptions_file.sh

Added: docs/rstxml2ezxml.xsl
===================================================================
--- docs/rstxml2ezxml.xsl       2007-04-03 08:24:43 UTC (rev 4800)
+++ docs/rstxml2ezxml.xsl       2007-04-03 08:29:40 UTC (rev 4801)
@@ -0,0 +1,147 @@
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
+       xsl:extension-element-prefixes="php"
+       version='1.0'>
+
+       <xsl:output method="xml" encoding="UTF-8" omit-xml-declaration="yes"/>
+
+<xsl:template match="document">
+<xsl:apply-templates/>
+</xsl:template>
+
+<xsl:template match="enumerated_list">
+<ol>
+<xsl:apply-templates/>
+</ol>
+</xsl:template>
+
+<xsl:template match="bullet_list">
+<ul>
+<xsl:apply-templates/>
+</ul>
+</xsl:template>
+
+<xsl:template match="list_item">
+<li>
+<xsl:apply-templates/>
+</li>
+</xsl:template>
+
+<xsl:template match="document/title">
+<header>
+       <xsl:attribute name="level">1</xsl:attribute>
+<xsl:apply-templates/>
+</header>
+</xsl:template>
+
+<xsl:template match="section/title">
+<anchor>
+       <xsl:attribute name="name"><xsl:value-of 
select="@refid"/></xsl:attribute>
+</anchor>
+<header>
+       <xsl:attribute name="level">2</xsl:attribute>
+<xsl:apply-templates/>
+</header>
+</xsl:template>
+
+<xsl:template match="section/section/title">
+<anchor>
+       <xsl:attribute name="name"><xsl:value-of 
select="@refid"/></xsl:attribute>
+</anchor>
+<header>
+       <xsl:attribute name="level">3</xsl:attribute>
+<xsl:apply-templates/>
+</header>
+</xsl:template>
+
+<xsl:template match="paragraph">
+<p>
+       <xsl:apply-templates/>
+</p>
+</xsl:template>
+       
+<xsl:template match="paragraph/text()">
+<xsl:call-template name="remove-newline"/>
+</xsl:template>
+
+<xsl:template match="reference/text()">
+<xsl:call-template name="remove-newline"/>
+</xsl:template>
+
+<xsl:template name="remove-newline">
+   <xsl:param name="text" select="."/>
+   <xsl:choose>
+   <xsl:when test="contains($text, '&#xa;')">
+      <xsl:value-of select="substring-before($text, '&#xa;')"/>
+      <xsl:text> </xsl:text>
+      <xsl:call-template name="remove-newline">
+          <xsl:with-param name="text" select="substring-after($text, 
'&#xa;')"/>
+      </xsl:call-template>
+   </xsl:when>
+   <xsl:otherwise>
+       <xsl:value-of select="$text"/>
+   </xsl:otherwise>
+   </xsl:choose>
+</xsl:template>
+       
+<xsl:template match="strong">
+<strong>
+       <xsl:apply-templates/>
+</strong>
+</xsl:template>
+       
+<xsl:template match="table">
+<table>
+       <xsl:attribute name="border">0</xsl:attribute>
+       <xsl:attribute name="class">list</xsl:attribute>
+       <xsl:apply-templates/>
+</table>
+</xsl:template>
+
+<xsl:template match="row">
+<tr>
+       <xsl:apply-templates/>
+</tr>
+</xsl:template>
+
+<xsl:template match="comment">
+</xsl:template>
+
+
+<xsl:template match="thead/row/entry">
+<th>
+       <xsl:apply-templates/>
+</th>
+</xsl:template>
+
+<xsl:template match="tbody/row/entry">
+<td>
+       <xsl:apply-templates/>
+</td>
+</xsl:template>
+
+<xsl:template match="entry/paragraph">
+<xsl:apply-templates/>
+</xsl:template>
+
+<xsl:template match="reference">
+<link>
+       <xsl:if test="@refid">
+               <xsl:attribute name="href">#<xsl:value-of 
select="@refid"/></xsl:attribute>
+       </xsl:if>
+       <xsl:if test="@ids">
+               <xsl:attribute name="href">#<xsl:value-of 
select="@ids"/></xsl:attribute>
+       </xsl:if>
+       <xsl:if test="@refuri">
+               <xsl:attribute name="href"><xsl:value-of 
select="@refuri"/></xsl:attribute>
+       </xsl:if>
+       <xsl:apply-templates/>
+</link>
+</xsl:template>
+
+<xsl:template match="target">
+<anchor>
+       <xsl:attribute name="name"><xsl:value-of select="@ids"/></xsl:attribute>
+</anchor>
+       <xsl:apply-templates/>
+</xsl:template>
+</xsl:stylesheet>

Added: docs/website/components_descriptions_marketing.ezxml
===================================================================
--- docs/website/components_descriptions_marketing.ezxml        2007-04-03 
08:24:43 UTC (rev 4800)
+++ docs/website/components_descriptions_marketing.ezxml        2007-04-03 
08:29:40 UTC (rev 4801)
@@ -0,0 +1 @@
+<anchor name=""/><header level="2">Archive</header><p>The component allows you 
to create, modify, and extract archive files of various formats.  The currently 
supported archives formats are Tar (with the flavours: ustar, v7, pax, and gnu) 
and Zip.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_Archive.html">Documentation</link></p><anchor
 name="id1"/><anchor name=""/><header level="2">Base</header><p>The Base 
package provides the basic infrastructure that all packages rely on. Therefore 
every component relies on this package.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_Base.html">Documentation</link></p><anchor
 name="id2"/><anchor name=""/><header level="2">Cache</header><p>A solution for 
caching, supporting multiple backends allowing you to specify the best 
performing solution for your caching-problem.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_Cache.html">Documentation</link></p><anchor
 name="id3"/><anchor name=""/><header level="2">Configuration</header><p>A 
component that allows you to use configuration files in different formats. The 
formats include the standard .ini file, and an array based format.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_Configuration.html">Documentation</link></p><anchor
 name="id4"/><anchor name=""/><header level="2">ConsoleTools</header><p>A set 
of classes to do different actions with the console (also called shell). It can 
render a progress bar, tables and a status bar and contains a class for parsing 
command line options.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_ConsoleTools.html">Documentation</link></p><anchor
 name="id5"/><anchor name=""/><header level="2">Database</header><p>A 
lightweight database layer on top of PHP's PDO that allows you to utilize a 
database without having to take care of differences in SQL 
dialects.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_Database.html">Documentation</link></p><anchor
 name="id6"/><anchor name=""/><header level="2">DatabaseSchema</header><p>A set 
of classes that allow you to extract information from a database schema, 
compare database schemas and apply a set of changes to a database 
schema.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_DatabaseSchema.html">Documentation</link></p><anchor
 name="id7"/><anchor name=""/><header level="2">Debug</header><p>This component 
provides a set of classes that help you to debug an application. It provides 
timers and report generators for different formats that give a summary of 
warnings and errors that occurred within your application.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_Debug.html">Documentation</link></p><anchor
 name="id8"/><anchor name=""/><header level="2">EventLog</header><p>Allows you 
to log events or audit trails into files or other storage spaces in different 
formats.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_EventLog.html">Documentation</link></p><anchor
 name="id9"/><anchor name=""/><header 
level="2">EventLogDatabaseTiein</header><p>Contains the database writer backend 
for the EventLog component.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_EventLogDatabaseTiein.html">Documentation</link></p><anchor
 name="id10"/><anchor name=""/><header level="2">Execution</header><p>Provides 
functionality to give feedback to your application's users when a fatal error 
happened or an uncaught exception was thrown.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_Execution.html">Documentation</link></p><anchor
 name="id11"/><anchor name=""/><header level="2">Feed</header><p>This component 
handles parsing and creating RSS and ATOM feeds.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_Feed.html">Documentation</link></p><anchor
 name="id12"/><anchor name=""/><header level="2">File</header><p>Provides 
support for file operations which are not covered by PHP or are just 
missing.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_File.html">Documentation</link></p><anchor
 name="id13"/><anchor name=""/><header level="2">Graph</header><p>A component 
for creating pie charts, line graphs and other kinds of diagrams.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_Graph.html">Documentation</link></p><anchor
 name="id14"/><anchor name=""/><header level="2">ImageAnalysis</header><p>This 
class allows you to analyse image files in different ways. At least the MIME 
type of the file is returned. In some cases (JPEG, TIFF and GIF) additional 
information is gathered as well.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_ImageAnalysis.html">Documentation</link></p><anchor
 name="id15"/><anchor name=""/><header level="2">ImageConversion</header><p>A 
set of classes to apply different filters on images, such as colour changes, 
resizing and special effects.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_ImageConversion.html">Documentation</link></p><anchor
 name="id16"/><anchor name=""/><header level="2">Mail</header><p>The component 
allows you construct and/or parse Mail messages conforming to the mail 
standard. It has support for attachments, multipart messages and HTML mail. It 
also interfaces with SMTP to send mail or IMAP, POP3 or mbox to retrieve 
e-mail.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_Mail.html">Documentation</link></p><anchor
 name="id17"/><anchor name=""/><header 
level="2">PersistentObject</header><p>This component allows you to store an 
arbitrary data structures to a fixed database table. The component provides all 
the functionality needed to fetch, list, delete etc these 
datastructures.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_PersistentObject.html">Documentation</link></p><anchor
 name="id18"/><anchor name=""/><header 
level="2">PersistentObjectDatabaseSchemaTiein</header><p>This component allows 
the automatic generation of PersistentObject definition files from 
DatabaseSchema definitions.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_PersistentObjectDatabaseSchemaTiein.html">Documentation</link></p><anchor
 name="id19"/><anchor name=""/><header 
level="2">PhpGenerator</header><p>Provides a simple interface for creating PHP 
files and executing PHP code.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_PhpGenerator.html">Documentation</link></p><anchor
 name="id20"/><anchor name=""/><header level="2">SignalSlot</header><p>The 
SignalSlot component implements a mechanism for inter and intra object 
communication through the use of signals and slots.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_SignalSlot.html">Documentation</link></p><anchor
 name="id21"/><anchor name=""/><header 
level="2">SystemInformation</header><p>Provides access to common system 
variables, such as CPU type and speed, and the available amount of 
memory.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_SystemInformation.html">Documentation</link></p><anchor
 name="id22"/><anchor name=""/><header level="2">Template</header><p>A fully 
functional Templating system, supporting template compilation in different 
levels, user defined functions and operators, an optimizer, output escaping for 
different output handlers to prevent XSS and other security problems and a plug 
in system for extra functionality (such as a Translation system).</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_Template.html">Documentation</link></p><anchor
 name="id23"/><anchor name=""/><header level="2">Translation</header><p>A 
component that reads XML translation definitions (the Qt Linguist format), 
supports caching of translation contexts and presents you with a class to apply 
translations to strings. A filter system allows you to transform translation 
definitions for special use.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_Translation.html">Documentation</link></p><anchor
 name="id24"/><anchor name=""/><header 
level="2">TranslationCacheTiein</header><p>This component adds the 
TranslationCache backend to the Translation component and allows cached 
translations.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_TranslationCacheTiein.html">Documentation</link></p><anchor
 name="id25"/><anchor name=""/><header level="2">Url</header><p>The Url package 
provides basic operations to handle urls (parse, build, get/set path, get/set 
query).</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_Url.html">Documentation</link></p><anchor
 name="id26"/><anchor name=""/><header level="2">UserInput</header><p>A 
component that assists you to safely user input variables coming into your 
application. It builds on top of PHP's filter extension and extends it by 
providing a more inituitive API.</p><p><link 
href="http://ez.no/doc/components/view/latest/(file)/introduction_UserInput.html">Documentation</link></p><anchor
 name="id27"/>

Modified: docs/website/components_descriptions_marketing.txt
===================================================================
--- docs/website/components_descriptions_marketing.txt  2007-04-03 08:24:43 UTC 
(rev 4800)
+++ docs/website/components_descriptions_marketing.txt  2007-04-03 08:29:40 UTC 
(rev 4801)
@@ -1,118 +1,253 @@
-<b>Archive</b>
+Archive
+-------
 The component allows you to create, modify, and extract archive files of 
 various formats.  The currently supported archives formats are Tar (with 
 the flavours: ustar, v7, pax, and gnu) and Zip. 
 
-<b>Base</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_Archive.html
+
+Base
+----
 The Base package provides the basic infrastructure that all packages rely on.
 Therefore every component relies on this package.
 
-<b>Cache</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_Base.html
+
+Cache
+-----
 A solution for caching, supporting multiple backends allowing you to specify
 the best performing solution for your caching-problem.
 
-<b>Configuration</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_Cache.html
+
+Configuration
+-------------
 A component that allows you to use configuration files in different formats.
 The formats include the standard .ini file, and an array based format.
 
-<b>ConsoleTools</b>
+Documentation__
+
+__ 
http://ez.no/doc/components/view/latest/(file)/introduction_Configuration.html
+
+ConsoleTools
+------------
 A set of classes to do different actions with the console (also called shell).
 It can render a progress bar, tables and a status bar and contains a class for
 parsing command line options.
 
-<b>Database</b>
+Documentation__
+
+__ 
http://ez.no/doc/components/view/latest/(file)/introduction_ConsoleTools.html
+
+Database
+--------
 A lightweight database layer on top of PHP's PDO that allows you to utilize a
 database without having to take care of differences in SQL dialects.
 
-<b>DatabaseSchema</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_Database.html
+
+DatabaseSchema
+--------------
 A set of classes that allow you to extract information from a database schema,
 compare database schemas and apply a set of changes to a database schema.
 
-<b>Debug</b>
+Documentation__
+
+__ 
http://ez.no/doc/components/view/latest/(file)/introduction_DatabaseSchema.html
+
+Debug
+-----
 This component provides a set of classes that help you to debug an
 application. It provides timers and report generators for different formats
 that give a summary of warnings and errors that occurred within your
 application.
 
-<b>EventLog</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_Debug.html
+
+EventLog
+--------
 Allows you to log events or audit trails into files or other storage spaces in
 different formats.
 
-<b>EventLogDatabaseTiein</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_EventLog.html
+
+EventLogDatabaseTiein
+---------------------
 Contains the database writer backend for the EventLog component.
 
-<b>Execution</b>
+Documentation__
+
+__ 
http://ez.no/doc/components/view/latest/(file)/introduction_EventLogDatabaseTiein.html
+
+Execution
+---------
 Provides functionality to give feedback to your application's users when a
 fatal error happened or an uncaught exception was thrown.
 
-<b>Feed</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_Execution.html
+
+Feed
+----
 This component handles parsing and creating RSS and ATOM feeds.
 
-<b>File</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_Feed.html
+
+File
+----
 Provides support for file operations which are not covered by PHP or are just
 missing.
 
-<b>Graph</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_File.html
+
+Graph
+-----
 A component for creating pie charts, line graphs and other kinds of diagrams.
 
-<b>ImageAnalysis</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_Graph.html
+
+ImageAnalysis
+-------------
 This class allows you to analyse image files in different ways. At least the
 MIME type of the file is returned. In some cases (JPEG, TIFF and GIF)
 additional information is gathered as well.
 
-<b>ImageConversion</b>
+Documentation__
+
+__ 
http://ez.no/doc/components/view/latest/(file)/introduction_ImageAnalysis.html
+
+ImageConversion
+---------------
 A set of classes to apply different filters on images, such as colour changes,
 resizing and special effects.
 
-<b>Mail</b>
+Documentation__
+
+__ 
http://ez.no/doc/components/view/latest/(file)/introduction_ImageConversion.html
+
+Mail
+----
 The component allows you construct and/or parse Mail messages conforming to 
 the mail standard. It has support for attachments, multipart messages and HTML 
 mail. It also interfaces with SMTP to send mail or IMAP, POP3 or mbox to 
 retrieve e-mail.
 
-<b>PersistentObject</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_Mail.html
+
+PersistentObject
+----------------
 This component allows you to store an arbitrary data structures to a fixed
 database table. The component provides all the functionality needed to fetch,
 list, delete etc these datastructures.
 
-<b>PersistentObjectDatabaseSchemaTiein</b>
+Documentation__
+
+__ 
http://ez.no/doc/components/view/latest/(file)/introduction_PersistentObject.html
+
+PersistentObjectDatabaseSchemaTiein
+-----------------------------------
 This component allows the automatic generation of PersistentObject definition
 files from DatabaseSchema definitions.
 
-<b>PhpGenerator</b>
+Documentation__
+
+__ 
http://ez.no/doc/components/view/latest/(file)/introduction_PersistentObjectDatabaseSchemaTiein.html
+
+PhpGenerator
+------------
 Provides a simple interface for creating PHP files and executing PHP code.
 
-<b>SignalSlot</b>
+Documentation__
+
+__ 
http://ez.no/doc/components/view/latest/(file)/introduction_PhpGenerator.html
+
+SignalSlot
+----------
 The SignalSlot component implements a mechanism for inter and intra object
 communication through the use of signals and slots.
 
-<b>SystemInformation</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_SignalSlot.html
+
+SystemInformation
+-----------------
 Provides access to common system variables, such as CPU type and speed, and the
 available amount of memory.
 
-<b>Template</b>
+Documentation__
+
+__ 
http://ez.no/doc/components/view/latest/(file)/introduction_SystemInformation.html
+
+Template
+--------
 A fully functional Templating system, supporting template compilation in
 different levels, user defined functions and operators, an optimizer, output
 escaping for different output handlers to prevent XSS and other security
 problems and a plug in system for extra functionality (such as a Translation
 system).
 
-<b>Translation</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_Template.html
+
+Translation
+-----------
 A component that reads XML translation definitions (the Qt Linguist format),
 supports caching of translation contexts and presents you with a class to apply
 translations to strings. A filter system allows you to transform translation
 definitions for special use.
 
-<b>TranslationCacheTiein</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_Translation.html
+
+TranslationCacheTiein
+---------------------
 This component adds the TranslationCache backend to the Translation component
 and allows cached translations.
 
-<b>Url</b>
+Documentation__
+
+__ 
http://ez.no/doc/components/view/latest/(file)/introduction_TranslationCacheTiein.html
+
+Url
+---
 The Url package provides basic operations to handle urls (parse, build,
 get/set path, get/set query).
 
-<b>UserInput</b>
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_Url.html
+
+UserInput
+---------
 A component that assists you to safely user input variables coming into your
 application. It builds on top of PHP's filter extension and extends it by
 providing a more inituitive API.
 
+Documentation__
+
+__ http://ez.no/doc/components/view/latest/(file)/introduction_UserInput.html
+

Modified: scripts/generate_descriptions_file.sh
===================================================================
--- scripts/generate_descriptions_file.sh       2007-04-03 08:24:43 UTC (rev 
4800)
+++ scripts/generate_descriptions_file.sh       2007-04-03 08:29:40 UTC (rev 
4801)
@@ -11,9 +11,20 @@
                continue;
        fi
        if test -f $i/DESCRIPTION; then
-               echo "<b>$packagename</b>";
+               echo $packagename
+               php -r "echo str_repeat('-', strlen('$packagename'));"
+               echo
 
                cat $i/DESCRIPTION
                echo
+               echo Documentation__
+               echo
+               echo __ 
'http://ez.no/doc/components/view/latest/(file)/introduction_'$packagename.html
+
+               echo
        fi
 done
+
+rst2xml docs/website/components_descriptions_marketing.txt > /tmp/desc.xml
+xsltproc docs/rstxml2ezxml.xsl /tmp/desc.xml > 
docs/website/components_descriptions_marketing.ezxml
+rm -rf /tmp/desc.xml

-- 
svn-components mailing list
svn-components@lists.ez.no
http://lists.ez.no/mailman/listinfo/svn-components

Reply via email to