<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Nexista Web App Framework</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/" />
    <link rel="self" type="application/atom+xml" href="http://www.nexista.org/atom.xml" />
    <id>tag:www.nexista.org,2008-09-16://235</id>
    <updated>2010-06-19T16:31:45Z</updated>
    <subtitle>Open Source PHP XML XSL Framework - Wiki - Docs - Forums</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type 4.34-en</generator>

<entry>
    <title>Potential Conflict Between PHP 5.3.2 and Nexista?</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2010/06/potential-conflict-between-php-532-and-nexista.html" />
    <id>tag:www.nexista.org,2010:/blog//235.20992</id>

    <published>2010-06-19T16:29:52Z</published>
    <updated>2010-06-19T16:31:45Z</updated>

    <summary>After a hefty apt-get dist-upgrade, I was getting major segmentation faults on debian squeeze. After downgrading to php5 5.2.6.dfsg.1-1+lenny8 I&apos;m back in business, but this definitely worth mentioning. More details to follow soon......</summary>
    <author>
        <name>superadmin</name>
        
    </author>
    
        <category term="Nexista Development" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="nexista" label="nexista" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="php5" label="php5" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        <![CDATA[<p>After a hefty apt-get dist-upgrade, I was getting major segmentation faults on debian squeeze. After downgrading to php5 5.2.6.dfsg.1-1+lenny8 I'm back in business, but this definitely worth mentioning.</p>

<p>More details to follow soon...</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Nexista Moved to Github</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2010/06/nexista-moved-to-github.html" />
    <id>tag:www.nexista.org,2010:/blog//235.20959</id>

    <published>2010-06-11T21:39:32Z</published>
    <updated>2010-06-11T21:45:35Z</updated>

    <summary>Like many open source projects, Nexista is now hosted at Github! Nexista @ Github...</summary>
    <author>
        <name>Albert</name>
        
    </author>
    
        <category term="Nexista Development" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="git" label="git" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="source" label="source" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="subversion" label="subversion" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        <![CDATA[<p>Like many open source projects, Nexista is now hosted at Github!</p>

<ul>
<li><a href="http://github.com/docunext/nexista">Nexista @ Github</a></li>
</ul>
]]>
        

    </content>
</entry>

<entry>
    <title>HTTP Methods</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2009/11/http-methods.html" />
    <id>tag:www.nexista.org,2009:/blog//235.19683</id>

    <published>2009-11-30T16:06:20Z</published>
    <updated>2010-08-18T04:05:24Z</updated>

    <summary>I just tagged Nexista 0.2.5 because I made a significant change to how sitemaps are processed (though the change does not break backwards compatibility).</summary>
    <author>
        <name>Albert</name>
        
    </author>
    
        <category term="Sitemap" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="http" label="http" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="sinatra" label="sinatra" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="sitemap" label="sitemap" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        <![CDATA[<p>I just tagged <a href="http://www.nexista.org/svn/nexista/tags/nexista-0.2.5/">Nexista 0.2.5</a> because I made a significant change to how sitemaps are processed (though the change does not break backwards compatibility).</p>

<p>Gates should now include an http method attribute, like this:</p>

<pre class="sh_xml">
&lt;map:gate name="x-hostgroup-delete" role="yodnsuser" http_method="post">
</pre>

<p>If they do not, they will default to get, and as I mentioned in the first paragraph, posts to gates that have defaulted to the get method will also be processed. However, if there is a post method gate, it will be processed instead.</p>

<p>This change was inspired by Sinatra, and it turns out to be a helpful change. Gates are now a lot simpler and concise, without urls getting too complex.</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Two New To-Do&apos;s</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2009/11/two-new-to-dos.html" />
    <id>tag:www.nexista.org,2009:/blog//235.19672</id>

    <published>2009-11-29T20:42:14Z</published>
    <updated>2009-11-29T20:45:08Z</updated>

    <summary>TODO: Add HTTP methods (get, post, put, delete) to sitemaps as gate attributes Support chaining XSL templates together (as opposed to the current xsl action which inserts its output back into flow)...</summary>
    <author>
        <name>Albert</name>
        
    </author>
    
        <category term="Nexista Development" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="http" label="http" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="todo" label="todo" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="xsl" label="xsl" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        <![CDATA[<p>TODO:</p>

<ul>
<li>Add HTTP methods (get, post, put, delete) to sitemaps as gate attributes</li>
<li>Support chaining XSL templates together (as opposed to the current xsl action which inserts its output back into flow)</li>
</ul>
]]>
        

    </content>
</entry>

<entry>
    <title>Sinatra</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2009/08/sinatra.html" />
    <id>tag:www.nexista.org,2009:/blog//235.16136</id>

    <published>2009-08-21T23:28:54Z</published>
    <updated>2009-08-21T23:37:59Z</updated>

    <summary>I&apos;ve recently learned about a lightweight web framework for Ruby called Sinatra. I&apos;m not sure if it is described as MVC, though. If it is, it would be the closest MVC I&apos;ve found to Nexista.Sinatra supports some pretty cool stuff...</summary>
    <author>
        <name>Albert</name>
        
    </author>
    
        <category term="Sitemap" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="frameworks" label="frameworks" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="ruby" label="ruby" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="sitemaps" label="sitemaps" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        <![CDATA[I've recently learned about a lightweight web framework for Ruby called Sinatra. I'm not sure if it is described as MVC, though. If it is, it would be the closest MVC I've found to Nexista.<br /><br />Sinatra supports some pretty cool stuff that is similar to how Nexista uses sitemaps. ince its written right in ruby instead of XML, its easy to understand right away.<br /><br />Nexista uses PHP to create PHP versions of the sitemap. I've considered using an XSLT template to generate the code version, perhaps something like that could transform existing Nexista applications into sinatra applications.<br />  ]]>
        
    </content>
</entry>

<entry>
    <title>Schema2Mysql.xsl</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2009/08/schema2mysqlxsl.html" />
    <id>tag:www.nexista.org,2009:/blog//235.15951</id>

    <published>2009-08-05T22:28:25Z</published>
    <updated>2009-08-05T22:31:02Z</updated>

    <summary>This style sheet is long, long overdue, but I&apos;m finally writing it. Yeah!What does it do? It takes an MDB2 XML schema and transforms it to MySQL database creation commands. Yes, it is very cool.I&apos;m only about halfway through, but...</summary>
    <author>
        <name>Albert</name>
        
    </author>
    
        <category term="Nexista Development" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Templates" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="databases" label="databases" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="xsl" label="xsl" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        <![CDATA[This style sheet is long, long overdue, but I'm finally writing it. Yeah!<br /><br />What does it do? It takes an MDB2 XML schema and transforms it to MySQL database creation commands. Yes, it is very cool.<br /><br />I'm only about halfway through, but I should be done soon. At the moment, I'm working on it in the <a href="http://www.established-sites.com/">Established Sites</a> repository, but it will get moved to Nexista very soon.<br /> ]]>
        
    </content>
</entry>

<entry>
    <title>Sitemap + XSLT Pipelines versus MVC Frameworks</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2009/07/sitemap-xslt-pipelines-versus-mvc-frameworks.html" />
    <id>tag:www.nexista.org,2009:/blog//235.4660</id>

    <published>2009-07-08T03:29:18Z</published>
    <updated>2009-07-08T03:32:52Z</updated>

    <summary>I&apos;ve been learning about model-view-controller (MVC) application frameworks lately thanks to the awesome Perl-based Catalyst project.So far I&apos;m able to make these comparisons:Sitemap = ControllerDatasource = ModelTemplates = ViewIts not that simple though, as there is no object relationship mapping...</summary>
    <author>
        <name>Albert</name>
        
    </author>
    
        <category term="Databases" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Sitemap" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Templates" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        <![CDATA[I've been learning about model-view-controller (MVC) application frameworks lately thanks to the awesome Perl-based Catalyst project.<br /><br />So far I'm able to make these comparisons:<br /><br /><ul><li>Sitemap = Controller</li><li>Datasource = Model</li><li>Templates = View</li></ul>Its not that simple though, as there is no object relationship mapping in Nexista, so the datasource / model comparison is very rough.<br /> ]]>
        
    </content>
</entry>

<entry>
    <title>Tidy Extension</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2009/05/tidy-extension.html" />
    <id>tag:www.nexista.org,2009://235.4327</id>

    <published>2009-05-06T17:52:15Z</published>
    <updated>2009-06-29T22:55:44Z</updated>

    <summary>After wrestling with XSL, HTML, and XHTML for weeks, I finally decided to simply create a Nexista extension which uses the Tidy library to fixup the output buffer as either HTML or XHTML. So far, its working great. I&apos;m using...</summary>
    <author>
        <name></name>
        
    </author>
    
        <category term="Extensions" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        After wrestling with XSL, HTML, and XHTML for weeks, I finally decided to simply create a Nexista extension which uses the Tidy library to fixup the output buffer as either HTML or XHTML. So far, its working great. I&apos;m using it with PhunkyBB and its working fine. Hopefully this will make it a lot easier to switch between plain HTML 4 and XHTML output without having to edit any stylesheets!
        
    </content>
</entry>

<entry>
    <title>XSL Pipelines</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2009/04/xsl-pipelines.html" />
    <id>tag:www.nexista.org,2009:/blog//235.4325</id>

    <published>2009-04-09T09:38:10Z</published>
    <updated>2010-06-19T19:23:28Z</updated>

    <summary>I&apos;ve been thinking a lot about XSL lately (as usual) and the idea of XSL pipelines came up. The basic idea is that an XML document can be transformed into another XML document via XSL. In that case, why not...</summary>
    <author>
        <name></name>
        
    </author>
    
        <category term="Nexista Development" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="xhtml" label="xhtml" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="xml" label="xml" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="xsl" label="xsl" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        <![CDATA[<p>I've been thinking a lot about XSL lately (as usual) and the idea of XSL pipelines came up. The basic idea is that an XML document can be transformed into another XML document via XSL. In that case, why not transform it again using another XSL document? As XHTML becomes more commonplace, it will be possible to convert XHTML into plain XML, and then back into XHTML - woo hoo!With Nexista, things are done a little differently, but the functionality is possible. You can use the curl action to get an XHTML document, the xsl action to transform it into the flow XML document, and then an XSL stylesheet to output XHTML and complete the cycle.</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Xhtml2dom</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2009/04/xhtml2dom.html" />
    <id>tag:www.nexista.org,2009://235.4324</id>

    <published>2009-04-08T08:46:07Z</published>
    <updated>2009-06-29T22:55:44Z</updated>

    <summary>I&apos;ve been working on some very interesting (in my opinion) XSL and javascript code recently. I mentioned it briefly here in this post about XML goodness, and since then I&apos;ve been adding the code to more and more Nexista powered...</summary>
    <author>
        <name></name>
        
    </author>
    
        <category term="Nexista Development" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        <![CDATA[I've been working on some very interesting (in my opinion) XSL and javascript code recently. I mentioned it briefly <a href="http://www.nexista.org/blog/2009/03/27/xml-goodness/">here in this post about XML goodness</a>, and since then I've been adding the code to more and more Nexista powered applications.The results are terrific. I'm quite pleased with how its working out, and really look forward to building upon these ideas.So without further ado, here's a quick explanation: <ul><li>Using XSL to transform XHTML snibbets into Javascript DOM code</li><li>Doing so enables caching on the client side of the XHTML snibbets - the parts of the pages which don't change</li><li>This results in faster and more efficient processing</li></ul>This idea is not unique - I got inspiration and encouragement from <a href="http://www.html2dom.com/">html2dom.com</a>.I also blogged briefly about this at <a href="http://www.sketch99.com/blog/2009/03/xhtml2domjs.html">Sketch99.com</a>.]]>
        
    </content>
</entry>

<entry>
    <title>Copyright Change</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2009/04/copyright-change.html" />
    <id>tag:www.nexista.org,2009://235.4323</id>

    <published>2009-04-04T04:48:45Z</published>
    <updated>2009-06-29T22:55:44Z</updated>

    <summary>I just checked in updates for almost all the nexista files. Joshua agreed to assign his copyright to the code to Savonix Corporation (my company), so I&apos;ve updated the file headers to reflect this.NOTE: This does not change anything in...</summary>
    <author>
        <name></name>
        
    </author>
    
        <category term="Nexista License" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        <![CDATA[I just checked in updates for almost all the nexista files. Joshua agreed to assign his copyright to the code to Savonix Corporation (my company), so I've updated the file headers to reflect this.NOTE: This does not change anything in terms of <a href="http://www.informedlicensing.com/blog/">licensing</a>. The source code is still and will remain free and open source software licensed under the LGPL version 2 or later. Now that Savonix owns the copyright, we may decide to license it under additional structures as well to maintain compatibility, like the MIT, BSD, or GPL v2.]]>
        
    </content>
</entry>

<entry>
    <title>XML Goodness</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2009/03/xml-goodness.html" />
    <id>tag:www.nexista.org,2009://235.4322</id>

    <published>2009-03-27T11:07:55Z</published>
    <updated>2009-06-29T22:55:44Z</updated>

    <summary>I&apos;ve been busy on the coding lately... and was able to check in a lot of fixes and updates to the Nexista development buffer, which has been half broken for far too long.The new system uses the PHP DOM methods...</summary>
    <author>
        <name></name>
        
    </author>
    
        <category term="Nexista Development" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        I&apos;ve been busy on the coding lately... and was able to check in a lot of fixes and updates to the Nexista development buffer, which has been half broken for far too long.The new system uses the PHP DOM methods for XHTML creation instead of strings. This thankfully keeps the output nice and clean when enabling indents in the output stylesheet.Lots of cleanups too, a new release is approaching...
        
    </content>
</entry>

<entry>
    <title>TinyLDAP and ApacheDS</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2009/03/tinyldap-and-apacheds.html" />
    <id>tag:www.nexista.org,2009://235.4321</id>

    <published>2009-03-01T20:05:01Z</published>
    <updated>2009-06-29T22:55:44Z</updated>

    <summary>One part of Nexista that has stagnated a bit is the LDAP data source connector. For some reason, I lost my interest in it awhile back, and never continued working on it.I&apos;ve recently managed to compile TinyLDAP on Debian, so...</summary>
    <author>
        <name></name>
        
    </author>
    
        <category term="ldap" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        <![CDATA[One part of Nexista that has stagnated a bit is the LDAP data source connector. For some reason, I lost my interest in it awhile back, and never continued working on it.I've recently managed to <a href="http://www.docunext.com/blog/2009/02/28/tinyldap/">compile TinyLDAP on Debian</a>, so this has reignited my interest in LDAP a little. For me to continue with it, I really need to make building TinyLDAP a lot easier. I believe that there is a FreeBSD port for it, so perhaps I'll look in that direction.I was also able to get ApacheDS (a java ldap server) running on Debian, but in that case I simply installed java and downloaded a prebuilt deb file from the Apache site. It seems to run OK, but like OpenLDAP, it seems much larger than I need.]]>
        
    </content>
</entry>

<entry>
    <title>Prepared Statements</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2009/02/prepared-statements.html" />
    <id>tag:www.nexista.org,2009://235.4320</id>

    <published>2009-02-21T13:10:45Z</published>
    <updated>2009-06-29T22:55:44Z</updated>

    <summary>With Nexista, I&apos;ve tried to keep to standards as much as possible - standard XML, XSL, SQL, etc.For SQL, I use prepared statements, using the question mark (?) as the placeholder:INSERT INTO numbers VALUES (?, ?, ?)but I&apos;ve read that...</summary>
    <author>
        <name></name>
        
    </author>
    
        <category term="Databases" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        <![CDATA[With Nexista, I've tried to keep to standards as much as possible - standard XML, XSL, SQL, etc.For SQL, I use prepared statements, using the question mark (?) as the placeholder:<pre lang="sql">INSERT INTO numbers VALUES (?, ?, ?)</pre>but I've read that this syntax also works:<pre lang="sql">INSERT INTO numbers VALUES (:id, :name, :lang)</pre>This all works fine because PEAR MDB2 can handle it - it even simulates prepared statement support for drivers that don't.So why the blog post about it? Well another project I'm working on (<a href="http://www.nodows.com/">NODOWS</a>) has led me to libdbi. It is a database abstraction layer in C, which as far as I tell does not support prepared statements. I've read that prepared statements is in the works, but I can't find any more information about that in the documentation I've found.Therefore, I've got to do a little digging into MDB2 to find out how it simulates prepared statements. No matter how things turn out with libdbi, I'm still glad that most of the queries I've written for use with Nexista are consistent. That makes it sooo much easier to manage. I might convert them somehow, either using XSL or re2c. Should be interesting!]]>
        
    </content>
</entry>

<entry>
    <title>XSL Chains</title>
    <link rel="alternate" type="text/html" href="http://www.nexista.org/blog/2009/02/xsl-chains.html" />
    <id>tag:www.nexista.org,2009://235.4319</id>

    <published>2009-02-12T14:28:11Z</published>
    <updated>2009-06-29T22:55:44Z</updated>

    <summary>I&apos;ve been working with the new NGINX xslt module (its awesome) and so I&apos;ve decided to mimic the XSL chaining capability with Nexista. This shouldn&apos;t be too difficult, and I think it will be a step in the right direction...</summary>
    <author>
        <name></name>
        
    </author>
    
        <category term="Databases" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.nexista.org/">
        <![CDATA[I've been working with the new NGINX xslt module (its awesome) and so I've decided to mimic the XSL chaining capability with Nexista. This shouldn't be too difficult, and I think it will be a step in the right direction for the future of Nexista.This new feature will be implemented in tandem with the new feature for database result sets output targets described <a href="http://www.nexista.org/trac/ticket/40">here</a>. Speaking of which, I'm going to add the ability to output database result sets in different formats, in addition to the existing Nexista format (which I really like): the native MySQL XML formats and JSON to start.]]>
        
    </content>
</entry>

</feed>
