<?xml version="1.0" encoding="iso-8859-1"?>
<rdf:RDF
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns:dc="http://purl.org/dc/elements/1.1/"
 xmlns="http://purl.org/rss/1.0/"
>
  <channel rdf:about="http://news.xp-framework.net/10/Editorial">  
    <title>Editorial</title>
    <link>http://news.xp-framework.net/10/Editorial</link>
    <description>XP Framework</description>
    <dc:language>en-US</dc:language>
    <dc:date>2013-05-24T09:07:44+02:00</dc:date>
    <dc:creator>xp-admin@xp-framework.net</dc:creator>
    <dc:publisher/>
    <dc:rights/>
    <items>    
      <rdf:Seq>      
        <rdf:li rdf:resource="http://news.xp-framework.net/article/533/2013/05/16/XP_Release_procedure"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/467/2012/06/22/1.0.0_-_nine_years_later"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/428/2011/12/23/TDS_Protocol_implementation"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/394/2010/12/16/apt-get_meets_the_XP-Framework"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/387/2010/10/11/Array_and_map_types"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/384/2010/09/27/Show_me_the_code"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/380/2010/09/22/SVN_URLs"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/343/2010/02/01/Bind_server_sockets_to_any_free_port"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/314/2009/09/06/Deprecation"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/296/2009/08/11/Unified_runners_in_the_web"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/293/2009/04/05/PHP-Arrays__Maps_and_lists"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/191/2007/05/24/KISS__Keep_it_simply_surveilled"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/151/2007/01/29/Making_use_of_PHP5_features"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/124/2006/10/24/Why_to_prefer_scriptlets_over__standard__web_scripts"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/122/2006/10/15/Shipping_an_application_with_XP_archives"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/119/2006/10/14/Using_packages_in_XP"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/118/2006/10/14/Creating_packages_for_XP"/>
        <rdf:li rdf:resource="http://news.xp-framework.net/article/60/2005/07/17/Instance_creation_expression_in_PHP4"/>
      </rdf:Seq>
    </items>
  </channel>
  <item rdf:about="http://news.xp-framework.net/article/533/2013/05/16/XP_Release_procedure">  
    <title>XP Release procedure</title>
    <link>http://news.xp-framework.net/article/533/2013/05/16/XP_Release_procedure</link>
    <description>After introducing &lt;a href=&quot;https://github.com/xp-framework/build&quot;&gt;the new build system&lt;/a&gt; a while ago, we've produced quite a number of releases already. Time for some documentation, now that we know the procedure works as expected.&lt;br/&gt;&lt;br/&gt;The XP Wiki now contains a step by step howto for creating releases and release candidates. &lt;a href=&quot;https://github.com/xp-framework/xp-framework/wiki/Building-a-release&quot;&gt;Here it is&lt;/a&gt;!</description>
    <dc:date>2013-05-16T18:33:31+02:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/467/2012/06/22/1.0.0_-_nine_years_later">  
    <title>1.0.0 - nine years later</title>
    <link>http://news.xp-framework.net/article/467/2012/06/22/1.0.0_-_nine_years_later</link>
    <description>&lt;img width='211' height='283' align=&quot;right&quot; src=&quot;/image/fetch/uploads/birthday.png&quot; alt=&quot;Happy birthday&quot; /&gt;Nine years ago we released &lt;b&gt;XP Framework, version 1.0.0&lt;/b&gt; with the following change log:&lt;br/&gt;&lt;br/&gt;&lt;pre&gt;  . No more support for PHP smaller than 4.3.0&lt;br/&gt;  . There is now a common subclass for Errors and Exceptions called Throwable&lt;br/&gt;  . An exceptions stacktrace is an array of lang.StackTraceElement objects&lt;br/&gt;  . Exception::getStackTrace() returns this array and no longer a string&lt;br/&gt;  . Removes Object::getName() which has been deprecated for a while now&lt;br/&gt;  . Uses xp::registry to keep the global namespace free of bullshit&lt;/pre&gt;&lt;br/&gt;Although we had already been using it in production since more than a year at that time (&lt;i&gt;the &quot;Initial revision&quot; was on 2002-02-21&lt;/i&gt;), we decided not to give it a more or less &quot;stable&quot; version until June 22nd, 2003.&lt;br/&gt;&lt;br clear=&quot;all/&gt;&lt;b&gt;We've come a long way from there on&lt;/b&gt; - here's a recap with the most important milestones.</description>
    <dc:date>2012-06-22T14:12:00+02:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/428/2011/12/23/TDS_Protocol_implementation">  
    <title>TDS Protocol implementation</title>
    <link>http://news.xp-framework.net/article/428/2011/12/23/TDS_Protocol_implementation</link>
    <description>One of the XP Framework's strategies is to &lt;b&gt;keep compatibility&lt;/b&gt; over a large number of PHP versions on multiple platforms. For example, the message digest API contains &lt;a href=&quot;https://github.com/xp-framework/xp-framework/blob/master/core/src/main/php/security/checksum/DefaultDigestImpl.class.php#L30&quot;&gt;a workaround&lt;/a&gt; for certain PHP versions with a broken CRC32b implementation, hiding it transparently from the user. In other places like the &lt;tt&gt;lang.Process&lt;/tt&gt; class, we take care of &lt;a href=&quot;https://github.com/xp-framework/xp-framework/blob/master/core/src/main/php/lang/Process.class.php#L152&quot;&gt;platform differences&lt;/a&gt;, employing OS and feature detection, and even compensating for some implementation vagaries. Constructs like this can be found in various other places in our code base, and while this is definitely not desirable, it at least saves the user from going through this hell, and this way, we support the full range of PHP 5.2.10 through 5.3.8 (&lt;i&gt;inofficially 5.2.0 - 5.5.0-dev also works&lt;/i&gt;) on a variety of Windows and Un*x systems.&lt;br/&gt;&lt;br/&gt;Following this strategy, we go as far as rewriting functionality previously available through a PHP extension to userland implementations: The FTP API (because of &lt;a href=&quot;/article/298/0000/00/00/&quot;&gt;limitations in streaming support&lt;/a&gt;), the &lt;a href=&quot;/article/413/2011/05/16/&quot;&gt;parse_url() function rewrite&lt;/a&gt; to work around behaviour changes, &lt;a href=&quot;/article/414/2011/06/12/&quot;&gt;userland ini file parsing&lt;/a&gt; to support Unicode, a &lt;a href=&quot;/article/417/2011/08/21/&quot;&gt;reimplemented MD5-crypt&lt;/a&gt; to compensate for a critical bug in &lt;tt&gt;crypt()&lt;/tt&gt; in PHP 5.3.7 and &lt;a href=&quot;/article/404/2011/01/16/&quot;&gt;our own MySQL protocol&lt;/a&gt; implementation to be able to support old MySQL 4.x instances, to name only a few cases.&lt;br/&gt;&lt;br/&gt;The &lt;a href=&quot;https://github.com/xp-framework/xp-framework/pull/87&quot;&gt;TDS protocol implementation&lt;/a&gt; supporting connectivity with Microsoft SQL Server and Sybase database servers is the most recent addition to this stack. Though not yet completely finished, we expect to be able to add it to one of the upcoming 5.8 releases.</description>
    <dc:date>2011-12-23T09:30:00+01:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/394/2010/12/16/apt-get_meets_the_XP-Framework">  
    <title>apt-get meets the XP-Framework</title>
    <link>http://news.xp-framework.net/article/394/2010/12/16/apt-get_meets_the_XP-Framework</link>
    <description>&lt;img width='110' height='110' align=&quot;right&quot; src=&quot;/image/fetch/uploads/debian-package.png&quot; alt=&quot;Debian Package&quot;/&gt;The XP Framework has an easy-to-use installation mechanism - simply downloading a setup script and piping it directly to PHP. What this mechanism cannot do though is to install PHP as a dependency itself, which is usually done in an operating-system dependant manner. On Debian and Ubuntu distributions, the packaging mechanism is called APT (Advanced Packaging Tool), which installs Debian packages (.deb files). In order to build such a package, we need to create a control file as well as the intended directory structure and wrap all that up using the &quot;dpkg&quot; tool (there's a &lt;a href=&quot;http://www.ibm.com/developerworks/linux/library/l-debpkg.html&gt;howto over at IBM's developerworks&lt;/a&gt;). Unfortunately, this approach requires the Debian packaging tools to be available for the build platform - a situation we cannot rely on. This article shows a solution written in the XP Framework.</description>
    <dc:date>2010-12-16T16:39:00+01:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/387/2010/10/11/Array_and_map_types">  
    <title>Array and map types</title>
    <link>http://news.xp-framework.net/article/387/2010/10/11/Array_and_map_types</link>
    <description>&lt;a href=&quot;http://de3.php.net/manual/de/language.types.array.php&quot;&gt;PHP arrays&lt;/a&gt; are so comfortably usable for just about everything - mixing types inside, dynamically resizing them, mapping keys to values, this to that, and - using references - even can be used to create graphs. In addition, the PHP core library comes with &lt;a href=&quot;http://de3.php.net/manual/de/ref.array.php&quot;&gt;more than 70 functions&lt;/a&gt; for manipulating them. This is great for rapid prototyping, as is the void-pointer in C.&lt;br/&gt;&lt;br/&gt;The downsides of this approach is interop with most other programming languages, where arrays and maps are something conceptually different (Perl even has separate syntax for them, &lt;tt&gt;@&lt;/tt&gt; and &lt;tt&gt;%&lt;/tt&gt;, and a mind-blowing implementation of the latter). For example, to know whether we're passing an &lt;tt&gt;int[]&lt;/tt&gt; or a map of strings to object instances is going to make a big difference if we're, for instance, using EASC or SOAP to communicate with, say, Java or C#.</description>
    <dc:date>2010-10-11T09:51:48+02:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/384/2010/09/27/Show_me_the_code">  
    <title>Show me the code</title>
    <link>http://news.xp-framework.net/article/384/2010/09/27/Show_me_the_code</link>
    <description>After reading and agreeing with &lt;a href=&quot;http://www.travisswicegood.com/2010/08/04/show-me-the-code/&quot;&gt;Show me the code&lt;/a&gt; some time ago, I thought about how to integrate source code examples on the XP Framework website. While lots of blog postings here contain sourcecode, this is not prominent enough - so I set up a new site dedicated to this purpose: The &lt;a href=&quot;http://code.planet-xp.net/&quot;&gt;XP Code galleries&lt;/a&gt;. &lt;b&gt;Enjoy&lt;emoticon id=&quot;regular_smile&quot; text=&quot;:-)&quot;/&gt;&lt;/b&gt;</description>
    <dc:date>2010-09-27T10:37:45+02:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/380/2010/09/22/SVN_URLs">  
    <title>SVN URLs</title>
    <link>http://news.xp-framework.net/article/380/2010/09/22/SVN_URLs</link>
    <description>The XP Framework's checkouts you have on your disk should be originating from &lt;tt&gt;svn.xp-framework.net&lt;/tt&gt;, and not from any other host name. While this may currently still work as all the other domains in use like &lt;tt&gt;xp-framework.de&lt;/tt&gt; still point to the same server, we might want to change this in the future. To check what exactly you're using, type the following:&lt;br/&gt;&lt;br/&gt;&lt;pre&gt;  ~/devel/xp/trunk $ svn info . | grep ^URL&lt;br/&gt;  URL: svn+ssh://$USER@xpsrv.net/home/svn/xp/trunk&lt;br/&gt;&lt;/pre&gt;Should this read any hostname except &lt;tt&gt;svn.xp-framework.net&lt;/tt&gt;, you can change it as follows:&lt;br/&gt;&lt;br/&gt;&lt;pre&gt;  ~/devel/xp/trunk $ svn switch --relocate \&lt;br/&gt;    svn+ssh://$USER@xpsrv.net/home/svn/xp \&lt;br/&gt;    svn+ssh://$USER@svn.xp-framework.net/home/svn/xp&lt;br/&gt;&lt;/pre&gt;</description>
    <dc:date>2010-09-22T08:26:34+02:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/343/2010/02/01/Bind_server_sockets_to_any_free_port">  
    <title>Bind server sockets to any free port</title>
    <link>http://news.xp-framework.net/article/343/2010/02/01/Bind_server_sockets_to_any_free_port</link>
    <description>At the company I work for, we let the XP Framework's unittest run on various different machines, including Windows 2008 server and 32- as well as 64-bit Debian Linux boxes, with PHP versions ranging from 5.2.0 - 5.3.1 (&lt;i&gt;lots of permutation, yes&lt;/i&gt;). &lt;br/&gt;&lt;center&gt;&lt;img width='541' height='383' src=&quot;/image/fetch/uploads/xp-hudson.png&quot; alt=&quot;Hudson&quot; /&gt;&lt;/center&gt;&lt;br/&gt;On some of the newer machines we have configured &lt;a href=&quot;http://hudson-ci.org/&gt;Hudson&lt;/a&gt; to start multiple test runners at the same time. This lead to problems with the integration tests (for the FTP API, for example) where we actually fork off a standalone server in the background: The port in use was hardcoded. While this is perfectly OK normally, with mutiples suites executing simultaneously and trying to bind the same port, we were running into problems.</description>
    <dc:date>2010-02-01T16:00:15+01:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/314/2009/09/06/Deprecation">  
    <title>Deprecation</title>
    <link>http://news.xp-framework.net/article/314/2009/09/06/Deprecation</link>
    <description>Every now and then, we find out our decisions from the past weren't the most elegant ones, limit us in unnecessary ways, or don't fit into the bigger picture anymore. This is a natural thing, as we move on and gather experience, we see our solutions in a different light - and we see how a problem could have been solved in other ways. In reflective moments we start thinking &quot;If I had to do this again today, ...&quot;. This happens in personal life but also - for programmers - with code we have written.&lt;br/&gt;&lt;br clear=&quot;all&quot;/&gt;</description>
    <dc:date>2009-09-06T11:47:00+02:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/296/2009/08/11/Unified_runners_in_the_web">  
    <title>Unified runners in the web</title>
    <link>http://news.xp-framework.net/article/296/2009/08/11/Unified_runners_in_the_web</link>
    <description>The XP framework had offered developers the power of an easy class loading setup via the new XP runners that are delivered with every release since several releases now. These runners have proven themselves very useful in day-to-day business, so we're working on porting them to the web!&lt;br/&gt;&lt;br/&gt;With the so-called web-runners these new cool and useful features will become available for you:&lt;ul&gt;&lt;br/&gt;&lt;li&gt;&lt;b&gt;Easier classpath setup&lt;/b&gt;&lt;br/&gt;Classpaths will be constructed from &lt;tt&gt;.pth&lt;/tt&gt; files, in the same manner as &lt;tt&gt;xpcli&lt;/tt&gt; does it.&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;b&gt;No boilerplate &quot;index.php&quot;s any more&lt;/b&gt;&lt;br/&gt;you won't need the same &lt;tt&gt;index.php&lt;/tt&gt; over and over in every project again; even more: you don't need any entrypoint &lt;tt&gt;.php&lt;/tt&gt; any more even for SOAP- or JSON-endpoints.&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;b&gt;Multiple etc/ configuration directories&lt;/b&gt;&lt;br/&gt;you can switch between multipe &lt;tt&gt;etc/&lt;/tt&gt;, eg. one for the test server and one for production, by changing a single file&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;b&gt;Overwrite arbitrary settings for special servers&lt;/b&gt;&lt;br/&gt;you can overwrite settings, eg. debugging settings, based on where your application runs - eg. on the development machine, you can have debugging enabled, while on production it's disabled. You don't need to have different files for them - no more mistakenly committed debug settings.&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;This article shows you how you can make use of the web runners in a XP application. Read on for more information!</description>
    <dc:date>2009-08-11T17:30:00+02:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/293/2009/04/05/PHP-Arrays__Maps_and_lists">  
    <title>PHP-Arrays: Maps and lists</title>
    <link>http://news.xp-framework.net/article/293/2009/04/05/PHP-Arrays__Maps_and_lists</link>
    <description>In the PHP world, arrays are maps are lists:&lt;br/&gt;&lt;code&gt;&lt;span&gt;  &lt;/span&gt;&lt;span class=&quot;variable&quot;&gt;$a&lt;/span&gt;&lt;span class=&quot;default&quot;&gt;= array&lt;/span&gt;&lt;span class=&quot;bracket&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;default&quot;&gt;1, 2, 3&lt;/span&gt;&lt;span class=&quot;bracket&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;default&quot;&gt;;                &lt;/span&gt;&lt;span class=&quot;comment&quot;&gt;// #1: A list&lt;br/&gt;&lt;/span&gt;&lt;span class=&quot;default&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;variable&quot;&gt;$b&lt;/span&gt;&lt;span class=&quot;default&quot;&gt;= array&lt;/span&gt;&lt;span class=&quot;bracket&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;string&quot;&gt;'key'&lt;/span&gt;&lt;span class=&quot;default&quot;&gt; =&amp;gt; &lt;/span&gt;&lt;span class=&quot;string&quot;&gt;'value'&lt;/span&gt;&lt;span class=&quot;default&quot;&gt;, ...&lt;/span&gt;&lt;span class=&quot;bracket&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;default&quot;&gt;;  &lt;/span&gt;&lt;span class=&quot;comment&quot;&gt;// #2: A map&lt;br/&gt;&lt;/span&gt;&lt;span class=&quot;default&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;variable&quot;&gt;$c&lt;/span&gt;&lt;span class=&quot;default&quot;&gt;= array&lt;/span&gt;&lt;span class=&quot;bracket&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;default&quot;&gt;1, 2, &lt;/span&gt;&lt;span class=&quot;string&quot;&gt;'a'&lt;/span&gt;&lt;span class=&quot;default&quot;&gt; =&amp;gt; &lt;/span&gt;&lt;span class=&quot;string&quot;&gt;'b'&lt;/span&gt;&lt;span class=&quot;bracket&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;default&quot;&gt;;       &lt;/span&gt;&lt;span class=&quot;comment&quot;&gt;// #3: Mix of both&lt;/span&gt;&lt;span class=&quot;default&quot;&gt;&lt;/span&gt;&lt;/code&gt;&lt;br/&gt;Now this is (almost) perfect as long as you stay inside the PHP world; the only thing you have to know is when to be able to use array functions operating on &quot;associative arrays&quot; (like &lt;tt&gt;asort&lt;/tt&gt;) instead of &quot;numeric arrays&quot; (&lt;tt&gt;sort&lt;/tt&gt;), which is usually achieved by a bit of discipline. This is where a slight problem even inside the PHP world (and that's why it's only &lt;tt&gt;almost&lt;/tt&gt; perfect) starts showing: &lt;b&gt;There is no easy way to keep the both apart.&lt;/b&gt;&lt;br/&gt;</description>
    <dc:date>2009-04-05T12:30:39+02:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/191/2007/05/24/KISS__Keep_it_simply_surveilled">  
    <title>KISS: Keep it simply surveilled</title>
    <link>http://news.xp-framework.net/article/191/2007/05/24/KISS__Keep_it_simply_surveilled</link>
    <description>In the enterprise world, not everything is a website - there are a lot more types of applications you have to deploy to actually have a running enterprise website / application.&lt;br/&gt;&lt;br/&gt;Often one of these &quot;hidden&quot; applications are cron jobs which take care of cleaning out not completed order jobs, doing lengthy cache pre-calculations, perform data mining or many other things.&lt;br/&gt;&lt;br/&gt;Crons - or in general - backend applications are therefore an important part of your whole application. Running regularily they do their duty.&lt;br/&gt;&lt;br/&gt;Of course, such a critical task should be surveilled. Read on to see how you can do effective, but simple surveillance with the XP framework's tools in combination with the open source surveillance system Nagios:</description>
    <dc:date>2007-05-24T12:43:07+02:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/151/2007/01/29/Making_use_of_PHP5_features">  
    <title>Making use of PHP5 features</title>
    <link>http://news.xp-framework.net/article/151/2007/01/29/Making_use_of_PHP5_features</link>
    <description>Today at work we had a presentation called &quot;PHP5 features&quot;, where Alex and me presented what we consider the most appealing new possibilities.&lt;br/&gt;&lt;br/&gt;Here's a wrap-up:&lt;br/&gt;</description>
    <dc:date>2007-01-29T23:01:41+01:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/124/2006/10/24/Why_to_prefer_scriptlets_over__standard__web_scripts">  
    <title>Why to prefer scriptlets over &quot;standard&quot; web scripts</title>
    <link>http://news.xp-framework.net/article/124/2006/10/24/Why_to_prefer_scriptlets_over__standard__web_scripts</link>
    <description>If you've written web applications with the XP framework, you've probably made use of the &lt;tt&gt;scriptlet.xml.workflow&lt;/tt&gt; API. It provides templating via XSL files and in general a very comfortable way of creating dynamic web pages. Feel tempted to use &quot;standard&quot; web scripting (&lt;i&gt;see below for example&lt;/i&gt;) for simpler tasks like CSV export, dynamic image creation or RSS feeds? &lt;br/&gt;&lt;br/&gt;Here's why you shouldn't...</description>
    <dc:date>2006-10-24T13:57:44+02:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/122/2006/10/15/Shipping_an_application_with_XP_archives">  
    <title>Shipping an application with XP archives</title>
    <link>http://news.xp-framework.net/article/122/2006/10/15/Shipping_an_application_with_XP_archives</link>
    <description>Ever since, distributing XP applications to the &quot;end user&quot; could be quite a pain: you would've to tell people to install subversion on their servers, show them how to check out a copy of the XP framework with all it's millions of directories, let them put all required directories into their include_path - mostly there's more than one directory which needs to be included.&lt;br/&gt;Then, whenever they want to upgrade the application, they need to update their checkout, exposing them to the danger of conflicts or incompatibilities in the classes API each time.&lt;br/&gt;&lt;br/&gt;Now, with the arrival of XP class archives (which actually already exist for quite some time), this is a lot easier! Read on to see how shipping XP applications could be like in the future.</description>
    <dc:date>2006-10-15T18:58:51+02:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/119/2006/10/14/Using_packages_in_XP">  
    <title>Using packages in XP</title>
    <link>http://news.xp-framework.net/article/119/2006/10/14/Using_packages_in_XP</link>
    <description>Since &lt;a href=&quot;http://xp-framework.net/rfc/0074&quot;&gt;RFC #0074&lt;/a&gt; the XP framework has the built-in power to load classes from an class archive.&lt;br/&gt;&lt;br/&gt;Now, imagine you want to install an XP application like dialog, and you have downloaded an tar file containg the application from the project's homepage. What do you do with it?</description>
    <dc:date>2006-10-14T20:26:00+02:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/118/2006/10/14/Creating_packages_for_XP">  
    <title>Creating packages for XP</title>
    <link>http://news.xp-framework.net/article/118/2006/10/14/Creating_packages_for_XP</link>
    <description>Today &lt;a href=&quot;http://xp-framework.net/rfc/0074&quot;&gt;RFC #0074&lt;/a&gt; has been accepted and merged into the public XP repository.&lt;br/&gt;&lt;br/&gt;RFC #0074 describes some changes that bring the ability to the framework, to load classes from an archive rather than directly from a directory in the classpath. That does not seem to be so special, but it brings you some very cool things in the day-to-day work with XP.&lt;br/&gt;&lt;br/&gt;So, let's take a look on how to create a new archive (.xar was chosen as extension for the time being, though this could still be changed).&lt;br/&gt;</description>
    <dc:date>2006-10-14T20:05:00+02:00</dc:date>
  </item>
  <item rdf:about="http://news.xp-framework.net/article/60/2005/07/17/Instance_creation_expression_in_PHP4">  
    <title>Instance creation expression in PHP4</title>
    <link>http://news.xp-framework.net/article/60/2005/07/17/Instance_creation_expression_in_PHP4</link>
    <description>The instance creation expression lets you create anonymous classes using the following form:&lt;br/&gt;&lt;br/&gt;  &lt;tt&gt;new ClassOrInterfaceType (ArgumentListopt) { ClassBody }&lt;/tt&gt;&lt;br/&gt;&lt;br/&gt;Supplying a &lt;tt&gt;ClassBody&lt;/tt&gt; is available in PHP5 when using our patch to it, but not in PHP4. This article shows a way to simulate it.</description>
    <dc:date>2005-07-17T18:22:56+02:00</dc:date>
  </item>
</rdf:RDF>
