symmetry

<h:div class="summary">Molecular, crystallographic or other symmetry.</h:div>
<h:div class="description">
  <h:p>
    <h:tt>symmetry</h:tt>provides a label and/or symmetry operations for molecules or crystals. Point and spacegroups can be specified by strings, though these are not enumerated, because of variability in syntax (spaces, case-sensitivity, etc.), potential high symmetries (e.g. TMV disk is D17) and non-standard spacegroup settings. Provision is made for explicit symmetry operations through <matrix> child elements.</h:p>
  <h:p>By default the axes of symmetry are defined by the symbol - thus C2v requires z to be the unique axis, while P21/c requires b/y. Spacegroups imply the semantics defined in International Tables for Crystallography, (Int Union for Cryst., Munksgaard). Point groups are also defined therein.</h:p>
  <h:p>The element may also be used to give a label for the symmetry species (irreducible representation) such as "A1u" for a vibration or orbital.</h:p>
  <h:p>The matrices should be 3x3 for point group operators and 3x4 for spacegroup operators. The use of crystallographic notation ("x,1/2+y,-z") is not supported - this would be <matrix>1 0 0 0.0 0 1 0 0.5 0 0 1 0.0<matrix>.</h:p>
  <h:p>The default convention for point group symmetry is
    <h:tt>Schoenflies</h:tt>and for spacegroups is "H-M". Other conventions (e.g. "Hall") must be specfied through the
    <h:tt>convention</h:tt>attribute.</h:p>
  <h:p>This element implies that the Cartesians or fractional coordinates in a molecule are oriented appropriately. In some cases it may be useful to specify the symmetry of an arbitarily oriented molecule and the <molecule> element has the attribute
    <h:tt>symmetryOriented</h:tt>for this purpose.</h:p>
  <h:p>It may be better to use transform3 to hold the symmetry as they have fixed shape and have better defined mathematical operators.</h:p>
</h:div>
<h:div class="example" href="symmetry1.xml"/>
<h:div class="curation">2005-11-03 PMR. Added transform3 as children.</h:div>

Element Information

Model

anyCml | ANY element from ANY namespace OTHER than 'http://www.xml-cml.org/schema' | ANY element from LOCAL namespace 'No Namespace'
Children: anyCml

Attributes

QName Type Fixed Default Use Inheritable Annotation
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"/>
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>
irreducibleRepresentation xsd:string optional
<h:div class="summary">A symmetry species.</h:div>
<h:div class="description">No fixed semantics, though we may provide a controlled-extensible list in the future.</h:div>
number xsd:nonNegativeInteger optional
<h:div class="summary">A number determined by context</h:div>
<h:div class="description">Used for isotope number in isotope, and rotational symmetry number in symmetry for calculation of entropy, etc.</h:div>
<h:div class="curation">2003-03-30: added number attribut.</h:div>
pointGroup xsd:string optional
<h:div class="summary">A point group.</h:div>
<h:div class="description">No fixed semantics, though Schoenflies is recommended over Hermann-Mauguin. We may provide a controlled-extensible list in the future.</h:div>
spaceGroup xsd:string optional
<h:div class="summary">A space group.</h:div>
<h:div class="description">No fixed semantics, though Hermann-Mauguin or Hall is recommended over Schoenflies. We may provide a controlled-extensible list in the future.</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="symmetry" id="el.symmetry" substitutionGroup="anyCml">
  <xsd:annotation>
    <xsd:documentation>
      <h:div class="summary">Molecular, crystallographic or other symmetry.</h:div>
      <h:div class="description">
        <h:p>
          <h:tt>symmetry</h:tt>provides a label and/or symmetry operations for molecules or crystals. Point and spacegroups can be specified by strings, though these are not enumerated, because of variability in syntax (spaces, case-sensitivity, etc.), potential high symmetries (e.g. TMV disk is D17) and non-standard spacegroup settings. Provision is made for explicit symmetry operations through <matrix> child elements.</h:p>
        <h:p>By default the axes of symmetry are defined by the symbol - thus C2v requires z to be the unique axis, while P21/c requires b/y. Spacegroups imply the semantics defined in International Tables for Crystallography, (Int Union for Cryst., Munksgaard). Point groups are also defined therein.</h:p>
        <h:p>The element may also be used to give a label for the symmetry species (irreducible representation) such as "A1u" for a vibration or orbital.</h:p>
        <h:p>The matrices should be 3x3 for point group operators and 3x4 for spacegroup operators. The use of crystallographic notation ("x,1/2+y,-z") is not supported - this would be <matrix>1 0 0 0.0 0 1 0 0.5 0 0 1 0.0<matrix>.</h:p>
        <h:p>The default convention for point group symmetry is
          <h:tt>Schoenflies</h:tt>and for spacegroups is "H-M". Other conventions (e.g. "Hall") must be specfied through the
          <h:tt>convention</h:tt>attribute.</h:p>
        <h:p>This element implies that the Cartesians or fractional coordinates in a molecule are oriented appropriately. In some cases it may be useful to specify the symmetry of an arbitarily oriented molecule and the <molecule> element has the attribute
          <h:tt>symmetryOriented</h:tt>for this purpose.</h:p>
        <h:p>It may be better to use transform3 to hold the symmetry as they have fixed shape and have better defined mathematical operators.</h:p>
      </h:div>
      <h:div class="example" href="symmetry1.xml"/>
      <h:div class="curation">2005-11-03 PMR. Added transform3 as children.</h:div>
    </xsd:documentation>
  </xsd:annotation>
  <xsd:complexType>
    <xsd:choice minOccurs="0" maxOccurs="unbounded">
      <xsd:element ref="anyCml"/>
      <xsd:any namespace="##other" processContents="lax"/>
      <xsd:any namespace="##local" processContents="lax"/>
    </xsd:choice>
    <xsd:attributeGroup ref="dictRef"/>
    <xsd:attributeGroup ref="convention"/>
    <xsd:attributeGroup ref="title"/>
    <xsd:attributeGroup ref="id"/>
    <xsd:attributeGroup ref="pointGroup"/>
    <xsd:attributeGroup ref="spaceGroup"/>
    <xsd:attributeGroup ref="irreducibleRepresentation"/>
    <xsd:attributeGroup ref="number">
      <xsd:annotation>
        <xsd:documentation>
          <h:div class="specific">The rotational symmetry number. Used for calculation of entropy, etc.</h:div>
        </xsd:documentation>
      </xsd:annotation>
    </xsd:attributeGroup>
    <xsd:anyAttribute namespace="##other" processContents="lax"/>
  </xsd:complexType>
</xsd:element>

Sample