Nothing particularly difficult about the data structure, but it is a hierarchical tree that has 6 distinct node types that are somewhat cyclic. Although I'm using a relational database to hold the data, it's kind of a pain to manage. A nice OO model would actually be better suited to a solution, but I didn't have that advantage on picking the server platform.

That said, I think maybe what you are suggesting might be the route I take. The offline stuff doesn't necessarily have to carry the hierarchy over to the user interface. The reason for taking it offline have more to do with data entry than it does with analysis. I could collapse the tree into a flat structure that would allow the data entry to take place offline, but keep the tree intact on the web server.

Have to give it some thought though on what features I want to shuck on the offline version.