Module: Chemicalml::Cml::Role

Defined in:
lib/chemicalml/cml/role.rb,
lib/chemicalml/cml/role/map.rb,
lib/chemicalml/cml/role/atom.rb,
lib/chemicalml/cml/role/band.rb,
lib/chemicalml/cml/role/bond.rb,
lib/chemicalml/cml/role/join.rb,
lib/chemicalml/cml/role/link.rb,
lib/chemicalml/cml/role/list.rb,
lib/chemicalml/cml/role/name.rb,
lib/chemicalml/cml/role/peak.rb,
lib/chemicalml/cml/role/unit.rb,
lib/chemicalml/cml/role/angle.rb,
lib/chemicalml/cml/role/array.rb,
lib/chemicalml/cml/role/eigen.rb,
lib/chemicalml/cml/role/label.rb,
lib/chemicalml/cml/role/line3.rb,
lib/chemicalml/cml/role/stmml.rb,
lib/chemicalml/cml/role/table.rb,
lib/chemicalml/cml/role/xaxis.rb,
lib/chemicalml/cml/role/yaxis.rb,
lib/chemicalml/cml/role/action.rb,
lib/chemicalml/cml/role/amount.rb,
lib/chemicalml/cml/role/kpoint.rb,
lib/chemicalml/cml/role/length.rb,
lib/chemicalml/cml/role/matrix.rb,
lib/chemicalml/cml/role/object.rb,
lib/chemicalml/cml/role/plane3.rb,
lib/chemicalml/cml/role/point3.rb,
lib/chemicalml/cml/role/region.rb,
lib/chemicalml/cml/role/sample.rb,
lib/chemicalml/cml/role/scalar.rb,
lib/chemicalml/cml/role/system.rb,
lib/chemicalml/cml/role/any_cml.rb,
lib/chemicalml/cml/role/crystal.rb,
lib/chemicalml/cml/role/formula.rb,
lib/chemicalml/cml/role/isotope.rb,
lib/chemicalml/cml/role/lattice.rb,
lib/chemicalml/cml/role/product.rb,
lib/chemicalml/cml/role/sphere3.rb,
lib/chemicalml/cml/role/torsion.rb,
lib/chemicalml/cml/role/vector3.rb,
lib/chemicalml/cml/role/atom_set.rb,
lib/chemicalml/cml/role/bond_set.rb,
lib/chemicalml/cml/role/document.rb,
lib/chemicalml/cml/role/electron.rb,
lib/chemicalml/cml/role/fragment.rb,
lib/chemicalml/cml/role/gradient.rb,
lib/chemicalml/cml/role/metadata.rb,
lib/chemicalml/cml/role/molecule.rb,
lib/chemicalml/cml/role/particle.rb,
lib/chemicalml/cml/role/property.rb,
lib/chemicalml/cml/role/reactant.rb,
lib/chemicalml/cml/role/reaction.rb,
lib/chemicalml/cml/role/spectrum.rb,
lib/chemicalml/cml/role/symmetry.rb,
lib/chemicalml/cml/role/z_matrix.rb,
lib/chemicalml/cml/role/abundance.rb,
lib/chemicalml/cml/role/atom_type.rb,
lib/chemicalml/cml/role/band_list.rb,
lib/chemicalml/cml/role/basis_set.rb,
lib/chemicalml/cml/role/bond_type.rb,
lib/chemicalml/cml/role/dimension.rb,
lib/chemicalml/cml/role/mechanism.rb,
lib/chemicalml/cml/role/parameter.rb,
lib/chemicalml/cml/role/peak_list.rb,
lib/chemicalml/cml/role/potential.rb,
lib/chemicalml/cml/role/spectator.rb,
lib/chemicalml/cml/role/substance.rb,
lib/chemicalml/cml/role/table_row.rb,
lib/chemicalml/cml/role/unit_list.rb,
lib/chemicalml/cml/role/unit_type.rb,
lib/chemicalml/cml/role/array_list.rb,
lib/chemicalml/cml/role/atom_array.rb,
lib/chemicalml/cml/role/bond_array.rb,
lib/chemicalml/cml/role/cml_module.rb,
lib/chemicalml/cml/role/definition.rb,
lib/chemicalml/cml/role/dictionary.rb,
lib/chemicalml/cml/role/identifier.rb,
lib/chemicalml/cml/role/peak_group.rb,
lib/chemicalml/cml/role/table_cell.rb,
lib/chemicalml/cml/role/transform3.rb,
lib/chemicalml/cml/role/action_list.rb,
lib/chemicalml/cml/role/atom_parity.rb,
lib/chemicalml/cml/role/bond_stereo.rb,
lib/chemicalml/cml/role/description.rb,
lib/chemicalml/cml/role/kpoint_list.rb,
lib/chemicalml/cml/role/observation.rb,
lib/chemicalml/cml/role/isotope_list.rb,
lib/chemicalml/cml/role/product_list.rb,
lib/chemicalml/cml/role/table_header.rb,
lib/chemicalml/cml/role/documentation.rb,
lib/chemicalml/cml/role/fragment_list.rb,
lib/chemicalml/cml/role/metadata_list.rb,
lib/chemicalml/cml/role/molecule_list.rb,
lib/chemicalml/cml/role/property_list.rb,
lib/chemicalml/cml/role/reactant_list.rb,
lib/chemicalml/cml/role/reaction_list.rb,
lib/chemicalml/cml/role/reaction_step.rb,
lib/chemicalml/cml/role/spectrum_data.rb,
lib/chemicalml/cml/role/spectrum_list.rb,
lib/chemicalml/cml/role/table_content.rb,
lib/chemicalml/cml/role/atom_type_list.rb,
lib/chemicalml/cml/role/bond_type_list.rb,
lib/chemicalml/cml/role/cell_parameter.rb,
lib/chemicalml/cml/role/condition_list.rb,
lib/chemicalml/cml/role/lattice_vector.rb,
lib/chemicalml/cml/role/parameter_list.rb,
lib/chemicalml/cml/role/peak_structure.rb,
lib/chemicalml/cml/role/potential_form.rb,
lib/chemicalml/cml/role/potential_list.rb,
lib/chemicalml/cml/role/spectator_list.rb,
lib/chemicalml/cml/role/substance_list.rb,
lib/chemicalml/cml/role/table_row_list.rb,
lib/chemicalml/cml/role/unit_type_list.rb,
lib/chemicalml/cml/role/reaction_scheme.rb,
lib/chemicalml/cml/role/reactive_centre.rb,
lib/chemicalml/cml/role/dictionary_entry.rb,
lib/chemicalml/cml/role/transition_state.rb,
lib/chemicalml/cml/role/table_header_cell.rb,
lib/chemicalml/cml/role/reaction_step_list.rb,
lib/chemicalml/cml/role/mechanism_component.rb,
lib/chemicalml/cml/role/atomic_basis_function.rb

Overview

Role marker modules — one per CML element. Included by every schema-versioned wire class for that element (Schema3::Molecule and Schema24::Molecule both include Role::Molecule).

Constraints and translator rules check node.is_a?(Role::Molecule) instead of is_a?(Schema3::Molecule) || is_a?(Schema24::Molecule). Adding Schema5 later requires zero constraint edits — Schema5's classes just include the relevant Role modules.

Each Role module is empty — it's a pure type marker, no methods.

Defined Under Namespace

Modules: Abundance, Action, ActionList, Amount, Angle, AnyCml, Array, ArrayList, Atom, AtomArray, AtomParity, AtomSet, AtomType, AtomTypeList, AtomicBasisFunction, Band, BandList, BasisSet, Bond, BondArray, BondSet, BondStereo, BondType, BondTypeList, CellParameter, ConditionList, Crystal, Definition, Description, Dictionary, DictionaryEntry, Dimension, Document, Documentation, Eigen, Electron, Formula, Fragment, FragmentList, Gradient, Identifier, Isotope, IsotopeList, Join, Kpoint, KpointList, Label, Lattice, LatticeVector, Length, Line3, Link, List, Map, Matrix, Mechanism, MechanismComponent, Metadata, MetadataList, Module, Molecule, MoleculeList, Name, Object, Observation, Parameter, ParameterList, Particle, Peak, PeakGroup, PeakList, PeakStructure, Plane3, Point3, Potential, PotentialForm, PotentialList, Product, ProductList, Property, PropertyList, Reactant, ReactantList, Reaction, ReactionList, ReactionScheme, ReactionStep, ReactionStepList, ReactiveCentre, Region, Sample, Scalar, Spectator, SpectatorList, Spectrum, SpectrumData, SpectrumList, Sphere3, Stmml, Substance, SubstanceList, Symmetry, System, Table, TableCell, TableContent, TableHeader, TableHeaderCell, TableRow, TableRowList, Torsion, Transform3, TransitionState, Unit, UnitList, UnitType, UnitTypeList, Vector3, Xaxis, Yaxis, ZMatrix