chemicalml 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/docs.yml +63 -0
- data/.github/workflows/links.yml +99 -0
- data/.github/workflows/opal.yml +34 -0
- data/.github/workflows/performance.yml +25 -0
- data/.github/workflows/rake.yml +19 -0
- data/.github/workflows/release.yml +28 -0
- data/CHANGELOG.md +52 -12
- data/Gemfile +2 -1
- data/Rakefile +9 -4
- data/TODO.align/18-wire-class-registry.md +46 -0
- data/TODO.align/19-schema-aware-translator.md +33 -0
- data/TODO.align/20-missing-translator-rules.md +44 -0
- data/TODO.align/21-encapsulate-translator.md +33 -0
- data/TODO.align/22-dry-role-modules.md +32 -0
- data/TODO.align/23-final-spec-lint.md +25 -0
- data/TODO.align/24-autoload-wire-classes.md +84 -0
- data/TODO.align/25-value-container-schema-awareness.md +44 -0
- data/TODO.align/26-remove-dead-code.md +16 -0
- data/TODO.align/27-final-spec-lint.md +26 -0
- data/TODO.align/28-stereo-model.md +40 -0
- data/TODO.align/29-stereo-wire-children.md +30 -0
- data/TODO.align/30-stereo-translator.md +32 -0
- data/TODO.align/31-final-spec-lint.md +20 -0
- data/TODO.align/32-polymorphic-translator.md +43 -0
- data/TODO.align/33-polymorphic-parse.md +43 -0
- data/TODO.align/34-polymorphic-specs.md +16 -0
- data/TODO.align/35-final-spec-lint.md +10 -0
- data/TODO.align/README.round10.md +30 -0
- data/TODO.align/README.round11.md +50 -0
- data/TODO.align/README.round12.md +73 -0
- data/TODO.align/README.round13.md +59 -0
- data/TODO.align/README.round14.md +48 -0
- data/TODO.align/README.round15.md +86 -0
- data/TODO.align/README.round16.md +46 -0
- data/TODO.align/README.round3.md +27 -0
- data/TODO.align/README.round4.md +18 -0
- data/TODO.align/README.round5.md +20 -0
- data/TODO.align/README.round6.md +27 -0
- data/TODO.align/README.round7.md +43 -0
- data/TODO.align/README.round8.md +24 -0
- data/TODO.align/README.round9.md +50 -0
- data/data/dictionaries/_index.yaml +9 -1
- data/data/dictionaries/cif.yaml +155 -0
- data/data/dictionaries/cml.yaml +172 -0
- data/data/dictionaries/cml_formula.yaml +63 -0
- data/data/dictionaries/cml_name.yaml +84 -0
- data/data/dictionaries/unit_non_si.yaml +30 -0
- data/data/dictionaries/unit_type.yaml +12 -0
- data/lib/chemicalml/cml/aliases.rb +20 -0
- data/lib/chemicalml/cml/base/abundance.rb +28 -0
- data/lib/chemicalml/cml/base/action.rb +30 -0
- data/lib/chemicalml/cml/base/action_list.rb +33 -0
- data/lib/chemicalml/cml/base/amount.rb +28 -0
- data/lib/chemicalml/cml/base/angle.rb +32 -0
- data/lib/chemicalml/cml/base/any_cml.rb +28 -0
- data/lib/chemicalml/cml/base/array.rb +1 -1
- data/lib/chemicalml/cml/base/array_list.rb +28 -0
- data/lib/chemicalml/cml/base/atom.rb +19 -1
- data/lib/chemicalml/cml/base/atom_array.rb +1 -1
- data/lib/chemicalml/cml/base/atom_parity.rb +1 -1
- data/lib/chemicalml/cml/base/atom_set.rb +28 -0
- data/lib/chemicalml/cml/base/atom_type.rb +32 -0
- data/lib/chemicalml/cml/base/atom_type_list.rb +31 -0
- data/lib/chemicalml/cml/base/atomic_basis_function.rb +40 -0
- data/lib/chemicalml/cml/base/band.rb +32 -0
- data/lib/chemicalml/cml/base/band_list.rb +31 -0
- data/lib/chemicalml/cml/base/basis_set.rb +31 -0
- data/lib/chemicalml/cml/base/bond.rb +5 -1
- data/lib/chemicalml/cml/base/bond_array.rb +1 -1
- data/lib/chemicalml/cml/base/bond_set.rb +28 -0
- data/lib/chemicalml/cml/base/bond_stereo.rb +1 -1
- data/lib/chemicalml/cml/base/bond_type.rb +32 -0
- data/lib/chemicalml/cml/base/bond_type_list.rb +31 -0
- data/lib/chemicalml/cml/base/cell_parameter.rb +34 -0
- data/lib/chemicalml/cml/base/cml_module.rb +1 -1
- data/lib/chemicalml/cml/base/condition_list.rb +33 -0
- data/lib/chemicalml/cml/base/crystal.rb +35 -0
- data/lib/chemicalml/cml/base/definition.rb +30 -0
- data/lib/chemicalml/cml/base/description.rb +30 -0
- data/lib/chemicalml/cml/base/dictionary.rb +1 -1
- data/lib/chemicalml/cml/base/dictionary_entry.rb +1 -1
- data/lib/chemicalml/cml/base/dimension.rb +32 -0
- data/lib/chemicalml/cml/base/document.rb +9 -1
- data/lib/chemicalml/cml/base/documentation.rb +30 -0
- data/lib/chemicalml/cml/base/eigen.rb +34 -0
- data/lib/chemicalml/cml/base/electron.rb +36 -0
- data/lib/chemicalml/cml/base/formula.rb +1 -1
- data/lib/chemicalml/cml/base/fragment.rb +35 -0
- data/lib/chemicalml/cml/base/fragment_list.rb +31 -0
- data/lib/chemicalml/cml/base/gradient.rb +32 -0
- data/lib/chemicalml/cml/base/identifier.rb +1 -1
- data/lib/chemicalml/cml/base/isotope.rb +34 -0
- data/lib/chemicalml/cml/base/isotope_list.rb +31 -0
- data/lib/chemicalml/cml/base/join.rb +30 -0
- data/lib/chemicalml/cml/base/kpoint.rb +32 -0
- data/lib/chemicalml/cml/base/kpoint_list.rb +31 -0
- data/lib/chemicalml/cml/base/label.rb +1 -1
- data/lib/chemicalml/cml/base/lattice.rb +35 -0
- data/lib/chemicalml/cml/base/lattice_vector.rb +30 -0
- data/lib/chemicalml/cml/base/length.rb +32 -0
- data/lib/chemicalml/cml/base/line3.rb +30 -0
- data/lib/chemicalml/cml/base/link.rb +38 -0
- data/lib/chemicalml/cml/base/list.rb +1 -1
- data/lib/chemicalml/cml/base/map.rb +28 -0
- data/lib/chemicalml/cml/base/matrix.rb +1 -1
- data/lib/chemicalml/cml/base/mechanism.rb +31 -0
- data/lib/chemicalml/cml/base/mechanism_component.rb +30 -0
- data/lib/chemicalml/cml/base/metadata.rb +1 -1
- data/lib/chemicalml/cml/base/metadata_list.rb +1 -1
- data/lib/chemicalml/cml/base/molecule.rb +17 -1
- data/lib/chemicalml/cml/base/molecule_list.rb +31 -0
- data/lib/chemicalml/cml/base/name.rb +1 -1
- data/lib/chemicalml/cml/base/object.rb +30 -0
- data/lib/chemicalml/cml/base/observation.rb +28 -0
- data/lib/chemicalml/cml/base/parameter.rb +1 -1
- data/lib/chemicalml/cml/base/parameter_list.rb +1 -1
- data/lib/chemicalml/cml/base/particle.rb +30 -0
- data/lib/chemicalml/cml/base/peak.rb +40 -0
- data/lib/chemicalml/cml/base/peak_group.rb +31 -0
- data/lib/chemicalml/cml/base/peak_list.rb +33 -0
- data/lib/chemicalml/cml/base/peak_structure.rb +30 -0
- data/lib/chemicalml/cml/base/plane3.rb +30 -0
- data/lib/chemicalml/cml/base/point3.rb +30 -0
- data/lib/chemicalml/cml/base/potential.rb +30 -0
- data/lib/chemicalml/cml/base/potential_form.rb +30 -0
- data/lib/chemicalml/cml/base/potential_list.rb +31 -0
- data/lib/chemicalml/cml/base/product.rb +1 -1
- data/lib/chemicalml/cml/base/product_list.rb +1 -1
- data/lib/chemicalml/cml/base/property.rb +1 -1
- data/lib/chemicalml/cml/base/property_list.rb +1 -1
- data/lib/chemicalml/cml/base/reactant.rb +1 -1
- data/lib/chemicalml/cml/base/reactant_list.rb +1 -1
- data/lib/chemicalml/cml/base/reaction.rb +9 -1
- data/lib/chemicalml/cml/base/reaction_list.rb +1 -1
- data/lib/chemicalml/cml/base/reaction_scheme.rb +33 -0
- data/lib/chemicalml/cml/base/reaction_step.rb +35 -0
- data/lib/chemicalml/cml/base/reaction_step_list.rb +31 -0
- data/lib/chemicalml/cml/base/reactive_centre.rb +30 -0
- data/lib/chemicalml/cml/base/region.rb +28 -0
- data/lib/chemicalml/cml/base/sample.rb +28 -0
- data/lib/chemicalml/cml/base/scalar.rb +1 -1
- data/lib/chemicalml/cml/base/spectator.rb +28 -0
- data/lib/chemicalml/cml/base/spectator_list.rb +31 -0
- data/lib/chemicalml/cml/base/spectrum.rb +41 -0
- data/lib/chemicalml/cml/base/spectrum_data.rb +33 -0
- data/lib/chemicalml/cml/base/spectrum_list.rb +31 -0
- data/lib/chemicalml/cml/base/sphere3.rb +30 -0
- data/lib/chemicalml/cml/base/stmml.rb +28 -0
- data/lib/chemicalml/cml/base/substance.rb +1 -1
- data/lib/chemicalml/cml/base/substance_list.rb +31 -0
- data/lib/chemicalml/cml/base/symmetry.rb +32 -0
- data/lib/chemicalml/cml/base/system.rb +33 -0
- data/lib/chemicalml/cml/base/table.rb +33 -0
- data/lib/chemicalml/cml/base/table_cell.rb +30 -0
- data/lib/chemicalml/cml/base/table_content.rb +33 -0
- data/lib/chemicalml/cml/base/table_header.rb +31 -0
- data/lib/chemicalml/cml/base/table_header_cell.rb +30 -0
- data/lib/chemicalml/cml/base/table_row.rb +31 -0
- data/lib/chemicalml/cml/base/table_row_list.rb +31 -0
- data/lib/chemicalml/cml/base/torsion.rb +32 -0
- data/lib/chemicalml/cml/base/transform3.rb +30 -0
- data/lib/chemicalml/cml/base/transition_state.rb +28 -0
- data/lib/chemicalml/cml/base/unit.rb +1 -1
- data/lib/chemicalml/cml/base/unit_list.rb +1 -1
- data/lib/chemicalml/cml/base/unit_type.rb +1 -1
- data/lib/chemicalml/cml/base/unit_type_list.rb +1 -1
- data/lib/chemicalml/cml/base/vector3.rb +30 -0
- data/lib/chemicalml/cml/base/xaxis.rb +32 -0
- data/lib/chemicalml/cml/base/yaxis.rb +32 -0
- data/lib/chemicalml/cml/base/z_matrix.rb +30 -0
- data/lib/chemicalml/cml/base.rb +85 -0
- data/lib/chemicalml/cml/child_mappings.rb +168 -0
- data/lib/chemicalml/cml/elements.rb +130 -42
- data/lib/chemicalml/cml/role/abundance.rb +12 -0
- data/lib/chemicalml/cml/role/action.rb +12 -0
- data/lib/chemicalml/cml/role/action_list.rb +12 -0
- data/lib/chemicalml/cml/role/amount.rb +12 -0
- data/lib/chemicalml/cml/role/angle.rb +12 -0
- data/lib/chemicalml/cml/role/any_cml.rb +12 -0
- data/lib/chemicalml/cml/role/array_list.rb +12 -0
- data/lib/chemicalml/cml/role/atom_set.rb +12 -0
- data/lib/chemicalml/cml/role/atom_type.rb +12 -0
- data/lib/chemicalml/cml/role/atom_type_list.rb +12 -0
- data/lib/chemicalml/cml/role/atomic_basis_function.rb +12 -0
- data/lib/chemicalml/cml/role/band.rb +12 -0
- data/lib/chemicalml/cml/role/band_list.rb +12 -0
- data/lib/chemicalml/cml/role/basis_set.rb +12 -0
- data/lib/chemicalml/cml/role/bond_set.rb +12 -0
- data/lib/chemicalml/cml/role/bond_type.rb +12 -0
- data/lib/chemicalml/cml/role/bond_type_list.rb +12 -0
- data/lib/chemicalml/cml/role/cell_parameter.rb +12 -0
- data/lib/chemicalml/cml/role/condition_list.rb +12 -0
- data/lib/chemicalml/cml/role/crystal.rb +12 -0
- data/lib/chemicalml/cml/role/definition.rb +12 -0
- data/lib/chemicalml/cml/role/description.rb +12 -0
- data/lib/chemicalml/cml/role/dimension.rb +12 -0
- data/lib/chemicalml/cml/role/documentation.rb +12 -0
- data/lib/chemicalml/cml/role/eigen.rb +12 -0
- data/lib/chemicalml/cml/role/electron.rb +12 -0
- data/lib/chemicalml/cml/role/fragment.rb +12 -0
- data/lib/chemicalml/cml/role/fragment_list.rb +12 -0
- data/lib/chemicalml/cml/role/gradient.rb +12 -0
- data/lib/chemicalml/cml/role/isotope.rb +12 -0
- data/lib/chemicalml/cml/role/isotope_list.rb +12 -0
- data/lib/chemicalml/cml/role/join.rb +12 -0
- data/lib/chemicalml/cml/role/kpoint.rb +12 -0
- data/lib/chemicalml/cml/role/kpoint_list.rb +12 -0
- data/lib/chemicalml/cml/role/lattice.rb +12 -0
- data/lib/chemicalml/cml/role/lattice_vector.rb +12 -0
- data/lib/chemicalml/cml/role/length.rb +12 -0
- data/lib/chemicalml/cml/role/line3.rb +12 -0
- data/lib/chemicalml/cml/role/link.rb +12 -0
- data/lib/chemicalml/cml/role/map.rb +12 -0
- data/lib/chemicalml/cml/role/mechanism.rb +12 -0
- data/lib/chemicalml/cml/role/mechanism_component.rb +12 -0
- data/lib/chemicalml/cml/role/molecule_list.rb +12 -0
- data/lib/chemicalml/cml/role/object.rb +12 -0
- data/lib/chemicalml/cml/role/observation.rb +12 -0
- data/lib/chemicalml/cml/role/particle.rb +12 -0
- data/lib/chemicalml/cml/role/peak.rb +12 -0
- data/lib/chemicalml/cml/role/peak_group.rb +12 -0
- data/lib/chemicalml/cml/role/peak_list.rb +12 -0
- data/lib/chemicalml/cml/role/peak_structure.rb +12 -0
- data/lib/chemicalml/cml/role/plane3.rb +12 -0
- data/lib/chemicalml/cml/role/point3.rb +12 -0
- data/lib/chemicalml/cml/role/potential.rb +12 -0
- data/lib/chemicalml/cml/role/potential_form.rb +12 -0
- data/lib/chemicalml/cml/role/potential_list.rb +12 -0
- data/lib/chemicalml/cml/role/reaction_scheme.rb +12 -0
- data/lib/chemicalml/cml/role/reaction_step.rb +12 -0
- data/lib/chemicalml/cml/role/reaction_step_list.rb +12 -0
- data/lib/chemicalml/cml/role/reactive_centre.rb +12 -0
- data/lib/chemicalml/cml/role/region.rb +12 -0
- data/lib/chemicalml/cml/role/sample.rb +12 -0
- data/lib/chemicalml/cml/role/spectator.rb +12 -0
- data/lib/chemicalml/cml/role/spectator_list.rb +12 -0
- data/lib/chemicalml/cml/role/spectrum.rb +12 -0
- data/lib/chemicalml/cml/role/spectrum_data.rb +12 -0
- data/lib/chemicalml/cml/role/spectrum_list.rb +12 -0
- data/lib/chemicalml/cml/role/sphere3.rb +12 -0
- data/lib/chemicalml/cml/role/stmml.rb +12 -0
- data/lib/chemicalml/cml/role/substance_list.rb +12 -0
- data/lib/chemicalml/cml/role/symmetry.rb +12 -0
- data/lib/chemicalml/cml/role/system.rb +12 -0
- data/lib/chemicalml/cml/role/table.rb +12 -0
- data/lib/chemicalml/cml/role/table_cell.rb +12 -0
- data/lib/chemicalml/cml/role/table_content.rb +12 -0
- data/lib/chemicalml/cml/role/table_header.rb +12 -0
- data/lib/chemicalml/cml/role/table_header_cell.rb +12 -0
- data/lib/chemicalml/cml/role/table_row.rb +12 -0
- data/lib/chemicalml/cml/role/table_row_list.rb +12 -0
- data/lib/chemicalml/cml/role/torsion.rb +12 -0
- data/lib/chemicalml/cml/role/transform3.rb +12 -0
- data/lib/chemicalml/cml/role/transition_state.rb +12 -0
- data/lib/chemicalml/cml/role/vector3.rb +12 -0
- data/lib/chemicalml/cml/role/xaxis.rb +12 -0
- data/lib/chemicalml/cml/role/yaxis.rb +12 -0
- data/lib/chemicalml/cml/role/z_matrix.rb +12 -0
- data/lib/chemicalml/cml/role.rb +86 -1
- data/lib/chemicalml/cml/schema24/abundance.rb +13 -0
- data/lib/chemicalml/cml/schema24/action.rb +13 -0
- data/lib/chemicalml/cml/schema24/action_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/amount.rb +13 -0
- data/lib/chemicalml/cml/schema24/angle.rb +13 -0
- data/lib/chemicalml/cml/schema24/any_cml.rb +13 -0
- data/lib/chemicalml/cml/schema24/array.rb +15 -0
- data/lib/chemicalml/cml/schema24/array_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/atom.rb +15 -0
- data/lib/chemicalml/cml/schema24/atom_array.rb +15 -0
- data/lib/chemicalml/cml/schema24/atom_parity.rb +15 -0
- data/lib/chemicalml/cml/schema24/atom_set.rb +13 -0
- data/lib/chemicalml/cml/schema24/atom_type.rb +13 -0
- data/lib/chemicalml/cml/schema24/atom_type_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/atomic_basis_function.rb +13 -0
- data/lib/chemicalml/cml/schema24/band.rb +13 -0
- data/lib/chemicalml/cml/schema24/band_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/basis_set.rb +13 -0
- data/lib/chemicalml/cml/schema24/bond.rb +15 -0
- data/lib/chemicalml/cml/schema24/bond_array.rb +15 -0
- data/lib/chemicalml/cml/schema24/bond_set.rb +13 -0
- data/lib/chemicalml/cml/schema24/bond_stereo.rb +15 -0
- data/lib/chemicalml/cml/schema24/bond_type.rb +13 -0
- data/lib/chemicalml/cml/schema24/bond_type_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/cell_parameter.rb +13 -0
- data/lib/chemicalml/cml/schema24/condition_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/context.rb +18 -0
- data/lib/chemicalml/cml/schema24/crystal.rb +13 -0
- data/lib/chemicalml/cml/schema24/definition.rb +13 -0
- data/lib/chemicalml/cml/schema24/description.rb +13 -0
- data/lib/chemicalml/cml/schema24/dictionary.rb +15 -0
- data/lib/chemicalml/cml/schema24/dictionary_entry.rb +15 -0
- data/lib/chemicalml/cml/schema24/dimension.rb +13 -0
- data/lib/chemicalml/cml/schema24/document.rb +15 -0
- data/lib/chemicalml/cml/schema24/documentation.rb +13 -0
- data/lib/chemicalml/cml/schema24/eigen.rb +13 -0
- data/lib/chemicalml/cml/schema24/electron.rb +13 -0
- data/lib/chemicalml/cml/schema24/formula.rb +15 -0
- data/lib/chemicalml/cml/schema24/fragment.rb +13 -0
- data/lib/chemicalml/cml/schema24/fragment_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/gradient.rb +13 -0
- data/lib/chemicalml/cml/schema24/identifier.rb +15 -0
- data/lib/chemicalml/cml/schema24/isotope.rb +13 -0
- data/lib/chemicalml/cml/schema24/isotope_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/join.rb +13 -0
- data/lib/chemicalml/cml/schema24/kpoint.rb +13 -0
- data/lib/chemicalml/cml/schema24/kpoint_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/label.rb +15 -0
- data/lib/chemicalml/cml/schema24/lattice.rb +13 -0
- data/lib/chemicalml/cml/schema24/lattice_vector.rb +13 -0
- data/lib/chemicalml/cml/schema24/length.rb +13 -0
- data/lib/chemicalml/cml/schema24/line3.rb +13 -0
- data/lib/chemicalml/cml/schema24/link.rb +13 -0
- data/lib/chemicalml/cml/schema24/list.rb +15 -0
- data/lib/chemicalml/cml/schema24/map.rb +13 -0
- data/lib/chemicalml/cml/schema24/matrix.rb +15 -0
- data/lib/chemicalml/cml/schema24/mechanism.rb +13 -0
- data/lib/chemicalml/cml/schema24/mechanism_component.rb +13 -0
- data/lib/chemicalml/cml/schema24/metadata.rb +15 -0
- data/lib/chemicalml/cml/schema24/metadata_list.rb +15 -0
- data/lib/chemicalml/cml/schema24/molecule.rb +15 -0
- data/lib/chemicalml/cml/schema24/molecule_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/name.rb +15 -0
- data/lib/chemicalml/cml/schema24/object.rb +13 -0
- data/lib/chemicalml/cml/schema24/observation.rb +13 -0
- data/lib/chemicalml/cml/schema24/parameter.rb +15 -0
- data/lib/chemicalml/cml/schema24/parameter_list.rb +15 -0
- data/lib/chemicalml/cml/schema24/particle.rb +13 -0
- data/lib/chemicalml/cml/schema24/peak.rb +13 -0
- data/lib/chemicalml/cml/schema24/peak_group.rb +13 -0
- data/lib/chemicalml/cml/schema24/peak_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/peak_structure.rb +13 -0
- data/lib/chemicalml/cml/schema24/plane3.rb +13 -0
- data/lib/chemicalml/cml/schema24/point3.rb +13 -0
- data/lib/chemicalml/cml/schema24/potential.rb +13 -0
- data/lib/chemicalml/cml/schema24/potential_form.rb +13 -0
- data/lib/chemicalml/cml/schema24/potential_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/product.rb +15 -0
- data/lib/chemicalml/cml/schema24/product_list.rb +15 -0
- data/lib/chemicalml/cml/schema24/property.rb +15 -0
- data/lib/chemicalml/cml/schema24/property_list.rb +15 -0
- data/lib/chemicalml/cml/schema24/reactant.rb +15 -0
- data/lib/chemicalml/cml/schema24/reactant_list.rb +15 -0
- data/lib/chemicalml/cml/schema24/reaction.rb +15 -0
- data/lib/chemicalml/cml/schema24/reaction_list.rb +15 -0
- data/lib/chemicalml/cml/schema24/reaction_scheme.rb +13 -0
- data/lib/chemicalml/cml/schema24/reaction_step.rb +13 -0
- data/lib/chemicalml/cml/schema24/reaction_step_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/reactive_centre.rb +13 -0
- data/lib/chemicalml/cml/schema24/region.rb +13 -0
- data/lib/chemicalml/cml/schema24/sample.rb +13 -0
- data/lib/chemicalml/cml/schema24/scalar.rb +15 -0
- data/lib/chemicalml/cml/schema24/spectator.rb +13 -0
- data/lib/chemicalml/cml/schema24/spectator_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/spectrum.rb +13 -0
- data/lib/chemicalml/cml/schema24/spectrum_data.rb +13 -0
- data/lib/chemicalml/cml/schema24/spectrum_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/sphere3.rb +13 -0
- data/lib/chemicalml/cml/schema24/stmml.rb +13 -0
- data/lib/chemicalml/cml/schema24/substance.rb +15 -0
- data/lib/chemicalml/cml/schema24/substance_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/symmetry.rb +13 -0
- data/lib/chemicalml/cml/schema24/system.rb +13 -0
- data/lib/chemicalml/cml/schema24/table.rb +13 -0
- data/lib/chemicalml/cml/schema24/table_cell.rb +13 -0
- data/lib/chemicalml/cml/schema24/table_content.rb +13 -0
- data/lib/chemicalml/cml/schema24/table_header.rb +13 -0
- data/lib/chemicalml/cml/schema24/table_header_cell.rb +13 -0
- data/lib/chemicalml/cml/schema24/table_row.rb +13 -0
- data/lib/chemicalml/cml/schema24/table_row_list.rb +13 -0
- data/lib/chemicalml/cml/schema24/torsion.rb +13 -0
- data/lib/chemicalml/cml/schema24/transform3.rb +13 -0
- data/lib/chemicalml/cml/schema24/transition_state.rb +13 -0
- data/lib/chemicalml/cml/schema24/unit.rb +15 -0
- data/lib/chemicalml/cml/schema24/unit_list.rb +15 -0
- data/lib/chemicalml/cml/schema24/unit_type.rb +15 -0
- data/lib/chemicalml/cml/schema24/unit_type_list.rb +15 -0
- data/lib/chemicalml/cml/schema24/vector3.rb +13 -0
- data/lib/chemicalml/cml/schema24/xaxis.rb +13 -0
- data/lib/chemicalml/cml/schema24/yaxis.rb +13 -0
- data/lib/chemicalml/cml/schema24/z_matrix.rb +13 -0
- data/lib/chemicalml/cml/schema24.rb +131 -19
- data/lib/chemicalml/cml/schema3/abundance.rb +13 -0
- data/lib/chemicalml/cml/schema3/action.rb +13 -0
- data/lib/chemicalml/cml/schema3/action_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/amount.rb +13 -0
- data/lib/chemicalml/cml/schema3/angle.rb +13 -0
- data/lib/chemicalml/cml/schema3/any_cml.rb +13 -0
- data/lib/chemicalml/cml/schema3/array.rb +15 -0
- data/lib/chemicalml/cml/schema3/array_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/atom.rb +15 -0
- data/lib/chemicalml/cml/schema3/atom_array.rb +15 -0
- data/lib/chemicalml/cml/schema3/atom_parity.rb +15 -0
- data/lib/chemicalml/cml/schema3/atom_set.rb +13 -0
- data/lib/chemicalml/cml/schema3/atom_type.rb +13 -0
- data/lib/chemicalml/cml/schema3/atom_type_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/atomic_basis_function.rb +13 -0
- data/lib/chemicalml/cml/schema3/band.rb +13 -0
- data/lib/chemicalml/cml/schema3/band_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/basis_set.rb +13 -0
- data/lib/chemicalml/cml/schema3/bond.rb +15 -0
- data/lib/chemicalml/cml/schema3/bond_array.rb +15 -0
- data/lib/chemicalml/cml/schema3/bond_set.rb +13 -0
- data/lib/chemicalml/cml/schema3/bond_stereo.rb +15 -0
- data/lib/chemicalml/cml/schema3/bond_type.rb +13 -0
- data/lib/chemicalml/cml/schema3/bond_type_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/cell_parameter.rb +13 -0
- data/lib/chemicalml/cml/schema3/cml_module.rb +15 -0
- data/lib/chemicalml/cml/schema3/condition_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/context.rb +18 -0
- data/lib/chemicalml/cml/schema3/crystal.rb +13 -0
- data/lib/chemicalml/cml/schema3/definition.rb +13 -0
- data/lib/chemicalml/cml/schema3/description.rb +13 -0
- data/lib/chemicalml/cml/schema3/dictionary.rb +15 -0
- data/lib/chemicalml/cml/schema3/dictionary_entry.rb +15 -0
- data/lib/chemicalml/cml/schema3/dimension.rb +13 -0
- data/lib/chemicalml/cml/schema3/document.rb +15 -0
- data/lib/chemicalml/cml/schema3/documentation.rb +13 -0
- data/lib/chemicalml/cml/schema3/eigen.rb +13 -0
- data/lib/chemicalml/cml/schema3/electron.rb +13 -0
- data/lib/chemicalml/cml/schema3/formula.rb +15 -0
- data/lib/chemicalml/cml/schema3/fragment.rb +13 -0
- data/lib/chemicalml/cml/schema3/fragment_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/gradient.rb +13 -0
- data/lib/chemicalml/cml/schema3/identifier.rb +15 -0
- data/lib/chemicalml/cml/schema3/isotope.rb +13 -0
- data/lib/chemicalml/cml/schema3/isotope_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/join.rb +13 -0
- data/lib/chemicalml/cml/schema3/kpoint.rb +13 -0
- data/lib/chemicalml/cml/schema3/kpoint_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/label.rb +15 -0
- data/lib/chemicalml/cml/schema3/lattice.rb +13 -0
- data/lib/chemicalml/cml/schema3/lattice_vector.rb +13 -0
- data/lib/chemicalml/cml/schema3/length.rb +13 -0
- data/lib/chemicalml/cml/schema3/line3.rb +13 -0
- data/lib/chemicalml/cml/schema3/link.rb +13 -0
- data/lib/chemicalml/cml/schema3/list.rb +15 -0
- data/lib/chemicalml/cml/schema3/map.rb +13 -0
- data/lib/chemicalml/cml/schema3/matrix.rb +15 -0
- data/lib/chemicalml/cml/schema3/mechanism.rb +13 -0
- data/lib/chemicalml/cml/schema3/mechanism_component.rb +13 -0
- data/lib/chemicalml/cml/schema3/metadata.rb +15 -0
- data/lib/chemicalml/cml/schema3/metadata_list.rb +15 -0
- data/lib/chemicalml/cml/schema3/molecule.rb +15 -0
- data/lib/chemicalml/cml/schema3/molecule_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/name.rb +15 -0
- data/lib/chemicalml/cml/schema3/object.rb +13 -0
- data/lib/chemicalml/cml/schema3/observation.rb +13 -0
- data/lib/chemicalml/cml/schema3/parameter.rb +15 -0
- data/lib/chemicalml/cml/schema3/parameter_list.rb +15 -0
- data/lib/chemicalml/cml/schema3/particle.rb +13 -0
- data/lib/chemicalml/cml/schema3/peak.rb +13 -0
- data/lib/chemicalml/cml/schema3/peak_group.rb +13 -0
- data/lib/chemicalml/cml/schema3/peak_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/peak_structure.rb +13 -0
- data/lib/chemicalml/cml/schema3/plane3.rb +13 -0
- data/lib/chemicalml/cml/schema3/point3.rb +13 -0
- data/lib/chemicalml/cml/schema3/potential.rb +13 -0
- data/lib/chemicalml/cml/schema3/potential_form.rb +13 -0
- data/lib/chemicalml/cml/schema3/potential_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/product.rb +15 -0
- data/lib/chemicalml/cml/schema3/product_list.rb +15 -0
- data/lib/chemicalml/cml/schema3/property.rb +15 -0
- data/lib/chemicalml/cml/schema3/property_list.rb +15 -0
- data/lib/chemicalml/cml/schema3/reactant.rb +15 -0
- data/lib/chemicalml/cml/schema3/reactant_list.rb +15 -0
- data/lib/chemicalml/cml/schema3/reaction.rb +15 -0
- data/lib/chemicalml/cml/schema3/reaction_list.rb +15 -0
- data/lib/chemicalml/cml/schema3/reaction_scheme.rb +13 -0
- data/lib/chemicalml/cml/schema3/reaction_step.rb +13 -0
- data/lib/chemicalml/cml/schema3/reaction_step_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/reactive_centre.rb +13 -0
- data/lib/chemicalml/cml/schema3/region.rb +13 -0
- data/lib/chemicalml/cml/schema3/sample.rb +13 -0
- data/lib/chemicalml/cml/schema3/scalar.rb +15 -0
- data/lib/chemicalml/cml/schema3/spectator.rb +13 -0
- data/lib/chemicalml/cml/schema3/spectator_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/spectrum.rb +13 -0
- data/lib/chemicalml/cml/schema3/spectrum_data.rb +13 -0
- data/lib/chemicalml/cml/schema3/spectrum_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/sphere3.rb +13 -0
- data/lib/chemicalml/cml/schema3/stmml.rb +13 -0
- data/lib/chemicalml/cml/schema3/substance.rb +15 -0
- data/lib/chemicalml/cml/schema3/substance_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/symmetry.rb +13 -0
- data/lib/chemicalml/cml/schema3/system.rb +13 -0
- data/lib/chemicalml/cml/schema3/table.rb +13 -0
- data/lib/chemicalml/cml/schema3/table_cell.rb +13 -0
- data/lib/chemicalml/cml/schema3/table_content.rb +13 -0
- data/lib/chemicalml/cml/schema3/table_header.rb +13 -0
- data/lib/chemicalml/cml/schema3/table_header_cell.rb +13 -0
- data/lib/chemicalml/cml/schema3/table_row.rb +13 -0
- data/lib/chemicalml/cml/schema3/table_row_list.rb +13 -0
- data/lib/chemicalml/cml/schema3/torsion.rb +13 -0
- data/lib/chemicalml/cml/schema3/transform3.rb +13 -0
- data/lib/chemicalml/cml/schema3/transition_state.rb +13 -0
- data/lib/chemicalml/cml/schema3/unit.rb +15 -0
- data/lib/chemicalml/cml/schema3/unit_list.rb +15 -0
- data/lib/chemicalml/cml/schema3/unit_type.rb +15 -0
- data/lib/chemicalml/cml/schema3/unit_type_list.rb +15 -0
- data/lib/chemicalml/cml/schema3/vector3.rb +13 -0
- data/lib/chemicalml/cml/schema3/xaxis.rb +13 -0
- data/lib/chemicalml/cml/schema3/yaxis.rb +13 -0
- data/lib/chemicalml/cml/schema3/z_matrix.rb +13 -0
- data/lib/chemicalml/cml/schema3.rb +132 -17
- data/lib/chemicalml/cml/translator/value_translations.rb +40 -35
- data/lib/chemicalml/cml/translator.rb +319 -68
- data/lib/chemicalml/cml/wire_class_registry.rb +42 -0
- data/lib/chemicalml/cml.rb +138 -44
- data/lib/chemicalml/convention/molecular/constraints/atom_coordinates_must_be_paired.rb +32 -0
- data/lib/chemicalml/convention/molecular/constraints/atom_id_must_match_pattern.rb +26 -0
- data/lib/chemicalml/convention/molecular/constraints/atom_must_have_element_type.rb +20 -0
- data/lib/chemicalml/convention/molecular/constraints/atom_must_have_id.rb +20 -0
- data/lib/chemicalml/convention/molecular/constraints/bond_must_have_atom_refs2.rb +20 -0
- data/lib/chemicalml/convention/molecular/constraints/bond_must_have_order.rb +20 -0
- data/lib/chemicalml/convention/molecular/constraints/bond_order_should_not_be_numeric.rb +27 -0
- data/lib/chemicalml/convention/molecular/constraints/molecule_must_have_id.rb +20 -0
- data/lib/chemicalml/convention/molecular/constraints/property_must_have_dict_ref.rb +20 -0
- data/lib/chemicalml/convention/molecular/constraints/scalar_must_have_data_type.rb +20 -0
- data/lib/chemicalml/convention/molecular/constraints.rb +20 -3
- data/lib/chemicalml/convention/molecular.rb +10 -0
- data/lib/chemicalml/model/atom.rb +28 -4
- data/lib/chemicalml/model/atom_parity.rb +21 -0
- data/lib/chemicalml/model/bond.rb +9 -3
- data/lib/chemicalml/model/bond_stereo.rb +29 -0
- data/lib/chemicalml/model/molecule.rb +13 -6
- data/lib/chemicalml/model.rb +2 -0
- data/lib/chemicalml/version.rb +1 -1
- data/lib/chemicalml/versioned_parser.rb +53 -12
- data/lib/chemicalml.rb +3 -1
- metadata +476 -40
- data/lib/chemicalml/cml/array.rb +0 -10
- data/lib/chemicalml/cml/atom.rb +0 -10
- data/lib/chemicalml/cml/atom_array.rb +0 -10
- data/lib/chemicalml/cml/atom_parity.rb +0 -10
- data/lib/chemicalml/cml/bond.rb +0 -10
- data/lib/chemicalml/cml/bond_array.rb +0 -10
- data/lib/chemicalml/cml/bond_stereo.rb +0 -10
- data/lib/chemicalml/cml/cml_module.rb +0 -10
- data/lib/chemicalml/cml/dictionary.rb +0 -10
- data/lib/chemicalml/cml/dictionary_entry.rb +0 -10
- data/lib/chemicalml/cml/document.rb +0 -10
- data/lib/chemicalml/cml/formula.rb +0 -10
- data/lib/chemicalml/cml/identifier.rb +0 -10
- data/lib/chemicalml/cml/label.rb +0 -10
- data/lib/chemicalml/cml/list.rb +0 -10
- data/lib/chemicalml/cml/matrix.rb +0 -10
- data/lib/chemicalml/cml/metadata.rb +0 -10
- data/lib/chemicalml/cml/metadata_list.rb +0 -10
- data/lib/chemicalml/cml/molecule.rb +0 -10
- data/lib/chemicalml/cml/name.rb +0 -10
- data/lib/chemicalml/cml/parameter.rb +0 -10
- data/lib/chemicalml/cml/parameter_list.rb +0 -10
- data/lib/chemicalml/cml/product.rb +0 -10
- data/lib/chemicalml/cml/product_list.rb +0 -10
- data/lib/chemicalml/cml/property.rb +0 -10
- data/lib/chemicalml/cml/property_list.rb +0 -10
- data/lib/chemicalml/cml/reactant.rb +0 -10
- data/lib/chemicalml/cml/reactant_list.rb +0 -10
- data/lib/chemicalml/cml/reaction.rb +0 -10
- data/lib/chemicalml/cml/reaction_list.rb +0 -10
- data/lib/chemicalml/cml/scalar.rb +0 -10
- data/lib/chemicalml/cml/substance.rb +0 -10
- data/lib/chemicalml/cml/unit.rb +0 -10
- data/lib/chemicalml/cml/unit_list.rb +0 -10
- data/lib/chemicalml/cml/unit_type.rb +0 -10
- data/lib/chemicalml/cml/unit_type_list.rb +0 -10
- data/lib/chemicalml/cml/wire_class_macro.rb +0 -45
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Base
|
|
6
|
+
module TableRowList
|
|
7
|
+
def self.included(klass)
|
|
8
|
+
klass.class_eval do
|
|
9
|
+
include Chemicalml::Cml::Role::TableRowList
|
|
10
|
+
attribute :id, :string
|
|
11
|
+
attribute :title, :string
|
|
12
|
+
attribute :dict_ref, :string
|
|
13
|
+
attribute :convention, :string
|
|
14
|
+
|
|
15
|
+
attribute :table_rows, :tableRow, collection: true
|
|
16
|
+
|
|
17
|
+
xml do
|
|
18
|
+
namespace Chemicalml::Cml::Namespace
|
|
19
|
+
map_element "tableRow", to: :table_rows
|
|
20
|
+
root "tableRowList"
|
|
21
|
+
map_attribute "id", to: :id
|
|
22
|
+
map_attribute "title", to: :title
|
|
23
|
+
map_attribute "dictRef", to: :dict_ref
|
|
24
|
+
map_attribute "convention", to: :convention
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Base
|
|
6
|
+
module Torsion
|
|
7
|
+
def self.included(klass)
|
|
8
|
+
klass.class_eval do
|
|
9
|
+
include Chemicalml::Cml::Role::Torsion
|
|
10
|
+
attribute :id, :string
|
|
11
|
+
attribute :title, :string
|
|
12
|
+
attribute :dict_ref, :string
|
|
13
|
+
attribute :convention, :string
|
|
14
|
+
attribute :atomRefs4, :string
|
|
15
|
+
attribute :units, :string
|
|
16
|
+
|
|
17
|
+
xml do
|
|
18
|
+
namespace Chemicalml::Cml::Namespace
|
|
19
|
+
root "torsion"
|
|
20
|
+
map_attribute "id", to: :id
|
|
21
|
+
map_attribute "title", to: :title
|
|
22
|
+
map_attribute "dictRef", to: :dict_ref
|
|
23
|
+
map_attribute "convention", to: :convention
|
|
24
|
+
map_attribute "atomRefs4", to: :atomRefs4
|
|
25
|
+
map_attribute "units", to: :units
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Base
|
|
6
|
+
module Transform3
|
|
7
|
+
def self.included(klass)
|
|
8
|
+
klass.class_eval do
|
|
9
|
+
include Chemicalml::Cml::Role::Transform3
|
|
10
|
+
attribute :id, :string
|
|
11
|
+
attribute :title, :string
|
|
12
|
+
attribute :dict_ref, :string
|
|
13
|
+
attribute :convention, :string
|
|
14
|
+
attribute :content, :string
|
|
15
|
+
|
|
16
|
+
xml do
|
|
17
|
+
namespace Chemicalml::Cml::Namespace
|
|
18
|
+
root "transform3"
|
|
19
|
+
map_attribute "id", to: :id
|
|
20
|
+
map_attribute "title", to: :title
|
|
21
|
+
map_attribute "dictRef", to: :dict_ref
|
|
22
|
+
map_attribute "convention", to: :convention
|
|
23
|
+
map_content to: :content
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Base
|
|
6
|
+
module TransitionState
|
|
7
|
+
def self.included(klass)
|
|
8
|
+
klass.class_eval do
|
|
9
|
+
include Chemicalml::Cml::Role::TransitionState
|
|
10
|
+
attribute :id, :string
|
|
11
|
+
attribute :title, :string
|
|
12
|
+
attribute :dict_ref, :string
|
|
13
|
+
attribute :convention, :string
|
|
14
|
+
|
|
15
|
+
xml do
|
|
16
|
+
namespace Chemicalml::Cml::Namespace
|
|
17
|
+
root "transitionState"
|
|
18
|
+
map_attribute "id", to: :id
|
|
19
|
+
map_attribute "title", to: :title
|
|
20
|
+
map_attribute "dictRef", to: :dict_ref
|
|
21
|
+
map_attribute "convention", to: :convention
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -14,7 +14,7 @@ module Chemicalml
|
|
|
14
14
|
attribute :unit_types, :unitType, collection: true
|
|
15
15
|
|
|
16
16
|
xml do
|
|
17
|
-
|
|
17
|
+
namespace Chemicalml::Cml::Namespace
|
|
18
18
|
root "unitTypeList"
|
|
19
19
|
map_attribute "title", to: :title
|
|
20
20
|
map_attribute "namespace", to: :namespace
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Base
|
|
6
|
+
module Vector3
|
|
7
|
+
def self.included(klass)
|
|
8
|
+
klass.class_eval do
|
|
9
|
+
include Chemicalml::Cml::Role::Vector3
|
|
10
|
+
attribute :id, :string
|
|
11
|
+
attribute :title, :string
|
|
12
|
+
attribute :dict_ref, :string
|
|
13
|
+
attribute :convention, :string
|
|
14
|
+
attribute :content, :string
|
|
15
|
+
|
|
16
|
+
xml do
|
|
17
|
+
namespace Chemicalml::Cml::Namespace
|
|
18
|
+
root "vector3"
|
|
19
|
+
map_attribute "id", to: :id
|
|
20
|
+
map_attribute "title", to: :title
|
|
21
|
+
map_attribute "dictRef", to: :dict_ref
|
|
22
|
+
map_attribute "convention", to: :convention
|
|
23
|
+
map_content to: :content
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Base
|
|
6
|
+
module Xaxis
|
|
7
|
+
def self.included(klass)
|
|
8
|
+
klass.class_eval do
|
|
9
|
+
include Chemicalml::Cml::Role::Xaxis
|
|
10
|
+
attribute :id, :string
|
|
11
|
+
attribute :title, :string
|
|
12
|
+
attribute :dict_ref, :string
|
|
13
|
+
attribute :convention, :string
|
|
14
|
+
attribute :units, :string
|
|
15
|
+
attribute :multiplier, :string
|
|
16
|
+
|
|
17
|
+
xml do
|
|
18
|
+
namespace Chemicalml::Cml::Namespace
|
|
19
|
+
root "xaxis"
|
|
20
|
+
map_attribute "id", to: :id
|
|
21
|
+
map_attribute "title", to: :title
|
|
22
|
+
map_attribute "dictRef", to: :dict_ref
|
|
23
|
+
map_attribute "convention", to: :convention
|
|
24
|
+
map_attribute "units", to: :units
|
|
25
|
+
map_attribute "multiplier", to: :multiplier
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Base
|
|
6
|
+
module Yaxis
|
|
7
|
+
def self.included(klass)
|
|
8
|
+
klass.class_eval do
|
|
9
|
+
include Chemicalml::Cml::Role::Yaxis
|
|
10
|
+
attribute :id, :string
|
|
11
|
+
attribute :title, :string
|
|
12
|
+
attribute :dict_ref, :string
|
|
13
|
+
attribute :convention, :string
|
|
14
|
+
attribute :units, :string
|
|
15
|
+
attribute :multiplier, :string
|
|
16
|
+
|
|
17
|
+
xml do
|
|
18
|
+
namespace Chemicalml::Cml::Namespace
|
|
19
|
+
root "yaxis"
|
|
20
|
+
map_attribute "id", to: :id
|
|
21
|
+
map_attribute "title", to: :title
|
|
22
|
+
map_attribute "dictRef", to: :dict_ref
|
|
23
|
+
map_attribute "convention", to: :convention
|
|
24
|
+
map_attribute "units", to: :units
|
|
25
|
+
map_attribute "multiplier", to: :multiplier
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Base
|
|
6
|
+
module ZMatrix
|
|
7
|
+
def self.included(klass)
|
|
8
|
+
klass.class_eval do
|
|
9
|
+
include Chemicalml::Cml::Role::ZMatrix
|
|
10
|
+
attribute :id, :string
|
|
11
|
+
attribute :title, :string
|
|
12
|
+
attribute :dict_ref, :string
|
|
13
|
+
attribute :convention, :string
|
|
14
|
+
attribute :content, :string
|
|
15
|
+
|
|
16
|
+
xml do
|
|
17
|
+
namespace Chemicalml::Cml::Namespace
|
|
18
|
+
root "zMatrix"
|
|
19
|
+
map_attribute "id", to: :id
|
|
20
|
+
map_attribute "title", to: :title
|
|
21
|
+
map_attribute "dictRef", to: :dict_ref
|
|
22
|
+
map_attribute "convention", to: :convention
|
|
23
|
+
map_content to: :content
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
data/lib/chemicalml/cml/base.rb
CHANGED
|
@@ -46,6 +46,91 @@ module Chemicalml
|
|
|
46
46
|
autoload :UnitList, "chemicalml/cml/base/unit_list"
|
|
47
47
|
autoload :UnitType, "chemicalml/cml/base/unit_type"
|
|
48
48
|
autoload :UnitTypeList, "chemicalml/cml/base/unit_type_list"
|
|
49
|
+
autoload :Abundance, "chemicalml/cml/base/abundance"
|
|
50
|
+
autoload :Action, "chemicalml/cml/base/action"
|
|
51
|
+
autoload :ActionList, "chemicalml/cml/base/action_list"
|
|
52
|
+
autoload :Amount, "chemicalml/cml/base/amount"
|
|
53
|
+
autoload :Angle, "chemicalml/cml/base/angle"
|
|
54
|
+
autoload :AnyCml, "chemicalml/cml/base/any_cml"
|
|
55
|
+
autoload :ArrayList, "chemicalml/cml/base/array_list"
|
|
56
|
+
autoload :AtomSet, "chemicalml/cml/base/atom_set"
|
|
57
|
+
autoload :AtomType, "chemicalml/cml/base/atom_type"
|
|
58
|
+
autoload :AtomTypeList, "chemicalml/cml/base/atom_type_list"
|
|
59
|
+
autoload :AtomicBasisFunction, "chemicalml/cml/base/atomic_basis_function"
|
|
60
|
+
autoload :Band, "chemicalml/cml/base/band"
|
|
61
|
+
autoload :BandList, "chemicalml/cml/base/band_list"
|
|
62
|
+
autoload :BasisSet, "chemicalml/cml/base/basis_set"
|
|
63
|
+
autoload :BondSet, "chemicalml/cml/base/bond_set"
|
|
64
|
+
autoload :BondType, "chemicalml/cml/base/bond_type"
|
|
65
|
+
autoload :BondTypeList, "chemicalml/cml/base/bond_type_list"
|
|
66
|
+
autoload :CellParameter, "chemicalml/cml/base/cell_parameter"
|
|
67
|
+
autoload :ConditionList, "chemicalml/cml/base/condition_list"
|
|
68
|
+
autoload :Crystal, "chemicalml/cml/base/crystal"
|
|
69
|
+
autoload :Definition, "chemicalml/cml/base/definition"
|
|
70
|
+
autoload :Description, "chemicalml/cml/base/description"
|
|
71
|
+
autoload :Dimension, "chemicalml/cml/base/dimension"
|
|
72
|
+
autoload :Documentation, "chemicalml/cml/base/documentation"
|
|
73
|
+
autoload :Eigen, "chemicalml/cml/base/eigen"
|
|
74
|
+
autoload :Electron, "chemicalml/cml/base/electron"
|
|
75
|
+
autoload :Fragment, "chemicalml/cml/base/fragment"
|
|
76
|
+
autoload :FragmentList, "chemicalml/cml/base/fragment_list"
|
|
77
|
+
autoload :Gradient, "chemicalml/cml/base/gradient"
|
|
78
|
+
autoload :Isotope, "chemicalml/cml/base/isotope"
|
|
79
|
+
autoload :IsotopeList, "chemicalml/cml/base/isotope_list"
|
|
80
|
+
autoload :Join, "chemicalml/cml/base/join"
|
|
81
|
+
autoload :Kpoint, "chemicalml/cml/base/kpoint"
|
|
82
|
+
autoload :KpointList, "chemicalml/cml/base/kpoint_list"
|
|
83
|
+
autoload :Lattice, "chemicalml/cml/base/lattice"
|
|
84
|
+
autoload :LatticeVector, "chemicalml/cml/base/lattice_vector"
|
|
85
|
+
autoload :Length, "chemicalml/cml/base/length"
|
|
86
|
+
autoload :Line3, "chemicalml/cml/base/line3"
|
|
87
|
+
autoload :Link, "chemicalml/cml/base/link"
|
|
88
|
+
autoload :Map, "chemicalml/cml/base/map"
|
|
89
|
+
autoload :Mechanism, "chemicalml/cml/base/mechanism"
|
|
90
|
+
autoload :MechanismComponent, "chemicalml/cml/base/mechanism_component"
|
|
91
|
+
autoload :MoleculeList, "chemicalml/cml/base/molecule_list"
|
|
92
|
+
autoload :Object, "chemicalml/cml/base/object"
|
|
93
|
+
autoload :Observation, "chemicalml/cml/base/observation"
|
|
94
|
+
autoload :Particle, "chemicalml/cml/base/particle"
|
|
95
|
+
autoload :Peak, "chemicalml/cml/base/peak"
|
|
96
|
+
autoload :PeakGroup, "chemicalml/cml/base/peak_group"
|
|
97
|
+
autoload :PeakList, "chemicalml/cml/base/peak_list"
|
|
98
|
+
autoload :PeakStructure, "chemicalml/cml/base/peak_structure"
|
|
99
|
+
autoload :Plane3, "chemicalml/cml/base/plane3"
|
|
100
|
+
autoload :Point3, "chemicalml/cml/base/point3"
|
|
101
|
+
autoload :Potential, "chemicalml/cml/base/potential"
|
|
102
|
+
autoload :PotentialForm, "chemicalml/cml/base/potential_form"
|
|
103
|
+
autoload :PotentialList, "chemicalml/cml/base/potential_list"
|
|
104
|
+
autoload :ReactionScheme, "chemicalml/cml/base/reaction_scheme"
|
|
105
|
+
autoload :ReactionStep, "chemicalml/cml/base/reaction_step"
|
|
106
|
+
autoload :ReactionStepList, "chemicalml/cml/base/reaction_step_list"
|
|
107
|
+
autoload :ReactiveCentre, "chemicalml/cml/base/reactive_centre"
|
|
108
|
+
autoload :Region, "chemicalml/cml/base/region"
|
|
109
|
+
autoload :Sample, "chemicalml/cml/base/sample"
|
|
110
|
+
autoload :Spectator, "chemicalml/cml/base/spectator"
|
|
111
|
+
autoload :SpectatorList, "chemicalml/cml/base/spectator_list"
|
|
112
|
+
autoload :Spectrum, "chemicalml/cml/base/spectrum"
|
|
113
|
+
autoload :SpectrumData, "chemicalml/cml/base/spectrum_data"
|
|
114
|
+
autoload :SpectrumList, "chemicalml/cml/base/spectrum_list"
|
|
115
|
+
autoload :Sphere3, "chemicalml/cml/base/sphere3"
|
|
116
|
+
autoload :Stmml, "chemicalml/cml/base/stmml"
|
|
117
|
+
autoload :SubstanceList, "chemicalml/cml/base/substance_list"
|
|
118
|
+
autoload :Symmetry, "chemicalml/cml/base/symmetry"
|
|
119
|
+
autoload :System, "chemicalml/cml/base/system"
|
|
120
|
+
autoload :Table, "chemicalml/cml/base/table"
|
|
121
|
+
autoload :TableCell, "chemicalml/cml/base/table_cell"
|
|
122
|
+
autoload :TableContent, "chemicalml/cml/base/table_content"
|
|
123
|
+
autoload :TableHeader, "chemicalml/cml/base/table_header"
|
|
124
|
+
autoload :TableHeaderCell, "chemicalml/cml/base/table_header_cell"
|
|
125
|
+
autoload :TableRow, "chemicalml/cml/base/table_row"
|
|
126
|
+
autoload :TableRowList, "chemicalml/cml/base/table_row_list"
|
|
127
|
+
autoload :Torsion, "chemicalml/cml/base/torsion"
|
|
128
|
+
autoload :Transform3, "chemicalml/cml/base/transform3"
|
|
129
|
+
autoload :TransitionState, "chemicalml/cml/base/transition_state"
|
|
130
|
+
autoload :Vector3, "chemicalml/cml/base/vector3"
|
|
131
|
+
autoload :Xaxis, "chemicalml/cml/base/xaxis"
|
|
132
|
+
autoload :Yaxis, "chemicalml/cml/base/yaxis"
|
|
133
|
+
autoload :ZMatrix, "chemicalml/cml/base/z_matrix"
|
|
49
134
|
end
|
|
50
135
|
end
|
|
51
136
|
end
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
# Defines which child elements each CML container can hold.
|
|
6
|
+
# Adding a new parent-child relationship = adding one entry
|
|
7
|
+
# here. Used by a script to update the Base mixins.
|
|
8
|
+
#
|
|
9
|
+
# Format: parent_class_name => [[child_xml_name, child_ruby_attr, child_type_symbol], ...]
|
|
10
|
+
module ChildMappings
|
|
11
|
+
MAPPINGS = {
|
|
12
|
+
# Molecule — already has names, identifiers, formulas, properties,
|
|
13
|
+
# labels, atom_array, bond_array, molecules. Add more.
|
|
14
|
+
"Molecule" => [
|
|
15
|
+
["crystal", "crystal", :crystal],
|
|
16
|
+
["spectrum", "spectra", :spectrum],
|
|
17
|
+
["propertyList", "property_lists", :propertyList],
|
|
18
|
+
],
|
|
19
|
+
# Crystal — holds scalar lattice parameters
|
|
20
|
+
"Crystal" => [
|
|
21
|
+
["scalar", "scalars", :scalar],
|
|
22
|
+
["lattice", "lattice", :lattice],
|
|
23
|
+
["symmetry", "symmetry", :symmetry],
|
|
24
|
+
],
|
|
25
|
+
# Lattice — holds latticeVector children
|
|
26
|
+
"Lattice" => [
|
|
27
|
+
["latticeVector", "lattice_vectors", :latticeVector],
|
|
28
|
+
],
|
|
29
|
+
# Spectrum — holds axes and peaks
|
|
30
|
+
"Spectrum" => [
|
|
31
|
+
["xaxis", "xaxis", :xaxis],
|
|
32
|
+
["yaxis", "yaxis", :yaxis],
|
|
33
|
+
["peakList", "peak_list", :peakList],
|
|
34
|
+
["conditionList", "condition_list", :conditionList],
|
|
35
|
+
],
|
|
36
|
+
# PeakList — holds peaks
|
|
37
|
+
"PeakList" => [
|
|
38
|
+
["peak", "peaks", :peak],
|
|
39
|
+
["peakGroup", "peak_groups", :peakGroup],
|
|
40
|
+
],
|
|
41
|
+
# PeakGroup — holds peaks
|
|
42
|
+
"PeakGroup" => [
|
|
43
|
+
["peak", "peaks", :peak],
|
|
44
|
+
],
|
|
45
|
+
# Reaction — already has reactantList, productList. Add more.
|
|
46
|
+
"Reaction" => [
|
|
47
|
+
["spectatorList", "spectator_list", :spectatorList],
|
|
48
|
+
["conditionList", "condition_list", :conditionList],
|
|
49
|
+
["metadataList", "metadata_lists", :metadataList],
|
|
50
|
+
],
|
|
51
|
+
# ReactionScheme
|
|
52
|
+
"ReactionScheme" => [
|
|
53
|
+
["reactionStepList", "reaction_step_lists", :reactionStepList],
|
|
54
|
+
["reaction", "reactions", :reaction],
|
|
55
|
+
],
|
|
56
|
+
# ReactionStepList
|
|
57
|
+
"ReactionStepList" => [
|
|
58
|
+
["reactionStep", "reaction_steps", :reactionStep],
|
|
59
|
+
],
|
|
60
|
+
# ReactionStep
|
|
61
|
+
"ReactionStep" => [
|
|
62
|
+
["reaction", "reaction", :reaction],
|
|
63
|
+
["reactantList", "reactant_list", :reactantList],
|
|
64
|
+
["productList", "product_list", :productList],
|
|
65
|
+
],
|
|
66
|
+
# ConditionList
|
|
67
|
+
"ConditionList" => [
|
|
68
|
+
["scalar", "scalars", :scalar],
|
|
69
|
+
["metadata", "metadata", :metadata],
|
|
70
|
+
],
|
|
71
|
+
# FragmentList
|
|
72
|
+
"FragmentList" => [
|
|
73
|
+
["fragment", "fragments", :fragment],
|
|
74
|
+
],
|
|
75
|
+
# Fragment
|
|
76
|
+
"Fragment" => [
|
|
77
|
+
["molecule", "molecule", :molecule],
|
|
78
|
+
["atomArray", "atom_array", :atomArray],
|
|
79
|
+
["bondArray", "bond_array", :bondArray],
|
|
80
|
+
],
|
|
81
|
+
# IsotopeList
|
|
82
|
+
"IsotopeList" => [
|
|
83
|
+
["isotope", "isotopes", :isotope],
|
|
84
|
+
],
|
|
85
|
+
# BandList
|
|
86
|
+
"BandList" => [
|
|
87
|
+
["band", "bands", :band],
|
|
88
|
+
],
|
|
89
|
+
# KpointList
|
|
90
|
+
"KpointList" => [
|
|
91
|
+
["kpoint", "kpoints", :kpoint],
|
|
92
|
+
],
|
|
93
|
+
# PotentialList
|
|
94
|
+
"PotentialList" => [
|
|
95
|
+
["potential", "potentials", :potential],
|
|
96
|
+
],
|
|
97
|
+
# Table
|
|
98
|
+
"Table" => [
|
|
99
|
+
["tableContent", "table_content", :tableContent],
|
|
100
|
+
["tableHeader", "table_header", :tableHeader],
|
|
101
|
+
],
|
|
102
|
+
# TableContent
|
|
103
|
+
"TableContent" => [
|
|
104
|
+
["tableRow", "table_rows", :tableRow],
|
|
105
|
+
["tableRowList", "table_row_lists", :tableRowList],
|
|
106
|
+
],
|
|
107
|
+
# TableHeader
|
|
108
|
+
"TableHeader" => [
|
|
109
|
+
["tableHeaderCell", "table_header_cells", :tableHeaderCell],
|
|
110
|
+
],
|
|
111
|
+
# TableRow
|
|
112
|
+
"TableRow" => [
|
|
113
|
+
["tableCell", "table_cells", :tableCell],
|
|
114
|
+
],
|
|
115
|
+
# TableRowList
|
|
116
|
+
"TableRowList" => [
|
|
117
|
+
["tableRow", "table_rows", :tableRow],
|
|
118
|
+
],
|
|
119
|
+
# SpectatorList
|
|
120
|
+
"SpectatorList" => [
|
|
121
|
+
["spectator", "spectators", :spectator],
|
|
122
|
+
],
|
|
123
|
+
# MoleculeList
|
|
124
|
+
"MoleculeList" => [
|
|
125
|
+
["molecule", "molecules", :molecule],
|
|
126
|
+
],
|
|
127
|
+
# SubstanceList
|
|
128
|
+
"SubstanceList" => [
|
|
129
|
+
["substance", "substances", :substance],
|
|
130
|
+
],
|
|
131
|
+
# ActionList
|
|
132
|
+
"ActionList" => [
|
|
133
|
+
["action", "actions", :action],
|
|
134
|
+
],
|
|
135
|
+
# AtomTypeList
|
|
136
|
+
"AtomTypeList" => [
|
|
137
|
+
["atomType", "atom_types", :atomType],
|
|
138
|
+
],
|
|
139
|
+
# BondTypeList
|
|
140
|
+
"BondTypeList" => [
|
|
141
|
+
["bondType", "bond_types", :bondType],
|
|
142
|
+
],
|
|
143
|
+
# Mechanism
|
|
144
|
+
"Mechanism" => [
|
|
145
|
+
["mechanismComponent", "mechanism_components", :mechanismComponent],
|
|
146
|
+
],
|
|
147
|
+
# SpectrumList
|
|
148
|
+
"SpectrumList" => [
|
|
149
|
+
["spectrum", "spectra", :spectrum],
|
|
150
|
+
],
|
|
151
|
+
# SpectrumData
|
|
152
|
+
"SpectrumData" => [
|
|
153
|
+
["xaxis", "xaxis", :xaxis],
|
|
154
|
+
["yaxis", "yaxis", :yaxis],
|
|
155
|
+
],
|
|
156
|
+
# BasisSet
|
|
157
|
+
"BasisSet" => [
|
|
158
|
+
["atomicBasisFunction", "atomic_basis_functions", :atomicBasisFunction],
|
|
159
|
+
],
|
|
160
|
+
# System
|
|
161
|
+
"System" => [
|
|
162
|
+
["atomArray", "atom_array", :atomArray],
|
|
163
|
+
["molecule", "molecules", :molecule],
|
|
164
|
+
],
|
|
165
|
+
}.freeze
|
|
166
|
+
end
|
|
167
|
+
end
|
|
168
|
+
end
|