Much of my work involves building software systems for Knowledge Management (KM) and Business Intelligence (BI). Knowledge Management usually deals with explicit data: records in a database, structured text (for example: web pages, PDF files, OpenOffice.org documents), plain text, and human knowledge encoded in production rules ("expert systems"). Knowledge Management systems can also deal with implicit knowledge: what people know but do not necessarily express: work flow habits while working on documents, web browsing habits, etc.
Knowledge Management is a concept - how do we do it?
The first step is to ensure that digital artifacts (explicit knowledge) are simple to create and maintain:
How do we capture implicit knowledge?
User work flow can be monitored using custom document management systems (or better yet,
customized open source systems like Plone) that are customized to capture who reads and edits which documents.
Human experts can be identified by keeping statistics on who answers what types of
questions on company wide message boards.
Using Artificial Intelligence (AI) for Knowledge Management
There are many AI technologies that can improve the performance of Knowledge Management
systems. The most useful technique is arguably Statistical Natural Language Processing (NLP).
Open Source Development
I believe that most Knowledge Management systems will need to be customized heavily and are likely to require
custom software development. The use of open source software will reduce your costs and time to completion.
Most "competitive advantage" derived from Knowledge Management systems will likely be derived from
organization and work flow specific AI that can be added as needed to open source infrastructure.
Planet RDF: Semantic Web blogs.
Pellet: open source OWL Descriptive Logic Reasoner written in Java (MIT License).
openRDF.org: home of the Sesame RDF storage and querying system (BSD-style License).
SWI-Prolog Semantic Web Library (LGPL)
Pentaho Open Source Business Intelligence software stack.
Plone: Extensible Contact Management System written in Python (GPL).
Lenya: Extensible Content Management System written in Java (Apache 2 License)
Lucene indexing and search engine written in Java (Apache 2 License)
Nutch is a complete search engine built with Lucene that is extensible via plugins and provides a web interface.
Jackrabbit: Java content repository is a hierarchical content store with support for structured and unstructured content, full text search and versioning.