About

Knowforge is the acronym for "Knowledge Forge", a Web application for collaborative and distributed knowledge management, which will be 100% Open Source.

Knowforge will not be yet another monolithic CMS solution. The aim is to use already available or to-be-defined interfaces to integrate as many third-party software packages as possible. Knowforge shall be able to create content networks within heterogenous software systems and infrastructures.

The general ideas of Knowforge will be defined regardless of any specific programming language, especially by using XML for inter-component and -application communication. The Knowforge reference implementation is done with PHP.

Status

Yet, we are in the early stage of project description.

This page is meant to serve as the initial start of this project for discussion of basic ideas and concepts. Later, information on this page will be moved to the Knowforge Website, which will be created at www.knowforge.net.

Features

  • content management based on XML
  • WYSIWYG XML editing
  • configurable workflow system
  • content networking
  • modular architecture, based on PEAR-like packages
  • parallel background processing of resource-hungry tasks

Criteria

Criteria that subprojects have to meet to become a part of Selor:

  • bundled as PEAR package(s) (package.xml)
  • installable by ZZ/OSS Installer
  • OOP, Enterprise Patterns
  • W3C conformity
  • min. requirements PHP5, Apache 2, MySQL 4.1.
    • of course, downward-compatibility as far as possible
  • transactions, foreign key integrity

Technologies

  • Object Oriented Programming (OOP)
  • PHP5
    • we want Knowforge to be the PHP5 OOP reference project
  • transparent storage based on XML with XPath access (see more below)
  • XML, XSLT
  • Cocoon framework (aka Popoon)
  • Pingback, Trackback
  • OAI-PMH, httphttp://www.openarchives.org
  • RSS
  • Jabber (see httphttp://blog.bitflux.ch/p1391.html for some ideas)

Subprojects

Storage

I'd like to add a storage independent system based on some popoon components. At the end, it shouldn't matter, where you store your data (be it RDBMS, XMLDB, Filesystem, Somewhere-On-The-Net), as long as you add a driver to the "system". This drivers allow to query the data XPath-like with a commandset similar to WebDAV. A little bit more at httphttp://wiki.bitflux.org/index.php/CmsFuture

Content Network

Chregu envisages Jabber as the perfect tool to create content networks: httphttp://blog.bitflux.ch/p1391.html

Licensing

Do we want to have all Knowforge components GPLed or LGPLed? (Sandro)

  • Please not. Bitflux Editor is Apache-Style licensed with MPL components (mozile). Why limit ourself ;) (chregu)
  • So you'd rather opt for Apache-Style license, maybe PHP license? (Sandro)

Naming

I propose we use "Knowforge" as a working name, very likely, it will not be the final name of the project, because httphttp://www.knowledge-forge.com might not like the name.

Proposal: "Selor" - a fantasy name derived from self organisation. (Sandro)

Packages

  • distribution via PEAR Web

Client

Do we entirely build upon Mozilla/Firebird as the primary client to access the system? I guess, it would be wise to stick to W3C standards, e.g. concerning JavaScript. Allthough there important drawbacks, I propose that we concentrate on one primary browser that allows for sophisticated client-side features, and as well take care that basic features work in all other important browser types. (Sandro)

Project Members

Feel free to add yourself to this list if you want to contribute (click on "edit").

Comments

Anyone is invited to add his comments and suggestions (click on "edit").


Might be worth to consider the Creative Commons challenges: httphttp://creativecommons.org/technology/challenges


Last edited on Thursday, October 9, 2003 10:17:41 am.


Edit PageHistory Diff PageInfo DebugInfo

PHP Warnings

lib/WikiUser.php:50: Notice[8]: Only variables should be assigned by reference

lib/pear/DB/common.php:741: Notice[8]: Only variable references should be returned by reference

lib/pear/DB/common.php:741: Notice[8]: Only variable references should be returned by reference

lib/pear/DB/common.php:741: Notice[8]: Only variable references should be returned by reference

lib/pear/DB/common.php:741: Notice[8]: Only variable references should be returned by reference

lib/pear/DB/common.php:741: Notice[8]: Only variable references should be returned by reference

lib/pear/DB/common.php:741: Notice[8]: Only variable references should be returned by reference

lib/pear/DB/common.php:741: Notice[8]: Only variable references should be returned by reference

lib/Template.php:220: Notice[8]: Only variables should be assigned by reference

lib/Template.php:106: Notice[8]: Only variables should be assigned by reference

lib/Template.php:107: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'html'?):106: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'html'?):107: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'html'?):106: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'html'?):107: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'body'?)(In template 'html'?):106: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'body'?)(In template 'html'?):107: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'top'?)(In template 'body'?)(In template 'html'?):106: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'top'?)(In template 'body'?)(In template 'html'?):107: Notice[8]: Only variables should be assigned by reference

lib/pear/DB/common.php(In template 'navbar'?)(In template 'top'?)(In template 'body'?)(In template 'html'?):741: Notice[8]: Only variable references should be returned by reference

lib/Template.php(In template 'body'?)(In template 'html'?):106: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'body'?)(In template 'html'?):107: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'browse'?)(In template 'body'?)(In template 'html'?):106: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'browse'?)(In template 'body'?)(In template 'html'?):107: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'actionbar'?)(In template 'browse'?)(In template 'body'?)(In template 'html'?):106: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'actionbar'?)(In template 'browse'?)(In template 'body'?)(In template 'html'?):107: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'body'?)(In template 'html'?):106: Notice[8]: Only variables should be assigned by reference

lib/Template.php(In template 'body'?)(In template 'html'?):107: Notice[8]: Only variables should be assigned by reference

Valid XHTML 1.0! Valid CSS!
Page Execution took 0.366 seconds