Skip to main content

Drupal Freemind 2.0 – a relational (semantic) data interface

CEO, Co-Founder
Feb 17, 2009

As a passionate fan of mindmapping I've grown accustomed to mindmaps as a data visualization tool. Mindmap user interfaces allow you to organize your ideas into hierarchical bundles of 6-7 concepts in collapsible groups and then drill down in a logical relationship tree. This is very close to how a human brain works. There is a Freemind module for Drupal 4.7 with which it was possible to show taxonomies in a mindmap display. This is in it's own right an interesting module but it could be a lot more useful if you could interact with this mindmap. At least we should be able to mirror manipulations that are possible in a Freemind .mm mindmap. Such as reorganizing of freemind nodes, creation, updating and deletion of freemind nodes. The real power however you would get if you could interact with data from the Drupal database or even from outside of Drupal. But how would this work? Below is a quick diagram of how this could work and how the different involved modules could interact with each other.

Freemind stack diagram
 

There would be 2 ways to generate a new mindmap:

  • node by node, through the UI (as you would do in Freemind)
  • By importing the results from a mindmap display in Views that has the parent node as argument

The node by node way is obvious, you can just keep adding nodes through the Freemind UI and since these are structural elements that are only relevant to the mindmap, they can be stored in the .mm file. The mindmap display would generate a freemind compatible XML branch that can be inserted at the appropriate place in the existing .mm files. Fields from Drupal nodes could be added as attributes to the mindmap nodes through a sort of field to attribute mapper (potentially using the labels from the view as the first element in the type|value pair). Just before New Year I had a talk with Robert Douglas and Stephane Corlosquet about semantic knowledge management systems that was sparked by our work at Pronovix on www.druplet.org. (click here for a screencast). Back then Robert asked us if we knew any revolutionary new visualization methods that are possible with semantic data. This project is my answer to that question: In a recent article Jeff Micolis demonstrated how views can be used to pull in external data sources. Now imagine adding mindmap-XML branches created from a SPARQL query, maybe with the SPARQL project... The Drupal Freemind 2.0 module would make it this way possible to turn any Drupal site into an interface for building human readable subsets of semantic data. We are planning to submit this project as a Google Summer of Code application for Tamas Demeter, a student who has been doing a traineeship at our company. Any feedback would be very welcome.

Kristof Van Tomme is an open source strategist and architect. He is the CEO and co-founder of Pronovix. He’s got a degree in bioengineering and is a regular speaker at conferences in the API, developer relations, and technical writing communities. He is the host of the Developer Success & the Business of APIs and the API Resilience podcasts.

Newsletter

Articles on devportals, DX and API docs, event recaps, webinars, and more. Sign up to be up to date with the latest trends and best practices.

 

Subscribe