<p>Yes, the db code would benefit from revision. The original goal was to provide serialization to XML and RDBMS (and potentially other formats). In order to preserve legacy access, various indexes were added but order was also mattered for some features where only that was used and ids didn't originally exist. Basically, we wanted to add the db code without changing the logic at the core level. This, and my beginning Python knowledge at the time, caused code like the ugly list/dictionary code above.</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">&mdash;<br>Reply to this email directly or <a href="https://github.com/VisTrails/VisTrails/issues/1137#issuecomment-150736303">view it on GitHub</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/AEd06W12_HSTcCk6GoRUeknDL0-JpvSuks5o-tmKgaJpZM4GUz8K.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/VisTrails/VisTrails/issues/1137#issuecomment-150736303"></link>
  <meta itemprop="name" content="View Issue"></meta>
</div>
<meta itemprop="description" content="View this Issue on GitHub"></meta>
</div>