Why use HierarchicalMap?
"Typically a model will refer only to some aspects of the phenomenon in question, and two models of the same phenomenon may be essentially different, that is in which the difference is more than just a simple renaming." (definition of "Model" as of Wikipedia May, 16th 2006)
Object Oriented approach is very suited for modeling computing system. We undoubtly encourage this approach though we foresee some weakness for system integration.
Everything is fine while you are implementing a system by yourself but if one system needs to be integrated with another system developed by someone else, it means that some objects must be exchanged between them. Then it is likely that the objects are different although representing the same phenomenon in the real world.
So, here comes XML to facilitate this data exchange, nevertheless in the essence, what is exchanging is just data from one system to another system. Using XML, it will be necessary to extract the data from source object, convert them to some text format using well-formed XML and send it to the target. The receiver side must parse the XML and then convert back to the native data format and feed the object.
The virtue of HierarchicalMap is the possibility of manipulating those data natively by java or .Net throughout the process without conversion to human readable format while there is no need for human intervention.
Give it a try!
Any way, instead of having further discussion, trying to legitimate the existance of this project, just relax and think as yet another data structure that can represent hierarchical information using key similar to file system's path.
Give it a chance and try to use HierarchicalMap when it seemes to help you solve the problem. We will be more than happy to hear your experience and receiving opnions and suggestions.
Take a look at Tutorial to get more information regarding HierarchicalMap interface.