<?xml version="1.0" encoding="utf-8" ?>

<rdf:RDF 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns="http://my.netscape.com/rdf/simple/0.9/">
<channel>
    <title>a programmer's best friend</title>
    <link>http://blog.php-tools.net/</link>
    <description>the blog of pat, the dog</description>
    <dc:language>en</dc:language>

    <image rdf:resource="http://blog.php-tools.net/templates/default/img/s9y_banner_small.png" />

    <items>
      <rdf:Seq>
        <rdf:li resource="http://blog.php-tools.net/archives/163-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/162-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/161-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/160-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/159-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/158-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/157-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/155-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/156-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/154-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/153-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/152-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/151-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/150-guid.html" />
        <rdf:li resource="http://blog.php-tools.net/archives/149-guid.html" />
      </rdf:Seq>
    </items>
</channel>

<image rdf:about="http://blog.php-tools.net/templates/default/img/s9y_banner_small.png">
        <url>http://blog.php-tools.net/templates/default/img/s9y_banner_small.png</url>
        <title>RSS: a programmer's best friend - the blog of pat, the dog</title>
        <link>http://blog.php-tools.net/</link>
        <width>100</width>
        <height>21</height>
    </image>


<item rdf:about="http://blog.php-tools.net/archives/163-guid.html">
    <title>patError 1.2.0 released</title>
    <link>http://blog.php-tools.net/archives/163-patError-1.2.0-released.html</link>
    <description>
    After a year of inactivity in our blog, there are finally some news worth mentioning. Some minutes ago, I release version 1.2.0 of patError. Although this release contains no new features, it might be interesting for any of you using patError, as I adjusted the code to PHP 5. When using this new version, you will get not E_NOTICE or E_STRICT warnings any more as it has been the case with previous releases. There will also be no E_DEPRECATED errors, when you make the switch to PHP 5.3.0. As usual, you can get the release from our &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1142&amp;amp;entry_id=163&quot;  onmouseover=&quot;window.status=&#039;http://pear.php-tools.net&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Visit our PEAR channel&quot;&gt;PEAR channel&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
I decided to port patError to PHP 5 while writing the second edition of my &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1143&amp;amp;entry_id=163&quot;  onmouseover=&quot;window.status=&#039;http://www.phpdesignpatterns.de&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Visit the PHP Design Patterns website&quot;&gt;PHP Design Patterns&lt;/a&gt; book, which covers patError as a depency of patTemplate. 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (schst)</dc:creator>
    <dc:subject>
    PAT, </dc:subject>
    <dc:date>2008-07-19T17:32:58Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=163</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=163</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/162-guid.html">
    <title>Conference-ish Autumn</title>
    <link>http://blog.php-tools.net/archives/162-Conference-ish-Autumn.html</link>
    <description>
    Today &lt;strong&gt;Timo&lt;/strong&gt; told me that his session proposal got approved! Yippie! We both applied for the &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1140&amp;amp;entry_id=162&quot;  onmouseover=&quot;window.status=&#039;http://ajaxinaction.de/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Conference Frankfurt, Germany November/2007&quot;&gt;AJAX in Action&lt;/a&gt; in Frankfurt November this year.&lt;br /&gt;
&lt;br /&gt;
I submitted a session about some essential JavaScript tricks for modular sites that make extensive use of Web 2.0 technologies. I planed to focus on real live examples - stuff that we implemented at &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1141&amp;amp;entry_id=162&quot;  onmouseover=&quot;window.status=&#039;http://my.nero.com&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Mutltimedia Community project of Nero&quot;&gt;My Nero&lt;/a&gt;, in other words sneak into a big AJAX site&#039;s internals . Unfortunately it got rejected &lt;img src=&quot;http://blog.php-tools.net/templates/default/img/emoticons/sad.png&quot; alt=&quot;:-(&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
However I&#039;m looking forward to see Timo&#039;s session about a flexible and easy to use &lt;strong&gt;AutoSave Framework&lt;/strong&gt;. Adapting his thoughts, you can add the AutoSave feature to any form on a web-site easily. As I know some internals about his implementation, I can tell you that he solved some big issues. Though he focused on reusability and came out with a bunch of really nice lines of code.&lt;br /&gt;
&lt;br /&gt;
It&#039;s going to become a very interesting conference this autumn.&lt;br /&gt;
 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (gERD)</dc:creator>
    <dc:subject>
    PHP, </dc:subject>
    <dc:date>2007-07-14T13:09:11Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=162</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=162</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/161-guid.html">
    <title>Testing FIT</title>
    <link>http://blog.php-tools.net/archives/161-Testing-FIT.html</link>
    <description>
    I just uploaded the package Testing_FIT to &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1135&amp;amp;entry_id=161&quot;  onmouseover=&quot;window.status=&#039;http://pear.php.net&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;PEAR&quot;&gt;PEAR&lt;/a&gt;. Testing_FIT is the PHP and pearish version of Ward Cunningham&#039;s FIT &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1136&amp;amp;entry_id=161&quot; title=&quot;http://fit.c2.com/&quot;  onmouseover=&quot;window.status=&#039;http://fit.c2.com/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;http://fit.c2.com/&lt;/a&gt;. As such it provides an easy to use framework for acceptance software tests. &lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;pear install Testing_FIT-beta&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
Simply install the PEAR package &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1137&amp;amp;entry_id=161&quot;  onmouseover=&quot;window.status=&#039;http://pear.php.net/package/Testing_FIT&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Testing FIT package homepage&quot;&gt;Testing_FIT&lt;/a&gt; browse the examples and write your own test classes. Of course, the PHP version of FIT provides the four basic fixtures: Action-, Column-, Row- and Primitve-Fixture. Also there is a Summary-Fixture that shows some statistics. &lt;br /&gt;
&lt;br /&gt;
You&#039;ll see, writing tests with this PEAR package is a piece of cake. Besides, the basic idea of FIT - using HTML documents providing test data will convince you. 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (gERD)</dc:creator>
    <dc:subject>
    PHP, PAT, </dc:subject>
    <dc:date>2007-06-20T19:20:31Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=161</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=161</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/160-guid.html">
    <title>I18n and such</title>
    <link>http://blog.php-tools.net/archives/160-I18n-and-such.html</link>
    <description>
    In lack of a better idea, I founded a new PAT Package: &lt;strong&gt;patI18n.&lt;/strong&gt; So far this package is just a draft and only exists in the SVN repository. As you might guess, patI18n is an abstraction layer for translating issues. Therefore it provides nearly the same interface as the famous GNU Gettext. Still, the actual translation is done by a chain of modules - this way everything is possible and the design stays open to new ideas.&lt;br /&gt;
&lt;br /&gt;
Of course, I didn&#039;t start patI18n out of the blue. Last year, I branched &lt;strong&gt;patForms&lt;/strong&gt; to use Gettext for translation instead of the proprietary internal solution. Since then, we have to maintain two branches of patForms. Yesterday I mended the implementation of patForms&#039; gettext branch to use patI18n. This way patForms got rid of all I18n functions (like setLocle) and stuff. My first tests show that everything works fine - still this code is experimental. However you are invited to check out the new versions and give it a go. &lt;br /&gt;
&lt;br /&gt;
Download the sources from our subversion server:&lt;br /&gt;
&lt;strong&gt;patI18n:&lt;/strong&gt; svn co http://www.php-tools.net/svn/patI18n/trunk/ patI18n&lt;br /&gt;
&lt;strong&gt;patForms:&lt;/strong&gt;  svn co http://www.php-tools.net/svn/patForms/branches/gettext/ patForms&lt;br /&gt;
&lt;br /&gt;
View the source code of patI18n at &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1134&amp;amp;entry_id=160&quot;  onmouseover=&quot;window.status=&#039;http://gerd.exit0.net/pat/i18n/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;patI18n source code and examples&quot;&gt;gERD&#039;s playground&lt;/a&gt;. 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (gERD)</dc:creator>
    <dc:subject>
    PHP, PAT, </dc:subject>
    <dc:date>2007-06-18T06:45:37Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=160</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=160</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/159-guid.html">
    <title>patTemplate 3.1.0 stable released</title>
    <link>http://blog.php-tools.net/archives/159-patTemplate-3.1.0-stable-released.html</link>
    <description>
    After two years of development we finally released patTemplate 3.1.0 as a stable version. The changes since the last beta release are minimal. You can read about all changes since the last stable release in the &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1132&amp;amp;entry_id=159&quot;  onmouseover=&quot;window.status=&#039;http://pear.php-tools.net/index.php?package=patTemplate&amp;release=3.1.0&amp;downloads&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;patTemplate changelog&quot;&gt;changelog&lt;/a&gt;. patTemplate can be downloaded from our PEAR channel server or easily installed via the PEAR installer:&lt;br /&gt;
&lt;code&gt;$ pear channel-discover pear.php-tools.net&lt;br /&gt;
$ pear install pat/patTemplate&lt;/code&gt;&lt;br /&gt;
More information can be found the the &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1133&amp;amp;entry_id=159&quot;  onmouseover=&quot;window.status=&#039;http://trac.php-tools.net/patTemplate&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;patTemplate development&quot;&gt;patTemplate development site&lt;/a&gt;. 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (schst)</dc:creator>
    <dc:subject>
    PHP, PAT, </dc:subject>
    <dc:date>2007-06-02T15:30:11Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=159</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=159</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/158-guid.html">
    <title>Stubbles Blog is live!</title>
    <link>http://blog.php-tools.net/archives/158-Stubbles-Blog-is-live!.html</link>
    <description>
    &lt;a class=&#039;serendipity_image_link&#039; href=&quot;http://blog.php-tools.net/exit.php?url_id=1123&amp;amp;entry_id=158&quot; title=&quot;http://www.stubbles.org&quot;  onmouseover=&quot;window.status=&#039;http://www.stubbles.org&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;&lt;img width=&#039;132&#039; height=&#039;113&#039; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.php-tools.net/uploads/stubbles.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;Yesterday, the &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1124&amp;amp;entry_id=158&quot;  onmouseover=&quot;window.status=&#039;http://www.stubbles.net&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Go to Stubbles development site&quot;&gt;Stubbles&lt;/a&gt; project &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1125&amp;amp;entry_id=158&quot;  onmouseover=&quot;window.status=&#039;http://www.stubbles.org/archives/1-The-Stubbles-Blog-is-here!.html&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Stubbles Blog announcement&quot;&gt;got&lt;/a&gt; its own blog at &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1123&amp;amp;entry_id=158&quot;  onmouseover=&quot;window.status=&#039;http://www.stubbles.org&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Go to Stubbles blog&quot;&gt;www.stubbles.org&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Stubbles is a new framework for PHP 5.2 which focuses on clean OO design, the use of patterns and ports some features from the langauges commonly referred to &quot;enterprise languages&quot; to PHP. If you are looking for new ways to develop your PHP applications, you should definitely take a look at the &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1127&amp;amp;entry_id=158&quot;  onmouseover=&quot;window.status=&#039;http://stubbles.net/wiki/Docs/Reflection&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Read stubReflection documentation&quot;&gt;stubReflection package&lt;/a&gt;, which brings Java Annotations to PHP. The next issue of the German &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1128&amp;amp;entry_id=158&quot;  onmouseover=&quot;window.status=&#039;http://www.phpmag.de&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Go to phpmag.de&quot;&gt;PHP Magazin&lt;/a&gt; will feature an article, that shows how to use this package.&lt;br /&gt;
&lt;br /&gt;
The blog will feature tutorials, thoughts on Stubbles and surely rants on PHP itself. So it will be definitely worth the read.&lt;br /&gt;
&lt;br /&gt;
Stubbles currently is developed by Frank Kleine, Nico Steiner and Stephan Schmidt. The design of the Stubbles logo and the Stubblog design have been created by &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1129&amp;amp;entry_id=158&quot;  onmouseover=&quot;window.status=&#039;http://www.mistralys.com/who/stubbles&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Go to mistralys website&quot;&gt;Sebastian Mordziol of Mistralys&lt;/a&gt;, who is also responsible for the PAT design and several PAT packages. 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (schst)</dc:creator>
    <dc:subject>
    PHP, </dc:subject>
    <dc:date>2007-02-16T17:05:00Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=158</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=158</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/157-guid.html">
    <title>PHP Programming with PEAR reviewed</title>
    <link>http://blog.php-tools.net/archives/157-PHP-Programming-with-PEAR-reviewed.html</link>
    <description>
    &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1098&amp;amp;entry_id=157&quot; title=&quot;http://www.amazon.com/gp/product/1904811795?ie=UTF8&amp;tag=schstnet-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1904811795&quot;  onmouseover=&quot;window.status=&#039;http://www.amazon.com/gp/product/1904811795?ie=UTF8&amp;tag=schstnet-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1904811795&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;&lt;img width=&#039;73&#039; height=&#039;90&#039; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.php-tools.net/uploads/1904811795.serendipityThumb.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;Cal Evans, editor of the Zend Developer Zone, wrote a &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1099&amp;amp;entry_id=157&quot; title=&quot;http://devzone.zend.com/node/view/id/1644&quot;  onmouseover=&quot;window.status=&#039;http://devzone.zend.com/node/view/id/1644&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;review of &quot;PHP Programming with PEAR&quot;&lt;/a&gt;, the book I wrote together with Carsten Lucke, Aaron Wormus and Stoyan Stefanov.&lt;br /&gt;
The review is very positive and what&#039;s especially nice about it, is, that he liked Chapter 4 (Web services) the most and this is one of the chapters that I wrote. If you are interested in buying a copy of the book, you can find more information at the &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1100&amp;amp;entry_id=157&quot;  onmouseover=&quot;window.status=&#039;http://www.thepearbook.com/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;http://www.thepearbook.com/&quot;&gt;book website&lt;/a&gt;, which has been set up by Aaron. And of course you can directly order it at &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1098&amp;amp;entry_id=157&quot; title=&quot;http://www.amazon.com/gp/product/1904811795?ie=UTF8&amp;tag=schstnet-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1904811795&quot;  onmouseover=&quot;window.status=&#039;http://www.amazon.com/gp/product/1904811795?ie=UTF8&amp;tag=schstnet-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1904811795&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;Amazon.com&lt;/a&gt;. 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (schst)</dc:creator>
    <dc:subject>
    PHP, </dc:subject>
    <dc:date>2007-02-11T09:20:11Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=157</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=157</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/155-guid.html">
    <title>patTemplate Documentation in Bahasa Indonesia</title>
    <link>http://blog.php-tools.net/archives/155-patTemplate-Documentation-in-Bahasa-Indonesia.html</link>
    <description>
    We are vary proud to hear that there are patTemplate enthusiasts around the world. Actually, we just learned thet there is a &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1091&amp;amp;entry_id=155&quot;  onmouseover=&quot;window.status=&#039;http://direktori.or.id/pattemplate&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;translated documentation&quot;&gt;patTemplate Documentation in Bahasa Indonesia&lt;/a&gt; available. Thanks a lot for translation! 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (gERD)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2007-02-01T19:41:10Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=155</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=155</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/156-guid.html">
    <title>patTemplate Documentation in Bahasa Indonesia</title>
    <link>http://blog.php-tools.net/archives/156-patTemplate-Documentation-in-Bahasa-Indonesia.html</link>
    <description>
    We are vary proud to hear that there are patTemplate enthusiasts around the world. Actually, we just learned thet there is a &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1093&amp;amp;entry_id=156&quot;  onmouseover=&quot;window.status=&#039;http://direktori.or.id/pattemplate&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;translated documentation&quot;&gt;patTemplate Documentation in Bahasa Indonesia&lt;/a&gt; available. Thanks a lot for translation! 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (gERD)</dc:creator>
    <dc:subject>
    PHP, PAT, </dc:subject>
    <dc:date>2007-02-01T19:41:10Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=156</wfw:comment>
        <slash:comments>4294967295</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=156</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/154-guid.html">
    <title>Nightly builds for XJConf available</title>
    <link>http://blog.php-tools.net/archives/154-Nightly-builds-for-XJConf-available.html</link>
    <description>
    &lt;img width=&#039;110&#039; height=&#039;100&#039; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.php-tools.net/uploads/XJConf.serendipityThumb.gif&quot; alt=&quot;&quot; /&gt;XJConfForPHP, the XML-to-object-mapper, &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1087&amp;amp;entry_id=154&quot; title=&quot;http://www.frankkleine.de/&quot;  onmouseover=&quot;window.status=&#039;http://www.frankkleine.de/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Frank Kleine&lt;/a&gt; and me are working on is now available as a daily snapshot from &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1088&amp;amp;entry_id=154&quot;  onmouseover=&quot;window.status=&#039;http://snaps.php-tools.net&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;null&quot;&gt;snaps.php-tools.net&lt;/a&gt;.&lt;br /&gt;
While the project started as a 1:1 port of the &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1089&amp;amp;entry_id=154&quot;  onmouseover=&quot;window.status=&#039;http://java.schst.net/XJConf&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;http://java.schst.net/XJConf&quot;&gt;Java version&lt;/a&gt;, we are constantly adding new features as well as unit tests. If you need a flexible solution to parse XML documents and create PHP data structures, you might give &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1090&amp;amp;entry_id=154&quot; title=&quot;http://php.xjconf.net&quot;  onmouseover=&quot;window.status=&#039;http://php.xjconf.net&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;XJConfForPHP&lt;/a&gt; a try. 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (schst)</dc:creator>
    <dc:subject>
    PHP, </dc:subject>
    <dc:date>2006-12-12T21:29:21Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=154</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=154</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/153-guid.html">
    <title>FIT for PHP</title>
    <link>http://blog.php-tools.net/archives/153-FIT-for-PHP.html</link>
    <description>
    &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1083&amp;amp;entry_id=153&quot;  onmouseover=&quot;window.status=&#039;http://gerd.exit0.net/pat/PHPFIT/phpfit-egMath.gif&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Screenshot of PHPFIT&#039;s test output&quot;&gt;&lt;img border=&quot;0&quot; width=&#039;77&#039; height=&#039;110&#039;  src=&quot;http://blog.php-tools.net/uploads/phpfit-egMath.serendipityThumb.gif&quot; align=&quot;left&quot; vspace=&quot;7&quot; hspace=&quot;7&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;As I&#039;m going to talk aboit &lt;strong&gt;FIT&lt;/strong&gt; at the &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1084&amp;amp;entry_id=153&quot;  onmouseover=&quot;window.status=&#039;http://phpkonferenz.de/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;International PHP Conference 2006&quot;&gt;PHP Conference&lt;/a&gt;, I like to invite you to check out the preview of PHPFIT package. &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1085&amp;amp;entry_id=153&quot;  onmouseover=&quot;window.status=&#039;http://gerd.exit0.net/pat/PHPFIT/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;PHPFIT as tar archive and PEAR  package&quot;&gt;Simply download and install the PEAR package or tar archive.&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;FIT&lt;/strong&gt; stands for &lt;em&gt;Framework for Integrated Test&lt;/em&gt; (See: &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1086&amp;amp;entry_id=153&quot;  onmouseover=&quot;window.status=&#039;http://fit.c2.com/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Homepage of Ward Cunningham&#039;s FIT&quot;&gt;FIT Wiki&lt;/a&gt;) realices acceptance tests with heavy use of HTML documents. Those documents do not just contain the usual &lt;em&gt;blah-blah&lt;/em&gt; but hard &lt;em&gt;facts&lt;/em&gt;. The &lt;em&gt;facts&lt;/em&gt;are actually stored in (HTML) tables. This is where FIT - respectively PHPFIT - comes in. The FIT knows which testing class must be executed for a particular table and which function to call to calculate the results of a specific cell and the framework makes it very easy for you to implement concrete test-classes. &lt;br /&gt;
&lt;br /&gt;
Also FIT simply handles HTML documents. As such they can be viewed a common browsers and even created with Word-a-like editors. Hence FIT goes far beyond what traditional &lt;em&gt;unit testing&lt;/em&gt; offers (FIT is not meant to replace unit-tests) and may enrich your next project.&lt;br /&gt;
&lt;br /&gt;
Hopefully PHPFIT will be available as official PEAR package. Unfortunately I lost my password. So I was not capable to push the proposal any further &lt;img src=&quot;http://blog.php-tools.net/templates/default/img/emoticons/sad.png&quot; alt=&quot;:-(&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; But this will change. 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (gERD)</dc:creator>
    <dc:subject>
    PHP, PAT, </dc:subject>
    <dc:date>2006-10-17T19:34:52Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=153</wfw:comment>
        <slash:comments>4294967243</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=153</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/152-guid.html">
    <title>PHP programming with PEAR published</title>
    <link>http://blog.php-tools.net/archives/152-PHP-programming-with-PEAR-published.html</link>
    <description>
    &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1075&amp;amp;entry_id=152&quot; title=&quot;http://www.amazon.com/gp/product/1904811795?ie=UTF8&amp;tag=schstnet-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1904811795&quot;  onmouseover=&quot;window.status=&#039;http://www.amazon.com/gp/product/1904811795?ie=UTF8&amp;tag=schstnet-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1904811795&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;&lt;img width=&#039;73&#039; height=&#039;90&#039; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.php-tools.net/uploads/1904811795.serendipityThumb.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;As &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1076&amp;amp;entry_id=152&quot;  onmouseover=&quot;window.status=&#039;http://www.wormus.com/aaron/stories/2006/10/12/the-pear-book-is-out.html&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;http://www.wormus.com/aaron/stories/2006/10/12/the-pear-book-is-out.html&quot;&gt;Aaron blogged earlier today&lt;/a&gt; &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1077&amp;amp;entry_id=152&quot;  onmouseover=&quot;window.status=&#039;http://www.packtpub.com/pear/book&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;http://www.packtpub.com/pear/book&quot;&gt;&quot;PHP Programming with PEAR&quot;&lt;/a&gt; has finally been published. It is a colaboration between Carsten Lucke, Stoyan Stefanov, Aaron Wormus and me. It takes a quite practical approach that showcases a lot of code to get the job done very quickly using various &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1078&amp;amp;entry_id=152&quot;  onmouseover=&quot;window.status=&#039;http://pear.php-tools.net&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;PHP Extension and Application Repository&quot;&gt;PEAR&lt;/a&gt; packages. Packages covered in the book range from Date and MDB2 to XML_Serializer and Services_Webservices. I contributed to chapters that introduce the reader to the XML and Webservice packages, as I contributed a lot of code to these categories.&lt;br /&gt;
&lt;br /&gt;
The book is available for order from &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1075&amp;amp;entry_id=152&quot; title=&quot;http://www.amazon.com/gp/product/1904811795?ie=UTF8&amp;tag=schstnet-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1904811795&quot;  onmouseover=&quot;window.status=&#039;http://www.amazon.com/gp/product/1904811795?ie=UTF8&amp;tag=schstnet-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1904811795&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Amazon.com&lt;/a&gt; or if you are living in Europe you might as well order it from &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1080&amp;amp;entry_id=152&quot; title=&quot;http://www.amazon.de/gp/product/1904811795?ie=UTF8&amp;tag=schstnet-21&amp;linkCode=as2&amp;camp=1638&amp;creative=6742&amp;creativeASIN=1904811795&quot;  onmouseover=&quot;window.status=&#039;http://www.amazon.de/gp/product/1904811795?ie=UTF8&amp;tag=schstnet-21&amp;linkCode=as2&amp;camp=1638&amp;creative=6742&amp;creativeASIN=1904811795&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;Amazon.de&lt;/a&gt;&lt;img src=&quot;http://www.assoc-amazon.de/e/ir?t=schstnet-21&amp;l=as2&amp;o=3&amp;a=1904811795&quot; width=&quot;1&quot; height=&quot;1&quot; border=&quot;0&quot; alt=&quot;&quot; style=&quot;border:none !important; margin:0px !important;&quot; /&gt; or &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1081&amp;amp;entry_id=152&quot;  onmouseover=&quot;window.status=&#039;http://www.amazon.co.uk/gp/product/1904811795&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;Buy it Amazon.co.uk&quot;&gt;Amazon.co.uk&lt;/a&gt;. Aaron also set up a &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1082&amp;amp;entry_id=152&quot;  onmouseover=&quot;window.status=&#039;http://www.thepearbook.com/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;http://www.thepearbook.com/&quot;&gt;wiki for the book&lt;/a&gt;, where you can find more information or even contribute. 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (schst)</dc:creator>
    <dc:subject>
    PHP, </dc:subject>
    <dc:date>2006-10-12T15:49:11Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=152</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=152</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/151-guid.html">
    <title>PHP Design Patterns published</title>
    <link>http://blog.php-tools.net/archives/151-PHP-Design-Patterns-published.html</link>
    <description>
    &lt;a class=&#039;serendipity_image_link&#039; href=&quot;http://blog.php-tools.net/exit.php?url=aHR0cDovL3d3dy5waHBkZXNpZ25wYXR0ZXJucy5kZQ==&amp;amp;entry_id=151&quot; title=&quot;http://www.phpdesignpatterns.de&quot;  onmouseover=&quot;window.status=&#039;http://www.phpdesignpatterns.de&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;&lt;img width=&#039;79&#039; height=&#039;110&#039; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.php-tools.net/uploads/php-design-patterns.serendipityThumb.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;After nearly a year of work, my first &lt;a href=&quot;http://blog.php-tools.net/exit.php?url=aHR0cDovL3d3dy5waHBkZXNpZ25wYXR0ZXJucy5kZQ==&amp;amp;entry_id=151&quot; title=&quot;http://www.phpdesignpatterns.de&quot;  onmouseover=&quot;window.status=&#039;http://www.phpdesignpatterns.de&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;very own book&lt;/a&gt; has finally been published and arrived last weekend.&lt;br /&gt;
&lt;em&gt;PHP Design Patterns&lt;/em&gt; is published by O&#039;Reilly and introduces the reader to the world of patterns by providing practical examples. The patterns used in the book include simple patterns like the Singleton, Subject/Observer or Composite, but also more complex patterns like the Intercepting Filter or Event-Dispatcher patterns. If you never used PHP5 for object-oriented development, you might also finde the short introduction to PHP5&#039;s new features, including interceptors, SPL and exceptions, worth reading. All patterns covered in the book can be applied to web applications, and to stay on the practical side of development, &lt;a href=&quot;http://blog.php-tools.net/exit.php?url=aHR0cDovL3BlYXIucGhwLm5ldA==&amp;amp;entry_id=151&quot;  onmouseover=&quot;window.status=&#039;http://pear.php.net&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;http://pear.php.net&quot;&gt;PEAR&lt;/a&gt;, &lt;a href=&quot;http://blog.php-tools.net/exit.php?url=aHR0cDovL2h0dHA6Ly9wcm9wZWwucGhwZGIub3JnL3RyYWMv&amp;amp;entry_id=151&quot; title=&quot;http://http://propel.phpdb.org/trac/&quot;  onmouseover=&quot;window.status=&#039;http://http://propel.phpdb.org/trac/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;Propel&lt;/a&gt; and &lt;a href=&quot;http://blog.php-tools.net/exit.php?url=aHR0cDovL3RyYWMucGhwLXRvb2xzLm5ldC9wYXRUZW1wbGF0ZQ==&amp;amp;entry_id=151&quot;  onmouseover=&quot;window.status=&#039;http://trac.php-tools.net/patTemplate&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;http://trac.php-tools.net/patTemplate&quot;&gt;patTemplate&lt;/a&gt; are used in some examples.&lt;br /&gt;
&lt;br /&gt;
So if you are capable of understanding German and interested in learning more about patterns and software design in general, feel free to &lt;a href=&quot;http://blog.php-tools.net/exit.php?url=aHR0cDovL3d3dy5hbWF6b24uZGUvZXhlYy9vYmlkb3MvcmVkaXJlY3Q/bGlua19jb2RlPWFzMiZwYXRoPUFTSU4vMzg5NzIxNDQyMyZ0YWc9c2Noc3RuZXQtMjEmY2FtcD0xNjM4JmNyZWF0aXZlPTY3NDI=&amp;amp;entry_id=151&quot; title=&quot;http://www.amazon.de/exec/obidos/redirect?link_code=as2&amp;path=ASIN/3897214423&amp;tag=schstnet-21&amp;camp=1638&amp;creative=6742&quot;  onmouseover=&quot;window.status=&#039;http://www.amazon.de/exec/obidos/redirect?link_code=as2&amp;path=ASIN/3897214423&amp;tag=schstnet-21&amp;camp=1638&amp;creative=6742&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;buy it at Amazon.de&lt;/a&gt;. More information and code examples can be found at the &lt;a href=&quot;http://blog.php-tools.net/exit.php?url=aHR0cDovL3d3dy5waHBkZXNpZ25wYXR0ZXJucy5kZS8=&amp;amp;entry_id=151&quot;  onmouseover=&quot;window.status=&#039;http://www.phpdesignpatterns.de/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;http://www.phpdesignpatterns.de/&quot;&gt;book website&lt;/a&gt; or at &lt;a href=&quot;http://blog.php-tools.net/exit.php?url=aHR0cDovL3d3dy5vcmVpbGx5LmRlL2NhdGFsb2cvcGhwZGVzaWducGF0Z2VyLw==&amp;amp;entry_id=151&quot;  onmouseover=&quot;window.status=&#039;http://www.oreilly.de/catalog/phpdesignpatger/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;  title=&quot;http://www.oreilly.de/catalog/phpdesignpatger/&quot;&gt;O&#039;Reilly&#039;s online catalog&lt;/a&gt;. If you&#039;re still not convinced to buy the book, it might help, that the book has been published as a hardcover so it will last longer than most other books &lt;img src=&quot;http://blog.php-tools.net/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (schst)</dc:creator>
    <dc:subject>
    PHP, </dc:subject>
    <dc:date>2006-10-09T16:48:31Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=151</wfw:comment>
        <slash:comments>7</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=151</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/150-guid.html">
    <title>XJConf for PHP</title>
    <link>http://blog.php-tools.net/archives/150-XJConf-for-PHP.html</link>
    <description>
    &lt;a class=&#039;serendipity_image_link&#039; href=&quot;http://blog.php-tools.net/exit.php?url_id=1054&amp;amp;entry_id=150&quot; title=&quot;http://php.xjconf.net&quot;  onmouseover=&quot;window.status=&#039;http://php.xjconf.net&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot;&gt;&lt;img width=&#039;110&#039; height=&#039;100&#039; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.php-tools.net/uploads/XJConf.serendipityThumb.gif&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;Today, &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1055&amp;amp;entry_id=150&quot; title=&quot;http://www.frankkleine.de&quot;  onmouseover=&quot;window.status=&#039;http://www.frankkleine.de&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;Frank&lt;/a&gt; and I released the first version of &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1054&amp;amp;entry_id=150&quot; title=&quot;http://php.xjconf.net&quot;  onmouseover=&quot;window.status=&#039;http://php.xjconf.net&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;XJConf For PHP&lt;/a&gt;. This is a port of the original &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1058&amp;amp;entry_id=150&quot; title=&quot;http://java.schst.net/XJConf&quot;  onmouseover=&quot;window.status=&#039;http://java.schst.net/XJConf&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;XJConf&lt;/a&gt; I developed for Java. XJConf allows you to map complex XML documents to data structures by defining the mapping rules in a simple XML-based language. You may define the type for each tag (objects, arrays, primitives) as well as how its attributes, child elements and enclosed character data should be treated. When creating objects, you may also define the setter methods to nest the objects. There are plenty of examples available in the &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1058&amp;amp;entry_id=150&quot; title=&quot;http://java.schst.net/XJConf&quot;  onmouseover=&quot;window.status=&#039;http://java.schst.net/XJConf&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;documentation &lt;/a&gt;of the original java version. Most of the &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1059&amp;amp;entry_id=150&quot; title=&quot;http://php.xjconf.net/browser/trunk/examples&quot;  onmouseover=&quot;window.status=&#039;http://php.xjconf.net/browser/trunk/examples&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;examples&lt;/a&gt; have been ported to PHP as well by Frank, who did most of the work in this project.&lt;br /&gt;
&lt;br /&gt;
If you want to give XJConf For PHP a try, you can get it via our &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1060&amp;amp;entry_id=150&quot; title=&quot;http://pear.php-tools.net&quot;  onmouseover=&quot;window.status=&#039;http://pear.php-tools.net&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;PEAR channel&lt;/a&gt; or from SVN at &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1061&amp;amp;entry_id=150&quot; title=&quot;http://svn.xjconf.net/XJConfForPHP/&quot;  onmouseover=&quot;window.status=&#039;http://svn.xjconf.net/XJConfForPHP/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;http://svn.xjconf.net/XJConfForPHP/&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
The fantastic XJConf logo has been developed and designed by &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1062&amp;amp;entry_id=150&quot; title=&quot;https://www.openbc.com/hp/Georg_Rothweiler/&quot;  onmouseover=&quot;window.status=&#039;https://www.openbc.com/hp/Georg_Rothweiler/&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; &gt;Georg Rothweiler&lt;/a&gt;. 
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (schst)</dc:creator>
    <dc:subject>
    PHP, PAT, </dc:subject>
    <dc:date>2006-09-05T19:56:04Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=150</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=150</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.php-tools.net/archives/149-guid.html">
    <title>Analyzing aide (advanced intrusion detection environment) output with PHP</title>
    <link>http://blog.php-tools.net/archives/149-Analyzing-aide-advanced-intrusion-detection-environment-output-with-PHP.html</link>
    <description>
    Since we started hosting our sites on our own server we had some nasty cracker-attacks (most often certainly script-kiddies) causing lots of traffic by hosting crappy italian movies or by installing rootkits. To at least have a chance recognizing whether the system had been compromised we started to use &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1033&amp;amp;entry_id=149&quot;  onmouseover=&quot;window.status=&#039;http://www.cs.tut.fi/~rammer/aide.html&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; title=&quot;advanced intrusion detection environment&quot;&gt;aide&lt;/a&gt; some time ago. Aide keeps track of changes in the filesystem and provides us with a human-readable report once a day.&lt;br /&gt;
&lt;br /&gt;
However, sometimes changes in the filesystem happen because of (security-)updates and not because a cracker exchanged your ps binary against his own personal version. &lt;img src=&quot;http://blog.php-tools.net/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; Of course aide has no chance to identify such valid and unvalid changes. 3rdPEARty&#039;s &lt;a href=&quot;http://blog.php-tools.net/exit.php?url_id=1034&amp;amp;entry_id=149&quot;  onmouseover=&quot;window.status=&#039;http://www.3rdpearty.net/index.php?package=Util_AideAnalyzer&#039;;return true;&quot; onmouseout=&quot;window.status=&#039;&#039;;return true;&quot; title=&quot;P3AR::Util_AideAnalyzer&quot;&gt;Util_AideAnalyzer&lt;/a&gt; is a solution to that problem - read on if you&#039;re interested.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;&lt;a href=&quot;http://blog.php-tools.net/archives/149-Analyzing-aide-advanced-intrusion-detection-environment-output-with-PHP.html#extended&quot;&gt;Continue reading &quot;Analyzing aide (advanced intrusion detection environment) output with PHP&quot;&lt;/a&gt;
    </description>

    <dc:publisher>a programmer's best friend</dc:publisher>
    <dc:creator>nospam@example.com (luckec)</dc:creator>
    <dc:subject>
    PHP, </dc:subject>
    <dc:date>2006-08-27T20:47:30Z</dc:date>
    <wfw:comment>http://blog.php-tools.net/wfwcomment.php?cid=149</wfw:comment>
        <slash:comments>4294967292</slash:comments>
        <wfw:commentRss>http://blog.php-tools.net/rss.php?version=1.0&amp;type=comments&amp;cid=149</wfw:commentRss>
    
    
</item>

</rdf:RDF>
