<h:div class="summary">Inheritance mechanism.</h:div>
<h:div class="description">
<h:p>A reference to an existing element can be used to supplement values such as coordinates. The
<h:tt>inheritance</h:tt>attribute determines whether the values are supplemented, overwritten or deleted. In the example:</h:p>
<h:pre><molecule id="m1" view="initial"> <atomArray> <atom id="a1" x3="0.1"/> </atomArray> </molecule> <!-- this adds more information --> <molecule ref="m1" view="initial" inherit="supplement"> <atomArray> <atom id="a1" hydrogenCount="1"/> </atomArray> </molecule> <!-- this will overwrite the previous values --> <molecule ref="m1" inherit="overwrite" view="final" id="m2"> <atomArray> <atom id="a1" x3="0.1"/> </atomArray> </molecule> <!-- this will delete the previous values --> <molecule ref="m1" inherit="delete" view="restart"> <atomArray> <atom id="a1" hydrogenCount=""/> </atomArray> </molecule></h:pre>
<h:p>The first
<h:tt>molecule/@ref</h:tt>adds complementary information, the second changes the values. Software is allowed to generate two independent copies of the molecule and reference them by different IDs (
<h:tt>m1</h:tt>and
<h:tt>m2</h:tt>).</h:p>
<h:p>This mechanism is necessary to manage the implied inheritance of partial information during minimisations and dynamics. It requires careful software implementation.</h:p>
</h:div>
|