Re: Pycoon?

Kimbro Staken <[email protected]> Fri, 14 Nov 2003 17:14:22 -0700
Newsgroups gmane.comp.web.syncato.general
Message-ID <[email protected]>
On Nov 14, 2003, at 8:10 AM, Bruce D'Arcus wrote:

> I've been casually following the list via the rss feed, not really  
> having the time/skill to install and work with Syncato just yet (I'm  
> waiting for an easy-to-use installer for OS X that allows me to use  
> its default Apache installation).  However, this caught my attention  
> from Kimbro:
>
>> If you look at the architecture there is a minimal object model, I  
>> use XML instances in place of where you would traditionally have more  
>> specialized programming language objects. Syncato uses an MVC  
>> architecture with XSL for views, Python for the controller and XML  
>> for the model. So the Python code is basically plumbing that pipes  
>> XML between the UI and the XML database.
>
> I've become intrigued with the possibilities of using xml + xslt for  
> content management.  It strikes me that the approach Kimbro outlines  
> is not unlike that in Cocoon, or in Popoon -- a PHP-based analog.  Is  
> that right?

Syncato is like a tightly integrated Cocoon + Xindice or Cocoon +  
eXist. Quite literally as I first started experimenting with this  
technique about three years ago when I integrated Cocoon 1.5 directly  
into dbXML (dbXML eventually became Xindice and I took out that  
integration for reasons that made sense at the time) In fact Tom  
Bradford who started dbXML used to call it an XML database application  
server, Syncato could be considered the same thing. Though I generally  
refer to XML fragments rather then XML documents and I'm beginning to  
prefer the term microcontent.

I'm not trying to build a general XML management system because there's  
a lot of junk that is considered part of XML, in particular DTDs are  
completely incompatible with what I'm doing. Actually any schema  
language that constrains an XML document instance is incompatible. I  
rely heavily on being able to arbitrarily mix XML fragments together  
however you want. Doing that you can't define what a document can  
contain, all you can do is validate certain aspects of it. This means  
things like XML Schema are out, although you can use something like  
Schematron since it validates rather then constrains.

I looked at building something on top of Cocoon, but it's gotten pretty  
complex and Java presents a lot of annoyances to me now. I also wanted  
to experiment with XML as a replacement for traditional object models  
and while Cocoon does that to some extent it doesn't go nearly as far  
as I wanted. In my model instead of creating a Java bean to represent  
some object, you just have an XML instance and use XPath to manipulate  
it. This way there's no miss match between persistence and in memory  
models(i.e. no mapping) and your model is loosely coupled to the  
language you're using.


>
> BTW, I posted something that reflects why I'm interested in this  
> stuff.  Hint: it's not really about the weblog.
>
> http://netapps.muohio.edu/movabletype/archives/darcusb/darcusb/ 
> 000072.html
>
> Bruce
>
>
>
> -------------------------------------------------------
> This SF.Net email sponsored by: ApacheCon 2003,
> 16-19 November in Las Vegas. Learn firsthand the latest
> developments in Apache, PHP, Perl, XML, Java, MySQL,
> WebDAV, and more! http://www.apachecon.com/
> _______________________________________________
> Syncato-general mailing list
> Syncato-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
> https://lists.sourceforge.net/lists/listinfo/syncato-general
>
>
Kimbro Staken
Software, Consulting and Writing http://www.xmldatabases.org/
Apache Xindice native XML database http://xml.apache.org/xindice
XML:DB Initiative http://www.xmldb.org



-------------------------------------------------------
This SF. Net email is sponsored by: GoToMyPC
GoToMyPC is the fast, easy and secure way to access your computer from
any Web browser or wireless device. Click here to Try it Free!
https://www.gotomypc.com/tr/OSDN/AW/Q4_2003/t/g22lp?Target=mm/g22lp.tmpl