Roadmap for xml3k projects
Remember that xml3k is a collection of separate projects, and not one huge project. This Roadmap is just an attempt to consolidate the plans of individual projects, considering the many inter-dependencies.
Interesting dependencies in parens
15 November 2008 |
Akara 2.0 alpha = Amara 2 core (parsing, writers, XPath, XSLT) with server components merged in from WSGI.xml and xsltemplates merge beta (Python 2.5+) |
November 2008 |
Python 3.0 released |
December 2008 |
Bright Content 0.6 (Akara 2.0 alpha) |
30 November 2008 |
Akara 2.0 beta |
December 2008 |
Akara 2.0 final |
January 2009 |
Bright Content 1.0 released (Akara 2.0 final) |
June 2009 |
Akara 3.0 released (Python 3.0). Akara 2.0 branch continues support. |
Major changes for 2008
Akara will emerge as a synthesis of 4Suite (including 4Suite Server (4SS) a.k.a 4Suite repository), Amara, WSGI.xml and xsltemplates and more. The plan is for Akara to continue to provide RDF support, but through the rdflib/4RDF merger presently in the works.
We will probably package the more broadly useful bits of Akara separately from the more enterprise-targeted features ("Akara core" and "Akara enbterprise", if you like). The goal is to package it so that such a partition can be maintained without much developer or user pain.
Past discussion, and other resources
et seq.
http://lists.fourthought.com/pipermail/4suite-dev/2007-July/002226.html et seq.
Roadmap for 4Suite/Amara and such: http://wiki.xml3k.org/Roadmap
Akara front page: http://wiki.xml3k.org/Akara
4Suite 1.x front page: http://wiki.xml3k.org/4Suite
Amara 1.x front page: http://wiki.xml3k.org/Amara
Amara 2.x front page: http://wiki.xml3k.org/Amara2
We need help
We are looking for volunteers for the following tasks:
A grand renaming in Python code from "4Suite" to "Amara", including "import Ft" -> "import amara", updating copyright messages, etc. and of
course testing that the test suites pass after the rename
- Ditto for C code (there shouldn't be much to do in the C code)
- Migration of material from notes.4Suite.org to wiki.xml3k.org
- Convert 4Suite test framework (which predated unittest) to unittest, or at least help convert individual test cases
If you can help, please introduce yourself on http://groups.google.com/group/akara-dev
Amara 2.0
- Source code rename
- Source code reorg
- XPath optimizations
- Migration off CVS
The rename
In this message renaming 4Suite was discussed. The major software components to consider in naming:
- 4Suite core - basic XML parsing, XSLT etc. tools
- Amara - package of useful 4Suite add-ons, expected to be merged into above
4Suite Server (4SS) - Very basic protocol server for 4Suite library components, might be rolled into BrightContent
BrightContent (this name will not change) - Lightweight, RESTful CMS with initial focus on Weblogging
Some of the main proposals are:
- Use "Amara" to cover the merged 4Suite and Amara, and rename 4SS to "Akara"
- Pro: Amara is already an established name
- Pro: Sylvain says "I love Amara because it sounds nice. 4Suite sounds so 90s"
- Con: There is a Macromedia Flash tool named Amara, which has a tiny bit of potential for confusion
Use "Amara" to cover the merged 4Suite and Amara, and merge 4SS into BrightContent
Use "Uli.xml" to cover the merged 4Suite and Amara, and merge 4SS into BrightContent (or keep it as Uli.web)
- Note: Uli LLC is a dormant company owned by Uche. Uli is an ancient art form which had a renaissance in modern art at Nsukka in Nigeria, where Uche went to university for a few years. As such, it's always had special meaning to him.
- Pro: Trademark search turned up not even a whiff of possible confusion
Chime likes Amara+=4Suite and separating the atom store component (BrightContent) from a VFS-based XML/RDF content-repository (4SS -> Uli.repo / Uli.web)
Notes
If project names became Amara and BrightContent, The following are some sample imports:
- "from amara.xml import domlette"
- "from amara.lib import uri
- "from amara.bindery import parse
- "import brightcontent"
"Amara" is the name of a company founded by Chime and Uche's mother. It means "compassion" in Igbo. Makes sense for a health care company, but maybe not so much for an XML toolkit. But it does have nice connotation.
"Akara" is a delicious West African dish (not sure exactly which country originated it, but I'd guess Republic of Benin) made with soaked, ground then fried black-eyed peas. Sounds complementary to "Amara", and was already used in an XML CMS project based on Amara a few years ago.
4RDF is expected to disappear by the rename, merged with rdflib
All APIs which interfaced with 4RDF should instead interface with rdflib. Versa can very easily be ported (it would mostly be a clone of the BisonGen bindings) to rdflib or a module which used rdflib. It would be nice to add just a handful of changes (many were discussed on the versa list some time ago) to the syntax that would give most bang for the buck. Otherwise, there is the unified RDF query interface:
rdflibGraph.query(queryString,initNs={.. prefix->uri.. },initBindings={ .. rdflib.Variable -> rdflib.Identifier .. })
Other off-the-cuff ideas
Call it xml3k to match Python 3K. Yeah, that's one of those ideas that absolutely delights or disgusts you
---
http://lists.fourthought.com/pipermail/4suite-dev/2007-July/002239.html
- "éké"means python in Igbo. Actually we don't use those accents but without them non-West Africans would pronounce it as "eek". I like éké XML and éké Web. I like the similarity to Latin "Ecce" and I love the fact that it means "python XML" and "python Web". Downside, of course, is that folks who want to be cheeky will call it "eek" anyway :-D
