Concept Maps and Mind Maps with Typed Nodes and Relationships

Why most Concept Maps are visually homogeneous and flat? Most have the same basic visual elements: Ellipses for Concepts and Arrows for Relationships, like in the next sample:

I come from the world of software development, where is very common to do analysis and design using heavy typified diagrams (Flow Charts, E-R, UML, etc.). In these diagrams the objects are visually and easily classified on their predefined shapes, line styles, colors and other graphic elements. Then, why not to do the same visual classification in Concept Maps?  Some may argue that by doing this, the map would become distracting or too complex. But as the Mind Mapping school says: Colors, styles and other graphics elements helps the user to remember better and use most of our brains.

So, now consider a typified yet simple Concept Map:

As you can see, all Concepts have a visual style corresponding to a semantic typification, like a rounded gray rectangle with brown border for the planets, yellow background for the stars and so on. Also, the Relationships are stylized, having two types: Facts as blue arrows and Predictions as segmented green arrows.

Also, this already typified Mind Map shows a common simple appearance:

Now, consider the next visually typified and annotated version of the ‘Astronomic’ Concept Map as shown next.

And the corresponding improved Mind Map in the next sample.

Maybe you could think that having so much information in a map is very confusing instead of helpful. As in most cases, it “depends”… if you have dozens or even hundreds of nodes in your map, you will need to be clear, precise and highlight the charactestics of your information elements. The key point is to have the chance, because not all cases just need a high-level overview, there are complex scenarios where you discuss, analyze or design delicate matters and precise details are required.

Having this in mind, I created ThinkComposer with an emphasis on typification and information details presentation as powerful as you want.

Mind mapping in the old way

Last weekend I started watching again (since childhood) a cold-war era spy tv series: Tinker, Tailor, Soldier, Spy (this 2011 a film remake is being done).

It was funny that, expecting do distract myself away from my job of develop a concept/mind mapping software, I found an example of the good old way to do that…

Communication and Perspectives

Any given thing or process has its significance under many scopes. What has certain relevance for an entity (a person, institution, artifact, etc.) could be minor/trivial or far superior for others.  Take for example the relative importance of Heart Transplant in Cardiovascular Surgery, then its importance in Medicine, then in Science and so on. For sure in the first environment we can expect great and detailed works on the subject, then a general knowledge in the second, and maybe just a reference or none at all in the last.

Consider now that for many large projects and organizations there is a need for creating common assets for dealing with the involved complexity. These assets could be specialized languages, standards, protocols, policies, artifacts, etc. As example we can consider the armed forces or the sport teams: They have a common language, common symbols (insignias, flags), equipment, protocolized communications and operational procedures, rules of conduct, etc. Then is required a superior entity, for understand these of complex worlds, to meet their common needs. That superior entity is on a meta or supra level: beyond that worlds.

In this case we have another perspective: The “here” (world) vs the “beyond/upon” (meta). For example: A construction team must build a house, then the architect communicates the intended design with blueprints. A meta-level here is the blueprints standard used for the purpose of building. That problem was studied and evolved since centuries and now has it common language (ie: a dotted square represents a concrete block or a door indicates its opening side with an arc). On the same example, another meta-level could be the command hierarchy of the construction company: the architect is the chief and the team are their subordinates.

Then, when trying to effectively communicate between different contexts, the data interchanged must be altered to be well understood by the intended audience. That change can be made in the form of: level of detail, vocabulary, symbols, translations, perspective and abstraction, etc. Also, the purpose must be considered: decision making, specialized work, informational, etc.

The Problem of Naming and Identification

The obvious

In our thinking we reference things (objects or people) in abstract or symbolic ways, using images (shapes or faces), concepts (like “car”, “the big green thing behind me”, “mom”, etc.) or a mental pseudo-conversation with ourselves (this time using language). While less abstract and more language related are the thoughts, more is the need to reference things with an artificial and language-transmittable label: the Name.

Names came as the immediate and main attribute about new things that we create or are presented to us. Then culture, practical convenience and personal creativity guide the act of naming:

  • For People: A combination of family name (that may be in reference of a place of origin, ethnic group, occupation or other ancestral heritage) plus a common or unique/fabricated first name. The naming order varies depending on culture.
  • For Common Things: Usually a word or combination of words (most of them originated in ancient languages and then assimilated in the current one used) which are used for referencing (to point to or indicate a thing) and identification (distinguish a thing from others of the same kind).


Maybe the biggest problem when naming is to find or create the most original name to avoid repetition over certain scope. Commonly a person name can have many people assigned (e.g.: “Sarah Connor”), therefore a most universal and error-safe main attribute had to be created (e.g.: a national id. number like the SSN). Then the identifier (or “Id”) become a solution for feasibility, precision and unambiguity for massive and systematic naming.

I can think a couple of ways for creating identifiers…

  • Combination of features. For example, in the case of a new car model (with the commercial name not yet invented): Style + Engine Type +  Drive-train + Year (e.g.: “Hatch-Back.V8.4×4.2009”).
  • Path of dependency.  When identifying objects on a big hierarchy unambiguously. For example the now common URL, or a military reference: “NATO.Northag.BritishArmyOfTheRhine.2ndRoyalTankRegiment.Unit07”.

By using complicated names for universal reach, there appears the need to simplify them within the local context for practical (fast) use, or to make them special or relevant. Then we have aliases, which can serve to various purposes such as: local fast referencing, real identity hiding (e.g.: “callsign” of a combat pilot) or creation of multiple identities (e.g.: for commercial, personal or “alternative” activities).


In structuring name conformation there can appear conventions according to the domain being represented. Some conventions can be:

  • By Prefixes (starting position) or Suffixes (ending). For example, in an astronomical phenomena name like “protonebulae” the prefix “proto” means “new” and the suffix “ae” means “many”. It, the naming using Latin and Greek words, appears to be an standardized (traditional, de facto?) way of naming such phenomena in the scientific community.
  • Syntax: This is very common for software developer to use different syntactic styles while programming. For example: Using all in uppercase for constants (e.g.: “PI=3.141592”), or using “camelCase” (first word in lowercase, the in uppercase every first letter of the resting words) for method names in the Java programming language (e.g.: “closeAccountNumber(990011);”).


About the problems of naming things, I can think of…

  • Homonyms: Words that are written the same, but that have a different meaning. Usually the real meaning is deduced from context, but if doesn’t exists we are lost. For example, the word “well” can refer a pit or way of doing.
  • Cultural and language issues. Consider the “Lone Ranger” and his native american friend “Tonto”. In Spanish “tonto” means “fool”, so his name have to be changed to “Toro” (bull).


Lets think twice when naming. A good name helps to make more or less recognizable, findable or unique that named thing or person.

A whole subject apart is the naming of a commercial product. You can find books, websites and companies entirely dedicated just to create good names for products. I hope to write about that interesting topic in the future.

Tables and Spreadsheets

In the beginning there was the unsorted set, then the List and, when many lists become unmanegeable, the Table appeared. Made of intersecting lists conforming either rows or columns, they are used as boards, guides, matrixes and files. Let see an example:

Calendar Rune

Calendar Rune

Making a big jump in time, we can find one of the first electronic versions of tables: the spreadsheet application:

Multiplan for DOS

Multiplan for DOS

Notice that numbered column titles instead of the now common letter based style.

As data and information management growth and as computers provided more powerful and flexible tools, there was a new paradigm: The Cube (AKA: Hyper-Cube or OLAP Cube). Although still represented on a two-dimensional surface, the general idea is to represent a third dimension, time, and also show the information in a more efficient an useful way by grouping/nesting, sorting, filtering and “drilling” up/down on the same visual interface.


OLAP Cube from ContourComponents

Today, these tables/spreadsheets/cubes are not just presenting data, but also providing navigation, formatting, validation and simulation capabilities, all in integration with other visual and processing paradigms. Nice evolution.