<div dir="ltr">As a reply to:<div><div><br></div><div>// BTW, why do you decompose the initial object on the first level of</div><div>// nesting? Why can't you just store the initial object as such?</div></div><div><br>

</div><div>This was a trade-off between being able to dynamically add/remove knowledge fields (this way, it can be done at least at the top level - which is sufficient for most of our use cases), and the possibility to employ structured (class-based) knowledge values.</div>

<div>The other two options is either store the initial object Â - which prevents addition/removal (well, it does not exactly prevent addition/removal, but the implementation would be a bit more complicated).</div><div>The last option is to store the knowledge only as a hierarchical composition of java.util.Map, which prevents (or largely complicates) using user-defined classes for structured knowledge values.</div>

<div><br></div><div>So this is a simple trade-off to cover both use cases with minimal effort (while not sacrificing much of the conceptual correctness).</div><div><br></div><div>J</div><div><br></div></div><div class="gmail_extra">

<br><br><div class="gmail_quote">2014-06-29 22:29 GMT+02:00 GitHub <span dir="ltr"><<a href="mailto:noreply@github.com" target="_blank">noreply@github.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

  Branch: refs/heads/sim-bures<br>
  Home: Â  <a href="https://github.com/d3scomp/JDEECo" target="_blank">https://github.com/d3scomp/JDEECo</a><br>
  Commit: faf15c745943bdf4e10cfd0d3df3c75a14f34ee9<br>
  Â  Â  <a href="https://github.com/d3scomp/JDEECo/commit/faf15c745943bdf4e10cfd0d3df3c75a14f34ee9" target="_blank">https://github.com/d3scomp/JDEECo/commit/faf15c745943bdf4e10cfd0d3df3c75a14f34ee9</a><br>
  Author: Tomas Bures <<a href="mailto:bures@d3s.mff.cuni.cz">bures@d3s.mff.cuni.cz</a>><br>
  Date: Â  2014-06-29 (Sun, 29 Jun 2014)<br>
<br>
  Changed paths:<br>
  Â  M jdeeco-core/src/cz/cuni/mff/d3s/deeco/knowledge/BaseKnowledgeManager.java<br>
  Â  M jdeeco-core/src/cz/cuni/mff/d3s/deeco/model/runtime/custom/PathNodeComponentIdExt.java<br>
  Â  M jdeeco-core/src/cz/cuni/mff/d3s/deeco/model/runtime/custom/PathNodeMapKeyExt.java<br>
  Â  M jdeeco-core/src/cz/cuni/mff/d3s/deeco/task/KnowledgePathHelper.java<br>
<br>
  Log Message:<br>
  -----------<br>
  Fixed and marked some bugs in the knowledge management. The performance<br>
of the knowledge manager improved.<br>
<br>
<br>
<br>_______________________________________________<br>
DEECo mailing list<br>
<a href="mailto:DEECo@d3s.mff.cuni.cz">DEECo@d3s.mff.cuni.cz</a><br>
<a href="https://d3s.mff.cuni.cz/mailman/listinfo/deeco" target="_blank">https://d3s.mff.cuni.cz/mailman/listinfo/deeco</a><br></blockquote></div><br></div>