Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: markup/scientific/cml/guyard/extracted
Source used for this grammar: Pierrick Guyard, Chemical Markup Language, CML.ecore
, 2005/06/22
String
, Integer
, Boolean
, Any
, AngleUnits
, AtomRefs_Element
, StringBuiltin
, _String
, _Link
, FloatBuiltin
, _Float
, IntegerBuiltin
, _Integer
, _StringArray
, _FloatArray
, _IntegerArray
, _FloatMatrix
, Coordinate2Builtin
, _Coordinate2
, Coordinate3Builtin
, _Coordinate3
, _Angle
, _Torsion
, _List
, Molecule
, Formula
, Atom
, Atom_Array
, Bond
, Bond_Array
, Electron
, Reaction
, Crystal
, Sequence
, Feature
), 0 root (—), 9 top (Integer
, Boolean
, AngleUnits
, AtomRefs_Element
, StringBuiltin
, FloatBuiltin
, IntegerBuiltin
, Coordinate2Builtin
, Coordinate3Builtin
), 1 bottom (_StringBuiltin
).[degrees]
, [radians]
, [id]
, [elementType]
, [atomId]
, [residueType]
, [residueId]
, [atomRef]
, [order]
, [stereo]
, [spaceground]
, [x2]
, [y2]
, [x3]
, [y3]
, [z3]
, [xFract]
, [yFract]
, [zFract]
, [occupancy]
, [isotope]
2, [formalCharge]
2, [hydrogenCount]
2, [nonHydrogenCount]
2, [atomParity]
2, [length]
, [acell]
, [bcell]
, [ccell]
, [alpha]
, [beta]
, [gamma]
, [z]
2, [delimiter]
, [xy2]
, [xyz3]
, [xyzFract]
, [any]
12.String ::= string
Integer ::= integer
Boolean ::= "true" "false"
Any ::= _String
Any ::= _Link
Any ::= _Float
Any ::= _Integer
Any ::= _StringArray
Any ::= _FloatArray
Any ::= _IntegerArray
Any ::= _FloatMatrix
Any ::= _Coordinate2
Any ::= _Coordinate3
Any ::= _Angle
Any ::= _Torsion
Any ::= _List
Any ::= Molecule
Any ::= Formula
Any ::= Atom
Any ::= Atom_Array
Any ::= Bond
Any ::= Bond_Array
Any ::= Electron
Any ::= Reaction
Any ::= Crystal
Any ::= Sequence
Any ::= Feature
AngleUnits ::= [degrees]::ε [radians]::ε
AtomRefs_Element ::= _StringBuiltin
StringBuiltin ::= [id]::ε [elementType]::ε [atomId]::ε [residueType]::ε [residueId]::ε [atomRef]::ε [order]::ε [stereo]::ε [spaceground]::ε
_String ::= ε
_Link ::= ε
FloatBuiltin ::= [x2]::ε [y2]::ε [x3]::ε [y3]::ε [z3]::ε [xFract]::ε [yFract]::ε [zFract]::ε [occupancy]::ε [isotope]::ε [formalCharge]::ε [hydrogenCount]::ε [nonHydrogenCount]::ε [atomParity]::ε [length]::ε [acell]::ε [bcell]::ε [ccell]::ε [alpha]::ε [beta]::ε [gamma]::ε [z]::ε
_Float ::= ε
IntegerBuiltin ::= [isotope]::ε [formalCharge]::ε [hydrogenCount]::ε [nonHydrogenCount]::ε [atomParity]::ε [z]::ε
_Integer ::= ε
_StringArray ::= [delimiter]::String
_FloatArray ::= ε
_IntegerArray ::= ε
_FloatMatrix ::= ε
Coordinate2Builtin ::= [xy2]::ε
_Coordinate2 ::= ε
Coordinate3Builtin ::= [xyz3]::ε [xyzFract]::ε
_Coordinate3 ::= ε
_Angle ::= ε
_Torsion ::= ε
_List ::=
[any]::Any
Molecule ::=
[any]::Any
Formula ::=
[any]::Any
Atom ::=
[any]::Any
Atom_Array ::=
[any]::Any
Bond ::=
[any]::Any
Bond_Array ::=
[any]::Any
Electron ::=
[any]::Any
Reaction ::=
[any]::Any
Crystal ::=
[any]::Any
Sequence ::=
[any]::Any
Feature ::=
[any]::Any