What is the Knowledge Base tool?
The Knowledge Base tool is developed for the University of Amsterdam to improve the default Sakai help files. This resulted in the Knowledge Base tool having the following features:
- The tools is a full replacement of the help tool, the tool is activated the same way the Sakai help is activated, that is, by clicking the help icon and as a separate tool.
- The tool supports authoring. Knowledge base items can be added and edited to the Knowledge Base with a richt text editor. The items are rich text, support images and videos and items can be linked to each other.
- Context sensitive the items in the Knowledge Base can be linked to user types, tools, permissions, and experience level. The tool is able to select those knowledge base items matching the tools and permissions of the current site the user is in.
- Powerful full text search and browse functionality.
- The tool supports user comments, supports votes and supports a personal favorites list.
The main screen
Viewing an item
Browse on permission
Creating a new item
Overview of the Use Cases
The architecture consists of the following components:
- The user interface of the Knowledge Base tool is developed a Single Page interface, build with jQuery and jQuery UI. The tool uses JSON to communicate with the server.
- The knowledge base service implements business logic, it transalates the Sakai context into filters on the search queries, manages the persistance of the search items and the user model.
- The knowledge base items are stored in the Sakai database,
- The search and browse is implemented by an embedded Solr instance.
The Knowledge Base tool is great because of two reasons. First, it supports live authoring, as issues come into the support organization, the support operators can put their FAQ type support and much more into the help system instantaneously. The help thereby remains more up to date and relevant, user feedback and voting adds to that, just as images and even more: video.
The second is context aware filtering. A Knowledge Base article can be linked to a certain Sakai role and permission. So the article only turns up for those who actually have access to the specific functionality. This makes the help more relevant, the user only gets those items wich are relevant to the context. Furthermore, it simplifies the help texts, because the writer can pin the article down to specific access rights or roles without having to worry about users who do not have them.
The knowledge base tool could very will be made suitable to replace the current Sakai help system. The only real thing is missing, is the i18n support. But our vision goes beyond the Knowledge Base tool replacing the help system. Why not only share the tool, but also its content? Our vision is a community wide Knowledge Base system, that allows Knowledge to be shared between Sakai users on a global scale, supporting both Sakai CLE to OAE. By doing so, Sakai will have an integrated, shared, and adaptive help system.
- Both the tool and search engine will need to support i18n. Language could be detected automatically when articles are stored.
- The authoring environment needs translation support.
- The knowledge base needs to become Sakai version aware.
- The centralized knowledge base needs te be created with the following features:
- Web scalable
- A REST Api that supports both searching and authoring.
- A security model based on roles.
- OAuth security.
- Import and export of items.
- An integration into Sakai OAE.