Definition Type: Attribute
Name: inherit
Namespace: http://www.xml-cml.org/schema
Type: nsA:inheritType
Containing Schema: schema.xsd
Use (Optional)
Documentation:
Inheritance mechanism. A reference to an existing element can be used to supplement values such as coordinates. The inheritance attribute determines whether the values are supplemented, overwritten or deleted. In the example: <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> The first molecule/@ref 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 (m1 and m2). This mechanism is necessary to manage the implied inheritance of partial information during minimisations and dynamics. It requires careful software implementation.
Collapse XSD Schema Diagram:
XSD Diagram of inherit in schema schema_xsd (Chemical Markup Language (CML))
Collapse XSD Schema Code:
<xsd:attribute id="att.inherit" name="inherit" type="inheritType">
    <xsd:annotation>
        <xsd:documentation>
            <h:div class="summary" xmlns:h="http://www.w3.org/1999/xhtml">Inheritance mechanism.</h:div>
            <h:div class="description" xmlns:h="http://www.w3.org/1999/xhtml">
                <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>
&lt;molecule id="m1" view="initial"&gt;
  &lt;atomArray&gt;
    &lt;atom id="a1" x3="0.1"/&gt;
  &lt;/atomArray&gt;
&lt;/molecule&gt;
&lt;!-- this adds more information --&gt;
&lt;molecule ref="m1" view="initial" inherit="supplement"&gt;
  &lt;atomArray&gt;
    &lt;atom id="a1" hydrogenCount="1"/&gt;
  &lt;/atomArray&gt;
&lt;/molecule&gt;
&lt;!-- this will overwrite the previous values --&gt;
&lt;molecule ref="m1" inherit="overwrite" view="final"
    id="m2"&gt;
  &lt;atomArray&gt;
    &lt;atom id="a1" x3="0.1"/&gt;
  &lt;/atomArray&gt;
&lt;/molecule&gt;
&lt;!-- this will delete the previous values --&gt;
&lt;molecule ref="m1" inherit="delete" view="restart"&gt;
  &lt;atomArray&gt;
    &lt;atom id="a1" hydrogenCount=""/&gt;
  &lt;/atomArray&gt;
&lt;/molecule&gt;
</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>
        </xsd:documentation>
    </xsd:annotation>
</xsd:attribute>
Collapse Derivation Tree: