chemicalml 0.1.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 +7 -0
- data/.gitignore +11 -0
- data/.rubocop.yml +20 -0
- data/CHANGELOG.md +21 -0
- data/CLAUDE.md +198 -0
- data/Gemfile +14 -0
- data/LICENSE +24 -0
- data/NOTICES.adoc +115 -0
- data/README.adoc +87 -0
- data/Rakefile +8 -0
- data/TODO.align/01-cml-base-mixins.md +122 -0
- data/TODO.align/02-real-schema-hierarchies.md +88 -0
- data/TODO.align/03-configuration.md +50 -0
- data/TODO.align/04-parse-entry-points.md +59 -0
- data/TODO.align/05-schema-aware-translator.md +33 -0
- data/TODO.align/06-no-respond-to.md +44 -0
- data/TODO.align/07-canon-xml-comparison.md +43 -0
- data/TODO.align/08-expand-fixtures.md +37 -0
- data/TODO.align/09-final-spec-lint.md +29 -0
- data/TODO.align/10-role-marker-modules.md +54 -0
- data/TODO.align/11-dry-configuration.md +63 -0
- data/TODO.align/12-wire-class-macro.md +51 -0
- data/TODO.align/13-wire-namespace.md +44 -0
- data/TODO.align/14-schema24-correctness.md +37 -0
- data/TODO.align/15-canon-fixture-roundtrip.md +38 -0
- data/TODO.align/16-schema24-convention-coverage.md +33 -0
- data/TODO.align/17-final-spec-lint.md +28 -0
- data/TODO.align/README.md +27 -0
- data/TODO.align/README.round2.md +24 -0
- data/TODO.cml-full/01-reference-docs.md +43 -0
- data/TODO.cml-full/02-schema-versioned-model.md +70 -0
- data/TODO.cml-full/03-fixtures-scrape.md +52 -0
- data/TODO.cml-full/04-convention-framework.md +69 -0
- data/TODO.cml-full/05-dictionary-layer.md +77 -0
- data/TODO.cml-full/06-extend-canonical-translator.md +60 -0
- data/TODO.cml-full/07-attribution-notices.md +42 -0
- data/TODO.cml-full/08-autoload-only.md +48 -0
- data/TODO.cml-full/09-spec-coverage.md +38 -0
- data/TODO.cml-full/README.md +23 -0
- data/chemicalml.gemspec +35 -0
- data/data/dictionaries/_index.yaml +14 -0
- data/data/dictionaries/compchem.yaml +481 -0
- data/data/dictionaries/unit_non_si.yaml +53 -0
- data/data/dictionaries/unit_si.yaml +87 -0
- data/data/dictionaries/unit_type.yaml +113 -0
- data/lib/chemicalml/cml/array.rb +10 -0
- data/lib/chemicalml/cml/atom.rb +10 -0
- data/lib/chemicalml/cml/atom_array.rb +10 -0
- data/lib/chemicalml/cml/atom_parity.rb +10 -0
- data/lib/chemicalml/cml/base/array.rb +36 -0
- data/lib/chemicalml/cml/base/atom.rb +38 -0
- data/lib/chemicalml/cml/base/atom_array.rb +22 -0
- data/lib/chemicalml/cml/base/atom_parity.rb +24 -0
- data/lib/chemicalml/cml/base/bond.rb +28 -0
- data/lib/chemicalml/cml/base/bond_array.rb +22 -0
- data/lib/chemicalml/cml/base/bond_stereo.rb +28 -0
- data/lib/chemicalml/cml/base/cml_module.rb +40 -0
- data/lib/chemicalml/cml/base/dictionary.rb +32 -0
- data/lib/chemicalml/cml/base/dictionary_entry.rb +34 -0
- data/lib/chemicalml/cml/base/document.rb +26 -0
- data/lib/chemicalml/cml/base/formula.rb +38 -0
- data/lib/chemicalml/cml/base/identifier.rb +26 -0
- data/lib/chemicalml/cml/base/label.rb +28 -0
- data/lib/chemicalml/cml/base/list.rb +36 -0
- data/lib/chemicalml/cml/base/matrix.rb +38 -0
- data/lib/chemicalml/cml/base/metadata.rb +30 -0
- data/lib/chemicalml/cml/base/metadata_list.rb +28 -0
- data/lib/chemicalml/cml/base/molecule.rb +40 -0
- data/lib/chemicalml/cml/base/name.rb +26 -0
- data/lib/chemicalml/cml/base/parameter.rb +34 -0
- data/lib/chemicalml/cml/base/parameter_list.rb +28 -0
- data/lib/chemicalml/cml/base/product.rb +22 -0
- data/lib/chemicalml/cml/base/product_list.rb +22 -0
- data/lib/chemicalml/cml/base/property.rb +34 -0
- data/lib/chemicalml/cml/base/property_list.rb +28 -0
- data/lib/chemicalml/cml/base/reactant.rb +22 -0
- data/lib/chemicalml/cml/base/reactant_list.rb +22 -0
- data/lib/chemicalml/cml/base/reaction.rb +32 -0
- data/lib/chemicalml/cml/base/reaction_list.rb +22 -0
- data/lib/chemicalml/cml/base/scalar.rb +32 -0
- data/lib/chemicalml/cml/base/substance.rb +30 -0
- data/lib/chemicalml/cml/base/unit.rb +38 -0
- data/lib/chemicalml/cml/base/unit_list.rb +30 -0
- data/lib/chemicalml/cml/base/unit_type.rb +28 -0
- data/lib/chemicalml/cml/base/unit_type_list.rb +30 -0
- data/lib/chemicalml/cml/base.rb +51 -0
- data/lib/chemicalml/cml/bond.rb +10 -0
- data/lib/chemicalml/cml/bond_array.rb +10 -0
- data/lib/chemicalml/cml/bond_stereo.rb +10 -0
- data/lib/chemicalml/cml/cml_module.rb +10 -0
- data/lib/chemicalml/cml/dictionary.rb +10 -0
- data/lib/chemicalml/cml/dictionary_entry.rb +10 -0
- data/lib/chemicalml/cml/document.rb +10 -0
- data/lib/chemicalml/cml/elements.rb +58 -0
- data/lib/chemicalml/cml/formula.rb +10 -0
- data/lib/chemicalml/cml/identifier.rb +10 -0
- data/lib/chemicalml/cml/label.rb +10 -0
- data/lib/chemicalml/cml/list.rb +10 -0
- data/lib/chemicalml/cml/matrix.rb +10 -0
- data/lib/chemicalml/cml/metadata.rb +10 -0
- data/lib/chemicalml/cml/metadata_list.rb +10 -0
- data/lib/chemicalml/cml/molecule.rb +10 -0
- data/lib/chemicalml/cml/name.rb +10 -0
- data/lib/chemicalml/cml/namespace.rb +17 -0
- data/lib/chemicalml/cml/parameter.rb +10 -0
- data/lib/chemicalml/cml/parameter_list.rb +10 -0
- data/lib/chemicalml/cml/product.rb +10 -0
- data/lib/chemicalml/cml/product_list.rb +10 -0
- data/lib/chemicalml/cml/property.rb +10 -0
- data/lib/chemicalml/cml/property_list.rb +10 -0
- data/lib/chemicalml/cml/reactant.rb +10 -0
- data/lib/chemicalml/cml/reactant_list.rb +10 -0
- data/lib/chemicalml/cml/reaction.rb +10 -0
- data/lib/chemicalml/cml/reaction_list.rb +10 -0
- data/lib/chemicalml/cml/role/array.rb +13 -0
- data/lib/chemicalml/cml/role/atom.rb +13 -0
- data/lib/chemicalml/cml/role/atom_array.rb +13 -0
- data/lib/chemicalml/cml/role/atom_parity.rb +13 -0
- data/lib/chemicalml/cml/role/bond.rb +13 -0
- data/lib/chemicalml/cml/role/bond_array.rb +13 -0
- data/lib/chemicalml/cml/role/bond_stereo.rb +13 -0
- data/lib/chemicalml/cml/role/cml_module.rb +14 -0
- data/lib/chemicalml/cml/role/dictionary.rb +13 -0
- data/lib/chemicalml/cml/role/dictionary_entry.rb +13 -0
- data/lib/chemicalml/cml/role/document.rb +13 -0
- data/lib/chemicalml/cml/role/formula.rb +13 -0
- data/lib/chemicalml/cml/role/identifier.rb +13 -0
- data/lib/chemicalml/cml/role/label.rb +13 -0
- data/lib/chemicalml/cml/role/list.rb +13 -0
- data/lib/chemicalml/cml/role/matrix.rb +13 -0
- data/lib/chemicalml/cml/role/metadata.rb +13 -0
- data/lib/chemicalml/cml/role/metadata_list.rb +13 -0
- data/lib/chemicalml/cml/role/molecule.rb +13 -0
- data/lib/chemicalml/cml/role/name.rb +13 -0
- data/lib/chemicalml/cml/role/parameter.rb +13 -0
- data/lib/chemicalml/cml/role/parameter_list.rb +13 -0
- data/lib/chemicalml/cml/role/product.rb +13 -0
- data/lib/chemicalml/cml/role/product_list.rb +13 -0
- data/lib/chemicalml/cml/role/property.rb +13 -0
- data/lib/chemicalml/cml/role/property_list.rb +13 -0
- data/lib/chemicalml/cml/role/reactant.rb +13 -0
- data/lib/chemicalml/cml/role/reactant_list.rb +13 -0
- data/lib/chemicalml/cml/role/reaction.rb +13 -0
- data/lib/chemicalml/cml/role/reaction_list.rb +13 -0
- data/lib/chemicalml/cml/role/scalar.rb +13 -0
- data/lib/chemicalml/cml/role/substance.rb +13 -0
- data/lib/chemicalml/cml/role/unit.rb +13 -0
- data/lib/chemicalml/cml/role/unit_list.rb +13 -0
- data/lib/chemicalml/cml/role/unit_type.rb +13 -0
- data/lib/chemicalml/cml/role/unit_type_list.rb +13 -0
- data/lib/chemicalml/cml/role.rb +54 -0
- data/lib/chemicalml/cml/scalar.rb +10 -0
- data/lib/chemicalml/cml/schema24/configuration.rb +19 -0
- data/lib/chemicalml/cml/schema24.rb +40 -0
- data/lib/chemicalml/cml/schema3/configuration.rb +17 -0
- data/lib/chemicalml/cml/schema3.rb +40 -0
- data/lib/chemicalml/cml/substance.rb +10 -0
- data/lib/chemicalml/cml/translator/value_translations.rb +265 -0
- data/lib/chemicalml/cml/translator.rb +233 -0
- data/lib/chemicalml/cml/unit.rb +10 -0
- data/lib/chemicalml/cml/unit_list.rb +10 -0
- data/lib/chemicalml/cml/unit_type.rb +10 -0
- data/lib/chemicalml/cml/unit_type_list.rb +10 -0
- data/lib/chemicalml/cml/visitable.rb +65 -0
- data/lib/chemicalml/cml/wire_class_macro.rb +45 -0
- data/lib/chemicalml/cml.rb +55 -0
- data/lib/chemicalml/context_configuration.rb +127 -0
- data/lib/chemicalml/convention/base.rb +48 -0
- data/lib/chemicalml/convention/compchem/constraints/compchem_module_must_contain_job_list.rb +33 -0
- data/lib/chemicalml/convention/compchem/constraints/job_must_contain_initialization.rb +38 -0
- data/lib/chemicalml/convention/compchem/constraints.rb +14 -0
- data/lib/chemicalml/convention/compchem.rb +28 -0
- data/lib/chemicalml/convention/constraint.rb +79 -0
- data/lib/chemicalml/convention/dictionary/constraints/entry_ids_unique_within_dictionary.rb +33 -0
- data/lib/chemicalml/convention/dictionary/constraints/entry_must_have_id_and_term.rb +34 -0
- data/lib/chemicalml/convention/dictionary/constraints.rb +14 -0
- data/lib/chemicalml/convention/dictionary.rb +28 -0
- data/lib/chemicalml/convention/molecular/constraints/atom_array_must_contain_atoms.rb +30 -0
- data/lib/chemicalml/convention/molecular/constraints/atom_ids_unique_within_molecule.rb +42 -0
- data/lib/chemicalml/convention/molecular/constraints/bond_must_reference_atoms_in_same_molecule.rb +54 -0
- data/lib/chemicalml/convention/molecular/constraints.rb +19 -0
- data/lib/chemicalml/convention/molecular.rb +29 -0
- data/lib/chemicalml/convention/registry.rb +50 -0
- data/lib/chemicalml/convention/unit_dictionary/constraints/unit_must_have_symbol_and_unit_type.rb +46 -0
- data/lib/chemicalml/convention/unit_dictionary/constraints.rb +12 -0
- data/lib/chemicalml/convention/unit_dictionary.rb +27 -0
- data/lib/chemicalml/convention/unit_type_dictionary/constraints/unit_type_must_have_id_and_name.rb +34 -0
- data/lib/chemicalml/convention/unit_type_dictionary/constraints.rb +12 -0
- data/lib/chemicalml/convention/unit_type_dictionary.rb +27 -0
- data/lib/chemicalml/convention/violation.rb +36 -0
- data/lib/chemicalml/convention.rb +39 -0
- data/lib/chemicalml/dictionary/entry.rb +59 -0
- data/lib/chemicalml/dictionary/enum.rb +51 -0
- data/lib/chemicalml/dictionary/link.rb +32 -0
- data/lib/chemicalml/dictionary/loader.rb +60 -0
- data/lib/chemicalml/dictionary/model.rb +64 -0
- data/lib/chemicalml/dictionary/registry.rb +75 -0
- data/lib/chemicalml/dictionary.rb +26 -0
- data/lib/chemicalml/errors.rb +7 -0
- data/lib/chemicalml/model/atom.rb +40 -0
- data/lib/chemicalml/model/bond.rb +33 -0
- data/lib/chemicalml/model/cml_array.rb +27 -0
- data/lib/chemicalml/model/cml_module.rb +45 -0
- data/lib/chemicalml/model/document.rb +29 -0
- data/lib/chemicalml/model/formula.rb +34 -0
- data/lib/chemicalml/model/identifier.rb +21 -0
- data/lib/chemicalml/model/label.rb +21 -0
- data/lib/chemicalml/model/matrix.rb +29 -0
- data/lib/chemicalml/model/metadata.rb +23 -0
- data/lib/chemicalml/model/metadata_list.rb +25 -0
- data/lib/chemicalml/model/molecule.rb +38 -0
- data/lib/chemicalml/model/name.rb +21 -0
- data/lib/chemicalml/model/node.rb +45 -0
- data/lib/chemicalml/model/parameter.rb +27 -0
- data/lib/chemicalml/model/parameter_list.rb +25 -0
- data/lib/chemicalml/model/product.rb +21 -0
- data/lib/chemicalml/model/product_list.rb +21 -0
- data/lib/chemicalml/model/property.rb +28 -0
- data/lib/chemicalml/model/property_list.rb +25 -0
- data/lib/chemicalml/model/reactant.rb +21 -0
- data/lib/chemicalml/model/reactant_list.rb +21 -0
- data/lib/chemicalml/model/reaction.rb +41 -0
- data/lib/chemicalml/model/reaction_list.rb +23 -0
- data/lib/chemicalml/model/scalar.rb +25 -0
- data/lib/chemicalml/model/substance.rb +25 -0
- data/lib/chemicalml/model.rb +38 -0
- data/lib/chemicalml/schema/definition.rb +41 -0
- data/lib/chemicalml/schema/registry.rb +30 -0
- data/lib/chemicalml/schema.rb +35 -0
- data/lib/chemicalml/version.rb +5 -0
- data/lib/chemicalml/versioned_parser.rb +43 -0
- data/lib/chemicalml.rb +47 -0
- data/lib/tasks/reference_fetch.rake +105 -0
- data/lib/tasks/scrape_fixtures.rake +133 -0
- data/reference-docs/conventions/compchem.md +141 -0
- data/reference-docs/conventions/dictionary.md +119 -0
- data/reference-docs/conventions/index.md +56 -0
- data/reference-docs/conventions/molecular.md +115 -0
- data/reference-docs/conventions/unit-dictionary.md +92 -0
- data/reference-docs/conventions/unitType-dictionary.md +51 -0
- data/reference-docs/dictionaries/compchem.md +335 -0
- data/reference-docs/dictionaries/index.md +52 -0
- data/reference-docs/examples/schema24-index.md +50 -0
- data/reference-docs/examples/schema3-compchem-index.md +14 -0
- data/reference-docs/examples/schema3-molecular-index.md +28 -0
- data/reference-docs/schemas/schema24/schema.xsd +10624 -0
- data/reference-docs/schemas/schema3/schema.xsd +11459 -0
- metadata +306 -0
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::BondStereo.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:BondStereo) if const_defined?(:BondStereo, false)
|
|
8
|
+
const_set(:BondStereo, Chemicalml::Cml::Schema3::BondStereo)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Module.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Module) if const_defined?(:Module, false)
|
|
8
|
+
const_set(:Module, Chemicalml::Cml::Schema3::Module)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Dictionary.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Dictionary) if const_defined?(:Dictionary, false)
|
|
8
|
+
const_set(:Dictionary, Chemicalml::Cml::Schema3::Dictionary)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::DictionaryEntry.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:DictionaryEntry) if const_defined?(:DictionaryEntry, false)
|
|
8
|
+
const_set(:DictionaryEntry, Chemicalml::Cml::Schema3::DictionaryEntry)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Document.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Document) if const_defined?(:Document, false)
|
|
8
|
+
const_set(:Document, Chemicalml::Cml::Schema3::Document)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
# Single source of truth for the set of CML element wire classes
|
|
6
|
+
# each schema version must register. Adding a new CML element =
|
|
7
|
+
# adding one entry to `ALL`. Both `Schema3::Configuration` and
|
|
8
|
+
# `Schema24::Configuration` walk this list.
|
|
9
|
+
module Elements
|
|
10
|
+
# Maps the Ruby class name (Symbol, e.g. `:Atom`) to the XML
|
|
11
|
+
# element id used in the lutaml-model type registry
|
|
12
|
+
# (e.g. `:atom`, `:atomArray`).
|
|
13
|
+
ALL = {
|
|
14
|
+
Array: :array,
|
|
15
|
+
Atom: :atom,
|
|
16
|
+
AtomArray: :atomArray,
|
|
17
|
+
AtomParity: :atomParity,
|
|
18
|
+
Bond: :bond,
|
|
19
|
+
BondArray: :bondArray,
|
|
20
|
+
BondStereo: :bondStereo,
|
|
21
|
+
Dictionary: :dictionary,
|
|
22
|
+
DictionaryEntry: :entry,
|
|
23
|
+
Document: :document,
|
|
24
|
+
Formula: :formula,
|
|
25
|
+
Identifier: :identifier,
|
|
26
|
+
Label: :label,
|
|
27
|
+
List: :list,
|
|
28
|
+
Matrix: :matrix,
|
|
29
|
+
Metadata: :metadata,
|
|
30
|
+
MetadataList: :metadataList,
|
|
31
|
+
Module: :module,
|
|
32
|
+
Molecule: :molecule,
|
|
33
|
+
Name: :name,
|
|
34
|
+
Parameter: :parameter,
|
|
35
|
+
ParameterList: :parameterList,
|
|
36
|
+
Product: :product,
|
|
37
|
+
ProductList: :productList,
|
|
38
|
+
Property: :property,
|
|
39
|
+
PropertyList: :propertyList,
|
|
40
|
+
Reaction: :reaction,
|
|
41
|
+
ReactionList: :reactionList,
|
|
42
|
+
Reactant: :reactant,
|
|
43
|
+
ReactantList: :reactantList,
|
|
44
|
+
Scalar: :scalar,
|
|
45
|
+
Substance: :substance,
|
|
46
|
+
Unit: :unit,
|
|
47
|
+
UnitList: :unitList,
|
|
48
|
+
UnitType: :unitType,
|
|
49
|
+
UnitTypeList: :unitTypeList,
|
|
50
|
+
}.freeze
|
|
51
|
+
|
|
52
|
+
# Elements that exist in Schema 3 but NOT in Schema 2.4. Used by
|
|
53
|
+
# `Schema24::Configuration` to skip registration of classes that
|
|
54
|
+
# don't exist for that version.
|
|
55
|
+
SCHEMA3_ONLY = %i[Module].freeze
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Formula.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Formula) if const_defined?(:Formula, false)
|
|
8
|
+
const_set(:Formula, Chemicalml::Cml::Schema3::Formula)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Identifier.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Identifier) if const_defined?(:Identifier, false)
|
|
8
|
+
const_set(:Identifier, Chemicalml::Cml::Schema3::Identifier)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Label.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Label) if const_defined?(:Label, false)
|
|
8
|
+
const_set(:Label, Chemicalml::Cml::Schema3::Label)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::List.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:List) if const_defined?(:List, false)
|
|
8
|
+
const_set(:List, Chemicalml::Cml::Schema3::List)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Matrix.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Matrix) if const_defined?(:Matrix, false)
|
|
8
|
+
const_set(:Matrix, Chemicalml::Cml::Schema3::Matrix)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Metadata.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Metadata) if const_defined?(:Metadata, false)
|
|
8
|
+
const_set(:Metadata, Chemicalml::Cml::Schema3::Metadata)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::MetadataList.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:MetadataList) if const_defined?(:MetadataList, false)
|
|
8
|
+
const_set(:MetadataList, Chemicalml::Cml::Schema3::MetadataList)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Molecule.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Molecule) if const_defined?(:Molecule, false)
|
|
8
|
+
const_set(:Molecule, Chemicalml::Cml::Schema3::Molecule)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Name.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Name) if const_defined?(:Name, false)
|
|
8
|
+
const_set(:Name, Chemicalml::Cml::Schema3::Name)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
module Chemicalml
|
|
5
|
+
module Cml
|
|
6
|
+
# The default CML XML namespace. CML itself doesn't actually
|
|
7
|
+
# declare a mandatory namespace URI on its root — most published
|
|
8
|
+
# CML files use the bare element names. We declare this for
|
|
9
|
+
# future schema-validation work and so consumers can request
|
|
10
|
+
# namespaced output via the `namespace:` serialisation option.
|
|
11
|
+
class Namespace < Lutaml::Xml::W3c::XmlNamespace
|
|
12
|
+
uri "http://www.xml-cml.org/schema"
|
|
13
|
+
prefix_default "cml"
|
|
14
|
+
element_form_default :unqualified
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Parameter.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Parameter) if const_defined?(:Parameter, false)
|
|
8
|
+
const_set(:Parameter, Chemicalml::Cml::Schema3::Parameter)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::ParameterList.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:ParameterList) if const_defined?(:ParameterList, false)
|
|
8
|
+
const_set(:ParameterList, Chemicalml::Cml::Schema3::ParameterList)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Product.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Product) if const_defined?(:Product, false)
|
|
8
|
+
const_set(:Product, Chemicalml::Cml::Schema3::Product)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::ProductList.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:ProductList) if const_defined?(:ProductList, false)
|
|
8
|
+
const_set(:ProductList, Chemicalml::Cml::Schema3::ProductList)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Property.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Property) if const_defined?(:Property, false)
|
|
8
|
+
const_set(:Property, Chemicalml::Cml::Schema3::Property)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::PropertyList.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:PropertyList) if const_defined?(:PropertyList, false)
|
|
8
|
+
const_set(:PropertyList, Chemicalml::Cml::Schema3::PropertyList)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Reactant.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Reactant) if const_defined?(:Reactant, false)
|
|
8
|
+
const_set(:Reactant, Chemicalml::Cml::Schema3::Reactant)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::ReactantList.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:ReactantList) if const_defined?(:ReactantList, false)
|
|
8
|
+
const_set(:ReactantList, Chemicalml::Cml::Schema3::ReactantList)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::Reaction.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:Reaction) if const_defined?(:Reaction, false)
|
|
8
|
+
const_set(:Reaction, Chemicalml::Cml::Schema3::Reaction)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Backward-compatible alias. New code should reference the versioned
|
|
4
|
+
# class directly: Chemicalml::Cml::Schema3::ReactionList.
|
|
5
|
+
module Chemicalml
|
|
6
|
+
module Cml
|
|
7
|
+
remove_const(:ReactionList) if const_defined?(:ReactionList, false)
|
|
8
|
+
const_set(:ReactionList, Chemicalml::Cml::Schema3::ReactionList)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <array> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::Array and Schema24::Array.
|
|
9
|
+
module Array
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <atom> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::Atom and Schema24::Atom.
|
|
9
|
+
module Atom
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <atomarray> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::AtomArray and Schema24::AtomArray.
|
|
9
|
+
module AtomArray
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <atomparity> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::AtomParity and Schema24::AtomParity.
|
|
9
|
+
module AtomParity
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <bond> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::Bond and Schema24::Bond.
|
|
9
|
+
module Bond
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <bondarray> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::BondArray and Schema24::BondArray.
|
|
9
|
+
module BondArray
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <bondstereo> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::BondStereo and Schema24::BondStereo.
|
|
9
|
+
module BondStereo
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <module> element. Included by Schema3::Module.
|
|
8
|
+
# (Schema24::Module does not exist - schema 2.4 lacks the
|
|
9
|
+
# generic <module> element.)
|
|
10
|
+
module Module
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <dictionary> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::Dictionary and Schema24::Dictionary.
|
|
9
|
+
module Dictionary
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <dictionaryentry> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::DictionaryEntry and Schema24::DictionaryEntry.
|
|
9
|
+
module DictionaryEntry
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <document> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::Document and Schema24::Document.
|
|
9
|
+
module Document
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <formula> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::Formula and Schema24::Formula.
|
|
9
|
+
module Formula
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <identifier> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::Identifier and Schema24::Identifier.
|
|
9
|
+
module Identifier
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <label> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::Label and Schema24::Label.
|
|
9
|
+
module Label
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <list> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::List and Schema24::List.
|
|
9
|
+
module List
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <matrix> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::Matrix and Schema24::Matrix.
|
|
9
|
+
module Matrix
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <metadata> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::Metadata and Schema24::Metadata.
|
|
9
|
+
module Metadata
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <metadatalist> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::MetadataList and Schema24::MetadataList.
|
|
9
|
+
module MetadataList
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <molecule> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::Molecule and Schema24::Molecule.
|
|
9
|
+
module Molecule
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Chemicalml
|
|
4
|
+
module Cml
|
|
5
|
+
module Role
|
|
6
|
+
# Type marker for any wire class implementing the CML
|
|
7
|
+
# <name> element, regardless of schema version.
|
|
8
|
+
# Included by Schema3::Name and Schema24::Name.
|
|
9
|
+
module Name
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|