Short term plans#

Here we list the features and improvements planned for KnowWE and the d3web-core are linked to the upcoming releases. Subject to alterations!

Service Release 9 (June 2014) - Out now!#

  • Compiler Refactoring: Deep refactoring, modernization and acceleration of the compiler architecture of KnowWE.
  • Extension of the Rules-Markup: Currently rules in KnowWE can only be defined in the following way: IF condition THEN action [EXCEPT condition]. We want to extend the functionality and also allow the usage of ELSE and UNKNOWN.
  • Extension of TestCase XML: Currently TestCases exported to the STC-XML-format only allow simple checks/assertions. We want to extend it to allow the same checks as the TestCaseTable in KnowWE.
  • Overhaul of Object Info: KnowWE gets a replacement for its current Object Info Page. A fast and clean dialog that no longer requires to leave the page!

Feature Release 10 (November 2014)#

  • Watch Variables: For developing d3web knowledge, you can now add watches variables and expressions in a specialized view on the right side, visible independently of your current page.
  • Retractable LeftMenu: To make more space for the page contents on small displays (like projectors) or in case of large page contents, the LeftMenu can be retracted.
  • DiaFlux Improvements
    • Zoom: Flowcharts now come with easy to use zoom tools, allowing to zoom out to get a better overview of large flowcharts and also zoom to fit the current window size.
    • Improved Routing: Edges come with improved routing and a more intelligent placement of labels. Edges are highlighted on mouse-over.
    • New Tools: The flowchart editor comes with many new tools to intelligently select, align, clean up, pack and refactor the nodes and edges of a flowchart.
  • Visualizations for Ontologies: Ontologien developed in KnowWE can be visualized in different visualization variants.
  • Migration to JSPWiki 2.10: Since the end of 2012, JSPWiki is a Apache Project. We plan to migrate KnowWE to the new incubation releases. Since there are a lot of internal changes in JSPWiki, the process will likely be non-trivial.
  • Migration to Java 8: The next version of KnowWE will be developed for Java 8, to be able to use all its nice new features for developers. For compatibility reasons, the d3web-core will stay Java 6 for a while.
  • Compatibility for Tomcat 7 and 8: The last versions of KnowWE only supported Tomcat up to version 6. With the next version, we also support version 7 and 8.
  • Tooltip improvements: Hovering over questions and solutions during usage or debugging of knowledge bases shows the value of the object in the current problem solving session. We want to improve these tooltips and also make them available in flowchart edges and formulas.

Long term plans#

The following features are in a planning phase, but are not yet allocated to specific releases.

  • Change-Management: Conveniently show differences between different version of a d3web knowledge bases.
  • Review-Plugin: Unified tool allowing to comment and review in all markups of KnowWE.
  • Explanation-Module: Show and recursively trace how solutions and values were derived over the different knowledge elements like rules and flowcharts.
  • Overhaul of Search: There currently are multiple locations to search content of KnowWE (QuickNavigation, ObjectInfoPage, TermBrowser). We plan to unify and improve all of them into an all new search replacing the rather unhelpful default Quick Navigation of JSPWiki.
  • KnowWE-TimeMachine: Browse and restore previous states of the wiki (the whole wiki, not just single articles).
  • Timeline-Plugin: Visualize the timeline of a variable of the knowledge base during a problem solving session or while debugging.
  • Flowchart-Diffs: New DiffProvider allowing to visualize changes in DiaFlux flowcharts.
  • KnowWE-Updater: GUI-App to start and update KnowWE installations.
  • TimeDB function for gradient error of estimation: Calculating a gradient over a history of values always comes with an estimation error. It can tell how suited the calculated gradient is for approximating the given history of values. In a new function we want to produce this estimation error for further consideration in the knowledge base.