Definition Type: SimpleType
Name: inheritType
Namespace: http://www.xml-cml.org/schema
Containing Schema: schema.xsd
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 inheritType in schema schema_xsd (Chemical Markup Language (CML))
Collapse XSD Schema Code:
<xsd:simpleType id="st.inheritType" name="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:restriction base="xsd:string">
        <xsd:enumeration value="merge">
            <xsd:annotation>
                <xsd:documentation>
                    <h:div class="summary" xmlns:h="http://www.w3.org/1999/xhtml">Values from this element will be merged.</h:div>
                    <h:div class="description" xmlns:h="http://www.w3.org/1999/xhtml">The merging is element-specific with the intention that information from the current element will not conflict with the existing information. It is an error if there is a conflict.</h:div>
                </xsd:documentation>
            </xsd:annotation>
        </xsd:enumeration>
        <xsd:enumeration value="replace">
            <xsd:annotation>
                <xsd:documentation>
                    <h:div class="summary" xmlns:h="http://www.w3.org/1999/xhtml">Values from this element will replace existing information.</h:div>
                    <h:div class="description" xmlns:h="http://www.w3.org/1999/xhtml">The merging is element-specific with the intention that information from the current element will replace the existing information.</h:div>
                </xsd:documentation>
            </xsd:annotation>
        </xsd:enumeration>
        <xsd:enumeration value="delete">
            <xsd:annotation>
                <xsd:documentation>
                    <h:div class="summary" xmlns:h="http://www.w3.org/1999/xhtml">Components of this element will de deleted if they exist.</h:div>
                </xsd:documentation>
            </xsd:annotation>
        </xsd:enumeration>
    </xsd:restriction>
</xsd:simpleType>
Collapse Facets:
Facet Value
Enumeration merge
Enumeration replace
Enumeration delete
Collapse Derivation Tree:
Collapse References:
nsA:inherit