bondStereo

<h:div class="summary">A container supporting cis trans wedge hatch and other stereochemistry.</h:div>
<h:div class="description">
  <h:p>An explict list of atomRefs must be given, or it must be a child of
    <h:tt>bond</h:tt>. There are no implicit conventions such as E/Z. This will be extended to other types of stereochemistry.</h:p>
  <h:p>At present the following are supported:</h:p>
  <h:ul>
    <h:li>No atomRefs attribute.
      <h:b>Deprecated, but probably unavoidable</h:b>. This must be a child of
      <h:tt>bond</h:tt>where it picks up the two atomRefs in the
      <h:tt>atomRefs2</h:tt>attribute. Possible values are C/T (which only makes sense if there is exactly one ligand at each end of the bond) and W/H. The latter should be raplaced by
      <h:tt>atomParity</h:tt>wherever possible. Note that W/H makes no sense without 2D atom coordinates.</h:li>
    <h:li>
      <h:b>atomRefs4 attribute</h:b>. The 4 atoms represent a cis or trans configuration. This may or may not be a child of
      <h:tt>bond</h:tt>; if so the second and third atomRefs should be identical with the two atomRefs in the bond. This structure can be used to guide processors in processing stereochemistry and is recommended, since there is general agreement on the semantics. The semantics of
      <h:tt>bondStereo</h:tt>not related to bonds is less clear (e.g. cumulenes, substituted ring nuclei) etc.It is currently an error to have more than one
      <h:tt>bondStereo</h:tt>referring to the same ordered 4-atom list</h:li>
    <h:li>
      <h:b>atomRefs attribute</h:b>. There are other stereochemical conventions such as cis/trans for metal complexes which require a variable number of reference atoms. This allows users to create their own - at present we do not see CML creating exhaustive tables. For example cis/trans square-planar complexes might require 4 (or 5) atoms for their definition, octahedral 6 or 7, etc. In principle this is very powerful and could supplement or replace the use of
      <h:i>cis-</h:i>,
      <h:i>mer-</h:i>, etc.</h:li>
  </h:ul>
  <h:p>the
    <h:tt>atomRefs</h:tt>and
    <h:tt>atomRefs4</h:tt>attributes cannot be used simultaneously.</h:p>
</h:div>
<h:div class="example" href="bondStereo1.xml"/>

Element Information

Model

Attributes

QName Type Fixed Default Use Inheritable Annotation
atomRefArray atomRefArrayType optional
<h:div class="summary">An array of references to atoms.</h:div>
<h:div class="description">Typical use would be to atoms defining a plane.</h:div>
atomRefs2 atomRefs2Type optional
<h:div class="summary">References to two different atoms.</h:div>
<h:div class="description">Available for any reference to atoms but normally will be the normal reference attribute on the bond element. The order of atoms is preserved and may matter for some conventions (e.g. wedge/hatch or donor bonds.</h:div>
atomRefs4 atomRefs4Type optional
<h:div class="summary">A list of 4 references to atoms.</h:div>
<h:div class="description">Typically used for defining torsions and atomParities, but could also be used to define a four-centre bond.</h:div>
convention namespaceRefType optional
<h:div class="summary">A reference to a convention.</h:div>
<h:div class="description">There is no controlled vocabulary for conventions, but the author must ensure that the semantics are openly available and that there are mechanisms for implementation. The convention is inherited by all the subelements, so that a convention for
  <h:tt>molecule</h:tt>would by default extend to its
  <h:tt>bond</h:tt>and
  <h:tt>atom</h:tt>children. This can be overwritten if necessary by an explicit
  <h:tt>convention</h:tt>.
  <h:p>It may be useful to create conventions with namespaces (e.g.
    <h:tt>iupac:name</h:tt>). Use of
    <h:tt>convention</h:tt>will normally require non-STMML semantics, and should be used with caution. We would expect that conventions prefixed with "ISO" would be useful, such as ISO8601 for dateTimes.</h:p>
  <h:p>There is no default, but the conventions of STMML or the related language (e.g. CML) will be assumed.</h:p>
</h:div>
<h:div class="example" id="ex" href="convGroup1.xml"/>
conventionValue xsd:string optional
<h:div class="summary">The value of an element with a _convention_.</h:div>
<h:div class="description">When convention is used this attribute must be present and element content must be empty.</h:div>
dictRef namespaceRefType optional
<h:div class="summary">A reference to a dictionary entry.</h:div>
<h:div class="description">Elements in data instances such as _scalar_ may have a
  <h:tt>dictRef</h:tt>attribute to point to an entry in a dictionary. To avoid excessive use of (mutable) filenames and URIs we recommend a namespace prefix, mapped to a namespace URI in the normal manner. In this case, of course, the namespace URI must point to a real XML doc containing _entry_ elements and validated against STMML Schema.
  <h:p>Where there is concern about the dictionary becoming separated from the doc the dictionary entries can be physically included as part of the data instance and the normal XPointer addressing mechanism can be used.</h:p>
  <h:p>This attribute can also be used on _dictionary_ elements to define the namespace prefix</h:p>
</h:div>
<h:div class="example" href="dictRefGroup1.xml"/>
id idType optional
<h:div class="summary">A unique ID for an element.</h:div>
<h:div class="description">Id is used for machine identification of elements and in general should not have application semantics. It is similar to the XML ID type as containing only alphanumerics, '_', ',' and '-' and and must start with an alphabetic character. Ids are case sensitive. Ids should be unique within local scope, thus all atoms within a molecule should have unique ids, but separated molecules within a doc (such as a published article) might have identical ids. Software should be able to search local scope (e.g. all atoms within a molecule). However this is under constant review.</h:div>
title xsd:string optional
<h:div class="summary">A title on an element.</h:div>
<h:div class="description">No controlled value.</h:div>
<h:div class="example" href="title1.xml"/>
Wildcard: ANY attribute from ANY namespace OTHER than 'http://www.xml-cml.org/schema'

Source

<xsd:element name="bondStereo" id="el.bondStereo" substitutionGroup="anyCml">
  <xsd:annotation>
    <xsd:documentation>
      <h:div class="summary">A container supporting cis trans wedge hatch and other stereochemistry.</h:div>
      <h:div class="description">
        <h:p>An explict list of atomRefs must be given, or it must be a child of
          <h:tt>bond</h:tt>. There are no implicit conventions such as E/Z. This will be extended to other types of stereochemistry.</h:p>
        <h:p>At present the following are supported:</h:p>
        <h:ul>
          <h:li>No atomRefs attribute.
            <h:b>Deprecated, but probably unavoidable</h:b>. This must be a child of
            <h:tt>bond</h:tt>where it picks up the two atomRefs in the
            <h:tt>atomRefs2</h:tt>attribute. Possible values are C/T (which only makes sense if there is exactly one ligand at each end of the bond) and W/H. The latter should be raplaced by
            <h:tt>atomParity</h:tt>wherever possible. Note that W/H makes no sense without 2D atom coordinates.</h:li>
          <h:li>
            <h:b>atomRefs4 attribute</h:b>. The 4 atoms represent a cis or trans configuration. This may or may not be a child of
            <h:tt>bond</h:tt>; if so the second and third atomRefs should be identical with the two atomRefs in the bond. This structure can be used to guide processors in processing stereochemistry and is recommended, since there is general agreement on the semantics. The semantics of
            <h:tt>bondStereo</h:tt>not related to bonds is less clear (e.g. cumulenes, substituted ring nuclei) etc.It is currently an error to have more than one
            <h:tt>bondStereo</h:tt>referring to the same ordered 4-atom list</h:li>
          <h:li>
            <h:b>atomRefs attribute</h:b>. There are other stereochemical conventions such as cis/trans for metal complexes which require a variable number of reference atoms. This allows users to create their own - at present we do not see CML creating exhaustive tables. For example cis/trans square-planar complexes might require 4 (or 5) atoms for their definition, octahedral 6 or 7, etc. In principle this is very powerful and could supplement or replace the use of
            <h:i>cis-</h:i>,
            <h:i>mer-</h:i>, etc.</h:li>
        </h:ul>
        <h:p>the
          <h:tt>atomRefs</h:tt>and
          <h:tt>atomRefs4</h:tt>attributes cannot be used simultaneously.</h:p>
      </h:div>
      <h:div class="example" href="bondStereo1.xml"/>
    </xsd:documentation>
  </xsd:annotation>
  <xsd:complexType>
    <xsd:simpleContent>
      <xsd:extension base="stereoType">
        <xsd:attributeGroup ref="atomRefs2"/>
        <xsd:attributeGroup ref="atomRefs4"/>
        <xsd:attributeGroup ref="atomRefArray"/>
        <xsd:attributeGroup ref="title"/>
        <xsd:attributeGroup ref="id"/>
        <xsd:attributeGroup ref="convention"/>
        <xsd:attributeGroup ref="dictRef"/>
        <xsd:attributeGroup ref="conventionValue"/>
        <xsd:anyAttribute namespace="##other" processContents="lax"/>
      </xsd:extension>
    </xsd:simpleContent>
  </xsd:complexType>
</xsd:element>

Sample