December 7, 2007

Manage your documents with Knowledge Tree

Author: Murthy Raju

Knowledge Tree is an open source document management system (DMS) that helps enterprise users categorize, store, index, and share documents. It offers features like metadata editing, versioning, and WebDAV access, which make it a better choice than a simple file server for sharing documents.

The open source edition of the PHP-based Knowledge Tree ships under GPLv3; a commercial version with some additional features and support bundled is also available. You can run Knowledge Tree on Linux, Windows, or any platform that can run Apache, MySQL and PHP. The commercial application also has a Windows client for non-Web access to the repository.

You can download open source edition of Knowledge Tree as the source-only version or as a stack installer with all dependencies bundled. The source-only version requires quite a bit of work to set up PHP and other dependencies right, as Knowledge Tree does not support PHP 5.x yet. Because of the dependencies on older versions of PHP, a Knowledge Tree install almost requires a dedicated server, unless you decide to use nonstandard ports for services. The stack installer contains the right versions of Apache, PHP, and MySQL. The developers provide extensive documentation for installation and for using and administering the software.

The stack installer, once invoked from the command line, runs in graphical mode. After you make a few choices for installation locations, port numbers for various services, and initial access passwords for the new installation of MySQL, it installs Apache, PHP, MySQL, and other necesssary tools and launches the services.

You can log in to the application through a Web browser using the default admin user name and password to take care of the initial administrative steps like setting up authentication sources. Knowledge Tree maintains its own user database and authorization information, but it can import user accounts from an external LDAP server and also use LDAP for authenticating users.

Knowledge Tree has an extensive access control mechanism based on roles. You can use a matrix of users, groups, and roles to set fine-grained control on who can perform what functions on the repository. The application presents a directory-like structure for storing and accessing documents. Access control can be set up at the directory or document level.

Organizations can take advantage of the workflow features of Knowledge Tree. A document can be in different states at different stages, and the access control mechanism can take this into consideration. The commercial version of Knowledge Tree has an additional feature called Document Workflow Integration to allow external applications like scanning and fax software to write directly into the repository.


The primary mode of accessing Knowledge Tree's document repository is through a simple and powerful Web interface that lets you add, search for, and download documents. You can also access the repository through any WebDAV client, such as Nautilus, Konqueror, or Windows Explorer on XP and above. When you access the repository through a WebDAV clients, however, only view documents.

Metadata, indexing, and versioning

One important advantage document management systems have over simple file servers is that they give you a way of adding metadata, such as author, version number, target audience, and usage instructions, to each document stored. Knowledge Tree has basic metadata items built-in, and lets you add more. You can search the repository based on metadata.

Knowledge Tree indexes the text of documents when you upload them. It can index Microsoft Office,, PDF, text and PostScript files. You can search on the content of documents as well as on the metadata. Knowledge Tree uses open source helper tools such as catdoc, Xpdf, and antiword for indexing the documents. Searches return results almost instantaneously.

You can maintain different versions of a document in the repository by following a check-out, modify, check-in routine. When you check out a document, it is locked against further editing by other users. When you check the document back in, it is stored as a new version of the document.

Import/export and collaboration

After you install a DMS, the usual routine is to upload one document at a time with all metadata filled in. If you need to bulk upload documents, you can do that by using the import feature to upload a zip file containing a document hierarchy that you want to upload. Similarly, if you need to get a zip file of part or the whole repository, you can do that by using the export feature.

Knowledge Tree has an integrated mailing functionality that allows users to mail other users a link to any document in the repository. The mail recipient can then click on the link and access the document after logging in. Users can also start discussions about particular documents. Users who can access the document see discussions as a thread on the Web interface, and can join in the discussion.

Knowledge Tree is a tightly integrated application with comprehensive documentation. It can provide document management workflow for an enterprise without a stiff learning curve. In future versions I'd like to see support for more recent versions of PHP so that Knowledge Tree can run along with other Web applications.


  • Internet & WWW
  • Enterprise Applications