bel_parser 1.0.0.alpha.27-java
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/.gemspec-java +32 -0
- data/CHANGELOG.md +10 -0
- data/LICENSE +191 -0
- data/README.md +20 -0
- data/VERSION +1 -0
- data/bin/bel2_validator +62 -0
- data/bin/bel_script_reader +132 -0
- data/lib/bel/translator/plugins/bel_script.rb +38 -0
- data/lib/bel/translator/plugins/bel_script/bel_citation_serialization.rb +125 -0
- data/lib/bel/translator/plugins/bel_script/bel_discrete_serialization.rb +109 -0
- data/lib/bel/translator/plugins/bel_script/bel_top_down_serialization.rb +100 -0
- data/lib/bel/translator/plugins/bel_script/nanopub_serialization.rb +79 -0
- data/lib/bel/translator/plugins/bel_script/reader.rb +39 -0
- data/lib/bel/translator/plugins/bel_script/translator.rb +37 -0
- data/lib/bel/translator/plugins/bel_script/writer.rb +180 -0
- data/lib/bel_parser.rb +23 -0
- data/lib/bel_parser/ast_filter.rb +44 -0
- data/lib/bel_parser/ast_generator.rb +83 -0
- data/lib/bel_parser/expression.rb +3 -0
- data/lib/bel_parser/expression/filter.rb +31 -0
- data/lib/bel_parser/expression/parser.rb +72 -0
- data/lib/bel_parser/expression/validator.rb +79 -0
- data/lib/bel_parser/language.rb +114 -0
- data/lib/bel_parser/language/amino_acid.rb +68 -0
- data/lib/bel_parser/language/apply_namespace_encoding.rb +98 -0
- data/lib/bel_parser/language/base_specification.rb +82 -0
- data/lib/bel_parser/language/covalent_protein_modification.rb +56 -0
- data/lib/bel_parser/language/expression_validator.rb +68 -0
- data/lib/bel_parser/language/function.rb +67 -0
- data/lib/bel_parser/language/relationship.rb +102 -0
- data/lib/bel_parser/language/semantics.rb +40 -0
- data/lib/bel_parser/language/semantics/deeply_nested_statement.rb +65 -0
- data/lib/bel_parser/language/semantics/function_deprecation.rb +43 -0
- data/lib/bel_parser/language/semantics/list_function_subject.rb +45 -0
- data/lib/bel_parser/language/semantics/multiple_subject_object.rb +55 -0
- data/lib/bel_parser/language/semantics/non_causal_nested_statement.rb +50 -0
- data/lib/bel_parser/language/semantics/non_object_list.rb +56 -0
- data/lib/bel_parser/language/semantics/relationship_deprecation.rb +44 -0
- data/lib/bel_parser/language/semantics/relationship_not_listable.rb +60 -0
- data/lib/bel_parser/language/semantics/signature_mapping.rb +83 -0
- data/lib/bel_parser/language/semantics_ast.rb +784 -0
- data/lib/bel_parser/language/semantics_ast_warnings.rb +180 -0
- data/lib/bel_parser/language/semantics_function.rb +16 -0
- data/lib/bel_parser/language/semantics_match.rb +28 -0
- data/lib/bel_parser/language/semantics_result.rb +33 -0
- data/lib/bel_parser/language/semantics_type_warning.rb +22 -0
- data/lib/bel_parser/language/semantics_warning.rb +27 -0
- data/lib/bel_parser/language/signature.rb +39 -0
- data/lib/bel_parser/language/specification.rb +118 -0
- data/lib/bel_parser/language/syntax.rb +38 -0
- data/lib/bel_parser/language/syntax/invalid_function.rb +39 -0
- data/lib/bel_parser/language/syntax/invalid_relationship.rb +42 -0
- data/lib/bel_parser/language/syntax/undefined_namespace.rb +49 -0
- data/lib/bel_parser/language/syntax/undefined_namespace_value.rb +44 -0
- data/lib/bel_parser/language/syntax_error.rb +32 -0
- data/lib/bel_parser/language/syntax_function.rb +16 -0
- data/lib/bel_parser/language/syntax_result.rb +32 -0
- data/lib/bel_parser/language/syntax_warning.rb +27 -0
- data/lib/bel_parser/language/version1_0.rb +20 -0
- data/lib/bel_parser/language/version1_0/functions/abundance.rb +83 -0
- data/lib/bel_parser/language/version1_0/functions/biological_process.rb +83 -0
- data/lib/bel_parser/language/version1_0/functions/catalytic_activity.rb +114 -0
- data/lib/bel_parser/language/version1_0/functions/cell_secretion.rb +83 -0
- data/lib/bel_parser/language/version1_0/functions/cell_surface_expression.rb +83 -0
- data/lib/bel_parser/language/version1_0/functions/chaperone_activity.rb +114 -0
- data/lib/bel_parser/language/version1_0/functions/complex_abundance.rb +115 -0
- data/lib/bel_parser/language/version1_0/functions/composite_abundance.rb +81 -0
- data/lib/bel_parser/language/version1_0/functions/degradation.rb +83 -0
- data/lib/bel_parser/language/version1_0/functions/fusion.rb +287 -0
- data/lib/bel_parser/language/version1_0/functions/gene_abundance.rb +122 -0
- data/lib/bel_parser/language/version1_0/functions/gtp_bound_activity.rb +113 -0
- data/lib/bel_parser/language/version1_0/functions/kinase_activity.rb +114 -0
- data/lib/bel_parser/language/version1_0/functions/list.rb +114 -0
- data/lib/bel_parser/language/version1_0/functions/micro_rna_abundance.rb +85 -0
- data/lib/bel_parser/language/version1_0/functions/molecular_activity.rb +82 -0
- data/lib/bel_parser/language/version1_0/functions/pathology.rb +83 -0
- data/lib/bel_parser/language/version1_0/functions/peptidase_activity.rb +112 -0
- data/lib/bel_parser/language/version1_0/functions/phosphatase_activity.rb +112 -0
- data/lib/bel_parser/language/version1_0/functions/products.rb +79 -0
- data/lib/bel_parser/language/version1_0/functions/protein_abundance.rb +234 -0
- data/lib/bel_parser/language/version1_0/functions/protein_modification.rb +179 -0
- data/lib/bel_parser/language/version1_0/functions/reactants.rb +79 -0
- data/lib/bel_parser/language/version1_0/functions/reaction.rb +86 -0
- data/lib/bel_parser/language/version1_0/functions/ribosylation_activity.rb +114 -0
- data/lib/bel_parser/language/version1_0/functions/rna_abundance.rb +122 -0
- data/lib/bel_parser/language/version1_0/functions/substitution.rb +93 -0
- data/lib/bel_parser/language/version1_0/functions/transcriptional_activity.rb +114 -0
- data/lib/bel_parser/language/version1_0/functions/translocation.rb +98 -0
- data/lib/bel_parser/language/version1_0/functions/transport_activity.rb +115 -0
- data/lib/bel_parser/language/version1_0/functions/truncation.rb +81 -0
- data/lib/bel_parser/language/version1_0/relationships/acts_in.rb +61 -0
- data/lib/bel_parser/language/version1_0/relationships/analogous.rb +41 -0
- data/lib/bel_parser/language/version1_0/relationships/association.rb +42 -0
- data/lib/bel_parser/language/version1_0/relationships/biomarker_for.rb +42 -0
- data/lib/bel_parser/language/version1_0/relationships/causes_no_change.rb +50 -0
- data/lib/bel_parser/language/version1_0/relationships/decreases.rb +63 -0
- data/lib/bel_parser/language/version1_0/relationships/directly_decreases.rb +56 -0
- data/lib/bel_parser/language/version1_0/relationships/directly_increases.rb +56 -0
- data/lib/bel_parser/language/version1_0/relationships/has_component.rb +62 -0
- data/lib/bel_parser/language/version1_0/relationships/has_components.rb +61 -0
- data/lib/bel_parser/language/version1_0/relationships/has_member.rb +48 -0
- data/lib/bel_parser/language/version1_0/relationships/has_members.rb +57 -0
- data/lib/bel_parser/language/version1_0/relationships/has_modification.rb +54 -0
- data/lib/bel_parser/language/version1_0/relationships/has_product.rb +60 -0
- data/lib/bel_parser/language/version1_0/relationships/has_variant.rb +54 -0
- data/lib/bel_parser/language/version1_0/relationships/includes.rb +59 -0
- data/lib/bel_parser/language/version1_0/relationships/increases.rb +63 -0
- data/lib/bel_parser/language/version1_0/relationships/is_a.rb +48 -0
- data/lib/bel_parser/language/version1_0/relationships/negative_correlation.rb +50 -0
- data/lib/bel_parser/language/version1_0/relationships/orthologous.rb +48 -0
- data/lib/bel_parser/language/version1_0/relationships/positive_correlation.rb +46 -0
- data/lib/bel_parser/language/version1_0/relationships/prognostic_biomarker_for.rb +44 -0
- data/lib/bel_parser/language/version1_0/relationships/rate_limiting_step_of.rb +53 -0
- data/lib/bel_parser/language/version1_0/relationships/reactant_in.rb +60 -0
- data/lib/bel_parser/language/version1_0/relationships/sub_process_of.rb +55 -0
- data/lib/bel_parser/language/version1_0/relationships/transcribed_to.rb +53 -0
- data/lib/bel_parser/language/version1_0/relationships/translated_to.rb +54 -0
- data/lib/bel_parser/language/version1_0/relationships/translocates.rb +57 -0
- data/lib/bel_parser/language/version1_0/return_types/abundance.rb +20 -0
- data/lib/bel_parser/language/version1_0/return_types/any.rb +74 -0
- data/lib/bel_parser/language/version1_0/return_types/biological_process.rb +17 -0
- data/lib/bel_parser/language/version1_0/return_types/catalytic_activity.rb +20 -0
- data/lib/bel_parser/language/version1_0/return_types/chaperone_activity.rb +20 -0
- data/lib/bel_parser/language/version1_0/return_types/complex_abundance.rb +17 -0
- data/lib/bel_parser/language/version1_0/return_types/fusion.rb +17 -0
- data/lib/bel_parser/language/version1_0/return_types/gene_abundance.rb +17 -0
- data/lib/bel_parser/language/version1_0/return_types/gtp_bound_activity.rb +20 -0
- data/lib/bel_parser/language/version1_0/return_types/kinase_activity.rb +20 -0
- data/lib/bel_parser/language/version1_0/return_types/list.rb +17 -0
- data/lib/bel_parser/language/version1_0/return_types/micro_rna_abundance.rb +17 -0
- data/lib/bel_parser/language/version1_0/return_types/molecular_activity.rb +20 -0
- data/lib/bel_parser/language/version1_0/return_types/pathology.rb +17 -0
- data/lib/bel_parser/language/version1_0/return_types/peptidase_activity.rb +20 -0
- data/lib/bel_parser/language/version1_0/return_types/phosphatase_activity.rb +20 -0
- data/lib/bel_parser/language/version1_0/return_types/products.rb +17 -0
- data/lib/bel_parser/language/version1_0/return_types/protein_abundance.rb +17 -0
- data/lib/bel_parser/language/version1_0/return_types/protein_modification.rb +17 -0
- data/lib/bel_parser/language/version1_0/return_types/reactants.rb +17 -0
- data/lib/bel_parser/language/version1_0/return_types/ribosylation_activity.rb +20 -0
- data/lib/bel_parser/language/version1_0/return_types/rna_abundance.rb +17 -0
- data/lib/bel_parser/language/version1_0/return_types/substitution.rb +17 -0
- data/lib/bel_parser/language/version1_0/return_types/transcriptional_activity.rb +20 -0
- data/lib/bel_parser/language/version1_0/return_types/transport_activity.rb +20 -0
- data/lib/bel_parser/language/version1_0/return_types/truncation.rb +17 -0
- data/lib/bel_parser/language/version1_0/value_encodings/abundance.rb +21 -0
- data/lib/bel_parser/language/version1_0/value_encodings/any.rb +74 -0
- data/lib/bel_parser/language/version1_0/value_encodings/biological_process.rb +21 -0
- data/lib/bel_parser/language/version1_0/value_encodings/complex_abundance.rb +21 -0
- data/lib/bel_parser/language/version1_0/value_encodings/gene_abundance.rb +21 -0
- data/lib/bel_parser/language/version1_0/value_encodings/micro_rna_abundance.rb +21 -0
- data/lib/bel_parser/language/version1_0/value_encodings/pathology.rb +21 -0
- data/lib/bel_parser/language/version1_0/value_encodings/protein_abundance.rb +21 -0
- data/lib/bel_parser/language/version1_0/value_encodings/rna_abundance.rb +21 -0
- data/lib/bel_parser/language/version2_0.rb +20 -0
- data/lib/bel_parser/language/version2_0/functions/abundance.rb +161 -0
- data/lib/bel_parser/language/version2_0/functions/activity.rb +118 -0
- data/lib/bel_parser/language/version2_0/functions/biological_process.rb +84 -0
- data/lib/bel_parser/language/version2_0/functions/cell_secretion.rb +83 -0
- data/lib/bel_parser/language/version2_0/functions/cell_surface_expression.rb +83 -0
- data/lib/bel_parser/language/version2_0/functions/complex_abundance.rb +190 -0
- data/lib/bel_parser/language/version2_0/functions/composite_abundance.rb +81 -0
- data/lib/bel_parser/language/version2_0/functions/degradation.rb +83 -0
- data/lib/bel_parser/language/version2_0/functions/fragment.rb +116 -0
- data/lib/bel_parser/language/version2_0/functions/from_location.rb +85 -0
- data/lib/bel_parser/language/version2_0/functions/fusion.rb +203 -0
- data/lib/bel_parser/language/version2_0/functions/gene_abundance.rb +192 -0
- data/lib/bel_parser/language/version2_0/functions/list.rb +114 -0
- data/lib/bel_parser/language/version2_0/functions/location.rb +83 -0
- data/lib/bel_parser/language/version2_0/functions/micro_rna_abundance.rb +163 -0
- data/lib/bel_parser/language/version2_0/functions/molecular_activity.rb +86 -0
- data/lib/bel_parser/language/version2_0/functions/pathology.rb +83 -0
- data/lib/bel_parser/language/version2_0/functions/products.rb +79 -0
- data/lib/bel_parser/language/version2_0/functions/protein_abundance.rb +270 -0
- data/lib/bel_parser/language/version2_0/functions/protein_modification.rb +172 -0
- data/lib/bel_parser/language/version2_0/functions/reactants.rb +79 -0
- data/lib/bel_parser/language/version2_0/functions/reaction.rb +86 -0
- data/lib/bel_parser/language/version2_0/functions/rna_abundance.rb +192 -0
- data/lib/bel_parser/language/version2_0/functions/to_location.rb +84 -0
- data/lib/bel_parser/language/version2_0/functions/translocation.rb +91 -0
- data/lib/bel_parser/language/version2_0/functions/variant.rb +80 -0
- data/lib/bel_parser/language/version2_0/relationships/acts_in.rb +61 -0
- data/lib/bel_parser/language/version2_0/relationships/analogous.rb +45 -0
- data/lib/bel_parser/language/version2_0/relationships/association.rb +42 -0
- data/lib/bel_parser/language/version2_0/relationships/biomarker_for.rb +46 -0
- data/lib/bel_parser/language/version2_0/relationships/causes_no_change.rb +50 -0
- data/lib/bel_parser/language/version2_0/relationships/decreases.rb +63 -0
- data/lib/bel_parser/language/version2_0/relationships/directly_decreases.rb +56 -0
- data/lib/bel_parser/language/version2_0/relationships/directly_increases.rb +56 -0
- data/lib/bel_parser/language/version2_0/relationships/has_component.rb +62 -0
- data/lib/bel_parser/language/version2_0/relationships/has_components.rb +61 -0
- data/lib/bel_parser/language/version2_0/relationships/has_member.rb +48 -0
- data/lib/bel_parser/language/version2_0/relationships/has_members.rb +57 -0
- data/lib/bel_parser/language/version2_0/relationships/has_modification.rb +54 -0
- data/lib/bel_parser/language/version2_0/relationships/has_product.rb +60 -0
- data/lib/bel_parser/language/version2_0/relationships/has_variant.rb +54 -0
- data/lib/bel_parser/language/version2_0/relationships/includes.rb +59 -0
- data/lib/bel_parser/language/version2_0/relationships/increases.rb +63 -0
- data/lib/bel_parser/language/version2_0/relationships/is_a.rb +48 -0
- data/lib/bel_parser/language/version2_0/relationships/negative_correlation.rb +50 -0
- data/lib/bel_parser/language/version2_0/relationships/orthologous.rb +48 -0
- data/lib/bel_parser/language/version2_0/relationships/positive_correlation.rb +46 -0
- data/lib/bel_parser/language/version2_0/relationships/prognostic_biomarker_for.rb +48 -0
- data/lib/bel_parser/language/version2_0/relationships/rate_limiting_step_of.rb +53 -0
- data/lib/bel_parser/language/version2_0/relationships/reactant_in.rb +60 -0
- data/lib/bel_parser/language/version2_0/relationships/regulates.rb +51 -0
- data/lib/bel_parser/language/version2_0/relationships/sub_process_of.rb +55 -0
- data/lib/bel_parser/language/version2_0/relationships/transcribed_to.rb +53 -0
- data/lib/bel_parser/language/version2_0/relationships/translated_to.rb +54 -0
- data/lib/bel_parser/language/version2_0/relationships/translocates.rb +57 -0
- data/lib/bel_parser/language/version2_0/return_types/abundance.rb +20 -0
- data/lib/bel_parser/language/version2_0/return_types/activity.rb +20 -0
- data/lib/bel_parser/language/version2_0/return_types/any.rb +74 -0
- data/lib/bel_parser/language/version2_0/return_types/biological_process.rb +17 -0
- data/lib/bel_parser/language/version2_0/return_types/complex_abundance.rb +17 -0
- data/lib/bel_parser/language/version2_0/return_types/fragment.rb +20 -0
- data/lib/bel_parser/language/version2_0/return_types/from_location.rb +20 -0
- data/lib/bel_parser/language/version2_0/return_types/fusion.rb +17 -0
- data/lib/bel_parser/language/version2_0/return_types/gene_abundance.rb +17 -0
- data/lib/bel_parser/language/version2_0/return_types/list.rb +17 -0
- data/lib/bel_parser/language/version2_0/return_types/location.rb +20 -0
- data/lib/bel_parser/language/version2_0/return_types/micro_rna_abundance.rb +17 -0
- data/lib/bel_parser/language/version2_0/return_types/molecular_activity.rb +20 -0
- data/lib/bel_parser/language/version2_0/return_types/pathology.rb +17 -0
- data/lib/bel_parser/language/version2_0/return_types/products.rb +17 -0
- data/lib/bel_parser/language/version2_0/return_types/protein_abundance.rb +17 -0
- data/lib/bel_parser/language/version2_0/return_types/protein_modification.rb +17 -0
- data/lib/bel_parser/language/version2_0/return_types/reactants.rb +17 -0
- data/lib/bel_parser/language/version2_0/return_types/rna_abundance.rb +17 -0
- data/lib/bel_parser/language/version2_0/return_types/to_location.rb +20 -0
- data/lib/bel_parser/language/version2_0/return_types/variant.rb +20 -0
- data/lib/bel_parser/language/version2_0/value_encodings/abundance.rb +21 -0
- data/lib/bel_parser/language/version2_0/value_encodings/activity.rb +21 -0
- data/lib/bel_parser/language/version2_0/value_encodings/any.rb +74 -0
- data/lib/bel_parser/language/version2_0/value_encodings/biological_process.rb +21 -0
- data/lib/bel_parser/language/version2_0/value_encodings/complex_abundance.rb +21 -0
- data/lib/bel_parser/language/version2_0/value_encodings/gene_abundance.rb +21 -0
- data/lib/bel_parser/language/version2_0/value_encodings/location.rb +21 -0
- data/lib/bel_parser/language/version2_0/value_encodings/micro_rna_abundance.rb +21 -0
- data/lib/bel_parser/language/version2_0/value_encodings/pathology.rb +21 -0
- data/lib/bel_parser/language/version2_0/value_encodings/protein_abundance.rb +21 -0
- data/lib/bel_parser/language/version2_0/value_encodings/protein_modification.rb +21 -0
- data/lib/bel_parser/language/version2_0/value_encodings/rna_abundance.rb +21 -0
- data/lib/bel_parser/mixin/line_continuator.rb +15 -0
- data/lib/bel_parser/mixin/line_mapping.rb +14 -0
- data/lib/bel_parser/parsers/ast/node.rb +987 -0
- data/lib/bel_parser/parsers/ast/sexp.rb +8 -0
- data/lib/bel_parser/parsers/bel_script.rb +5 -0
- data/lib/bel_parser/parsers/bel_script/define_annotation.rb +5920 -0
- data/lib/bel_parser/parsers/bel_script/define_annotation.rl +141 -0
- data/lib/bel_parser/parsers/bel_script/define_namespace.rb +1780 -0
- data/lib/bel_parser/parsers/bel_script/define_namespace.rl +121 -0
- data/lib/bel_parser/parsers/bel_script/set.rb +5008 -0
- data/lib/bel_parser/parsers/bel_script/set.rl +116 -0
- data/lib/bel_parser/parsers/bel_script/set_document.rb +7722 -0
- data/lib/bel_parser/parsers/bel_script/set_document.rl +97 -0
- data/lib/bel_parser/parsers/bel_script/unset.rb +706 -0
- data/lib/bel_parser/parsers/bel_script/unset.rl +95 -0
- data/lib/bel_parser/parsers/common.rb +5 -0
- data/lib/bel_parser/parsers/common/blank_line.rb +211 -0
- data/lib/bel_parser/parsers/common/blank_line.rl +81 -0
- data/lib/bel_parser/parsers/common/comment_line.rb +245 -0
- data/lib/bel_parser/parsers/common/comment_line.rl +97 -0
- data/lib/bel_parser/parsers/common/common.rb +7 -0
- data/lib/bel_parser/parsers/common/common.rl +13 -0
- data/lib/bel_parser/parsers/common/identifier.rb +289 -0
- data/lib/bel_parser/parsers/common/identifier.rl +106 -0
- data/lib/bel_parser/parsers/common/list.rb +2388 -0
- data/lib/bel_parser/parsers/common/list.rl +146 -0
- data/lib/bel_parser/parsers/common/string.rb +271 -0
- data/lib/bel_parser/parsers/common/string.rl +107 -0
- data/lib/bel_parser/parsers/expression.rb +7 -0
- data/lib/bel_parser/parsers/expression/comment.rb +239 -0
- data/lib/bel_parser/parsers/expression/comment.rl +97 -0
- data/lib/bel_parser/parsers/expression/nested_statement.rb +17802 -0
- data/lib/bel_parser/parsers/expression/nested_statement.rl +141 -0
- data/lib/bel_parser/parsers/expression/observed_term.rb +7291 -0
- data/lib/bel_parser/parsers/expression/observed_term.rl +92 -0
- data/lib/bel_parser/parsers/expression/parameter.rb +1506 -0
- data/lib/bel_parser/parsers/expression/parameter.rl +97 -0
- data/lib/bel_parser/parsers/expression/relationship.rb +254 -0
- data/lib/bel_parser/parsers/expression/relationship.rl +98 -0
- data/lib/bel_parser/parsers/expression/simple_statement.rb +10475 -0
- data/lib/bel_parser/parsers/expression/simple_statement.rl +112 -0
- data/lib/bel_parser/parsers/expression/term.rb +3989 -0
- data/lib/bel_parser/parsers/expression/term.rl +157 -0
- data/lib/bel_parser/parsers/line_parser.rb +92 -0
- data/lib/bel_parser/parsers/mixin/buffer.rb +10 -0
- data/lib/bel_parser/parsers/nonblocking_io_wrapper.rb +50 -0
- data/lib/bel_parser/parsers/serializer.rb +205 -0
- data/lib/bel_parser/quoting.rb +177 -0
- data/lib/bel_parser/resource/concept.rb +56 -0
- data/lib/bel_parser/resource/concept_scheme.rb +35 -0
- data/lib/bel_parser/resource/dataset.rb +34 -0
- data/lib/bel_parser/resource/eager_reader.rb +89 -0
- data/lib/bel_parser/resource/eager_sparql_reader.rb +51 -0
- data/lib/bel_parser/resource/file_resource.rb +21 -0
- data/lib/bel_parser/resource/file_resource_value.rb +24 -0
- data/lib/bel_parser/resource/jena_tdb_reader.rb +246 -0
- data/lib/bel_parser/resource/lru_cache.rb +111 -0
- data/lib/bel_parser/resource/lru_reader.rb +34 -0
- data/lib/bel_parser/resource/reader.rb +18 -0
- data/lib/bel_parser/resource/resource_url_reader.rb +181 -0
- data/lib/bel_parser/resource/sparql_reader.rb +179 -0
- data/lib/bel_parser/resource/value.rb +31 -0
- data/lib/bel_parser/script.rb +8 -0
- data/lib/bel_parser/script/filter.rb +35 -0
- data/lib/bel_parser/script/first_node.rb +21 -0
- data/lib/bel_parser/script/keywords.rb +32 -0
- data/lib/bel_parser/script/nanopub_mapper.rb +182 -0
- data/lib/bel_parser/script/parser.rb +51 -0
- data/lib/bel_parser/script/state/annotation_definition.rb +62 -0
- data/lib/bel_parser/script/state/bel_version.rb +36 -0
- data/lib/bel_parser/script/state/document_property.rb +29 -0
- data/lib/bel_parser/script/state/namespace_definition.rb +32 -0
- data/lib/bel_parser/script/state/set.rb +82 -0
- data/lib/bel_parser/script/state/unset.rb +46 -0
- data/lib/bel_parser/script/state_aggregator.rb +49 -0
- data/lib/bel_parser/script/state_function.rb +10 -0
- data/lib/bel_parser/script/syntax/expression_validation.rb +46 -0
- data/lib/bel_parser/script/syntax/invalid_regex_pattern.rb +49 -0
- data/lib/bel_parser/script/syntax/undefined_annotation.rb +61 -0
- data/lib/bel_parser/script/syntax/undefined_annotation_value.rb +84 -0
- data/lib/bel_parser/script/syntax/unresolvable_namespace.rb +54 -0
- data/lib/bel_parser/script/syntax/unsupported_bel_version.rb +59 -0
- data/lib/bel_parser/script/validator.rb +65 -0
- data/lib/bel_parser/vendor/ast.rb +17 -0
- data/lib/bel_parser/vendor/ast/node.rb +254 -0
- data/lib/bel_parser/vendor/ast/processor.rb +12 -0
- data/lib/bel_parser/vendor/ast/processor/mixin.rb +282 -0
- data/lib/bel_parser/vendor/ast/sexp.rb +30 -0
- metadata +390 -0
@@ -0,0 +1,48 @@
|
|
1
|
+
require_relative '../../version1_0'
|
2
|
+
require_relative '../../relationship'
|
3
|
+
|
4
|
+
module BELParser
|
5
|
+
module Language
|
6
|
+
module Version1_0
|
7
|
+
module Relationships
|
8
|
+
# HasMember: +A hasMember A1+ - For term abundances A and B,
|
9
|
+
# +A hasMember B+ designates B as a member class of A. A member
|
10
|
+
# class is a distinguished sub-class. A is defined as a group
|
11
|
+
# by all of the members assigned to it. The member classes may
|
12
|
+
# or may not be overlapping and may or may not entirely cover
|
13
|
+
# all instances of A. A term may not appear in both the subject
|
14
|
+
# and object of the same hasMember statement.
|
15
|
+
class HasMember
|
16
|
+
extend Relationship
|
17
|
+
|
18
|
+
SHORT = :hasMember
|
19
|
+
LONG = :hasMember
|
20
|
+
DESCRIPTION = ' +A hasMember A1+ - For term abundances A and B,
|
21
|
+
A hasMember B+ designates B as a member class of
|
22
|
+
. A member class is a distinguished sub-class. A is
|
23
|
+
efined as a group by all of the members assigned to
|
24
|
+
t. The member classes may or may not be overlapping
|
25
|
+
nd may or may not entirely cover all instances
|
26
|
+
f A. A term may not appear in both the subject
|
27
|
+
nd object of the same hasMember statement.'.freeze
|
28
|
+
|
29
|
+
def self.short
|
30
|
+
SHORT
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.long
|
34
|
+
LONG
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.description
|
38
|
+
DESCRIPTION
|
39
|
+
end
|
40
|
+
|
41
|
+
def self.directed?
|
42
|
+
true
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
@@ -0,0 +1,57 @@
|
|
1
|
+
require_relative '../../version1_0'
|
2
|
+
require_relative '../../relationship'
|
3
|
+
|
4
|
+
module BELParser
|
5
|
+
module Language
|
6
|
+
module Version1_0
|
7
|
+
module Relationships
|
8
|
+
# HasMembers: +A hasMembers (B, C, D)+ - The hasMembers
|
9
|
+
# relationship is a special form which enables the assignment of
|
10
|
+
# multiple member classes in a single statement where the object
|
11
|
+
# of the statement is a set of abundance terms. A statement
|
12
|
+
# using hasMembers is exactly equivalent to multiple hasMember
|
13
|
+
# statements. A term may not appear in both the subject and
|
14
|
+
# object of a of the same hasMembers statement. For the abundance
|
15
|
+
# terms A, B, C and D, +A hasMembers B, C, D+ indicates that A
|
16
|
+
# is defined by its member abundance classes B, C and D.
|
17
|
+
class HasMembers
|
18
|
+
extend Relationship
|
19
|
+
|
20
|
+
SHORT = :hasMembers
|
21
|
+
LONG = :hasMembers
|
22
|
+
DESCRIPTION = ' +A hasMembers (B, C, D)+ - The hasMembers
|
23
|
+
elationship is a special form which enables the
|
24
|
+
ssignment of multiple member classes in a single
|
25
|
+
tatement where the object of the statement is a set
|
26
|
+
f abundance terms. A statement using hasMembers
|
27
|
+
s exactly equivalent to multiple hasMember
|
28
|
+
tatements. A term may not appear in both the
|
29
|
+
ubject and object of a of the same hasMembers
|
30
|
+
tatement. For the abundance terms A, B, C and D,
|
31
|
+
A hasMembers B, C, D+ indicates that A is defined
|
32
|
+
y its member abundance classes B, C and D.'.freeze
|
33
|
+
|
34
|
+
def self.short
|
35
|
+
SHORT
|
36
|
+
end
|
37
|
+
|
38
|
+
def self.long
|
39
|
+
LONG
|
40
|
+
end
|
41
|
+
|
42
|
+
def self.description
|
43
|
+
DESCRIPTION
|
44
|
+
end
|
45
|
+
|
46
|
+
def self.directed?
|
47
|
+
true
|
48
|
+
end
|
49
|
+
|
50
|
+
def self.listable?
|
51
|
+
true
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
require_relative '../../version1_0'
|
2
|
+
require_relative '../../relationship'
|
3
|
+
|
4
|
+
module BELParser
|
5
|
+
module Language
|
6
|
+
module Version1_0
|
7
|
+
module Relationships
|
8
|
+
# HasModification: +p(A) hasModification p(A, pmod(P, S, 473))+
|
9
|
+
# - This relationship links abundance terms modified by the
|
10
|
+
# +pmod()+ function to the unmodified abundance term. This is a
|
11
|
+
# direct relationship because it is a _self_ relationship. This
|
12
|
+
# relationship is introduced by the BEL Compiler and may not be
|
13
|
+
# used by statements in BEL documents.
|
14
|
+
class HasModification
|
15
|
+
extend Relationship
|
16
|
+
|
17
|
+
SHORT = :hasModification
|
18
|
+
LONG = :hasModification
|
19
|
+
DESCRIPTION = ' +p(A) hasModification p(A, pmod(P, S, 473))+ -
|
20
|
+
his relationship links abundance terms modified by
|
21
|
+
he +pmod()+ function to the unmodified abundance
|
22
|
+
erm. This is a direct relationship because it
|
23
|
+
s a _self_ relationship. This relationship is
|
24
|
+
ntroduced by the BEL Compiler and may not be used
|
25
|
+
y statements in BEL documents.'.freeze
|
26
|
+
|
27
|
+
def self.short
|
28
|
+
SHORT
|
29
|
+
end
|
30
|
+
|
31
|
+
def self.long
|
32
|
+
LONG
|
33
|
+
end
|
34
|
+
|
35
|
+
def self.description
|
36
|
+
DESCRIPTION
|
37
|
+
end
|
38
|
+
|
39
|
+
def self.direct?
|
40
|
+
true
|
41
|
+
end
|
42
|
+
|
43
|
+
def self.directed?
|
44
|
+
true
|
45
|
+
end
|
46
|
+
|
47
|
+
def self.injected?
|
48
|
+
true
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
require_relative '../../version1_0'
|
2
|
+
require_relative '../../relationship'
|
3
|
+
|
4
|
+
module BELParser
|
5
|
+
module Language
|
6
|
+
module Version1_0
|
7
|
+
module Relationships
|
8
|
+
# HasProduct: +reaction(reactants(A), products(B))
|
9
|
+
# hasProduct B+ - This relationship links abundance
|
10
|
+
# terms from the +products(<list>)+ in a reaction to the
|
11
|
+
# reaction. This is a direct relationship because it is a _self_
|
12
|
+
# relationship. Products are produced directly by a reaction. This
|
13
|
+
# relationship is introduced by the BEL Compiler and may not be
|
14
|
+
# used by statements in BEL documents.
|
15
|
+
class HasProduct
|
16
|
+
extend Relationship
|
17
|
+
|
18
|
+
SHORT = :hasProduct
|
19
|
+
LONG = :hasProduct
|
20
|
+
DESCRIPTION = ' +reaction(reactants(A), products(B)) hasProduct
|
21
|
+
+ - This relationship links abundance terms
|
22
|
+
rom the +products(<list>)+ in a reaction to the
|
23
|
+
eaction. This is a direct relationship because it
|
24
|
+
s a _self_ relationship. Products are produced
|
25
|
+
irectly by a reaction. This relationship is
|
26
|
+
ntroduced by the BEL Compiler and may not be used
|
27
|
+
y statements in BEL documents.'.freeze
|
28
|
+
|
29
|
+
def self.short
|
30
|
+
SHORT
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.long
|
34
|
+
LONG
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.description
|
38
|
+
DESCRIPTION
|
39
|
+
end
|
40
|
+
|
41
|
+
def self.direct?
|
42
|
+
true
|
43
|
+
end
|
44
|
+
|
45
|
+
def self.directed?
|
46
|
+
true
|
47
|
+
end
|
48
|
+
|
49
|
+
def self.injected?
|
50
|
+
true
|
51
|
+
end
|
52
|
+
|
53
|
+
def self.self?
|
54
|
+
true
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
require_relative '../../version1_0'
|
2
|
+
require_relative '../../relationship'
|
3
|
+
|
4
|
+
module BELParser
|
5
|
+
module Language
|
6
|
+
module Version1_0
|
7
|
+
module Relationships
|
8
|
+
# HasVariant: +p(A) hasVariant p(A, sub(G, 12, V))+ -
|
9
|
+
# This relationship links abundance terms modified by the
|
10
|
+
# +substitution()+, +fusion()+, or +truncation()+ functions to
|
11
|
+
# the unmodified abundance term. This relationship is introduced
|
12
|
+
# by the BEL Compiler and does not need to be used by statements
|
13
|
+
# in BEL documents.
|
14
|
+
class HasVariant
|
15
|
+
extend Relationship
|
16
|
+
|
17
|
+
SHORT = :hasVariant
|
18
|
+
LONG = :hasVariant
|
19
|
+
DESCRIPTION = ' +p(A) hasVariant p(A, sub(G, 12, V))+ - This
|
20
|
+
elationship links abundance terms modified by the
|
21
|
+
substitution()+, +fusion()+, or +truncation()+
|
22
|
+
unctions to the unmodified abundance term. This
|
23
|
+
elationship is introduced by the BEL Compiler
|
24
|
+
nd does not need to be used by statements in
|
25
|
+
EL documents.'.freeze
|
26
|
+
|
27
|
+
def self.short
|
28
|
+
SHORT
|
29
|
+
end
|
30
|
+
|
31
|
+
def self.long
|
32
|
+
LONG
|
33
|
+
end
|
34
|
+
|
35
|
+
def self.description
|
36
|
+
DESCRIPTION
|
37
|
+
end
|
38
|
+
|
39
|
+
def self.direct?
|
40
|
+
true
|
41
|
+
end
|
42
|
+
|
43
|
+
def self.directed?
|
44
|
+
true
|
45
|
+
end
|
46
|
+
|
47
|
+
def self.injected?
|
48
|
+
true
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,59 @@
|
|
1
|
+
require_relative '../../version1_0'
|
2
|
+
require_relative '../../relationship'
|
3
|
+
|
4
|
+
module BELParser
|
5
|
+
module Language
|
6
|
+
module Version1_0
|
7
|
+
module Relationships
|
8
|
+
# Includes: +compositeAbundance(A,B) includes A+ - This
|
9
|
+
# relationship links each individual abundance term in a
|
10
|
+
# +compositeAbundance(<list>)+ to the compositeAbundance. For
|
11
|
+
# example, +compositeAbundance(A, B) includes A+ and
|
12
|
+
# +compositeAbundance(A, B) includes B+. This relationship is
|
13
|
+
# direct because it is a _self_ relationship. This relationship
|
14
|
+
# is introduced by the BEL Compiler and may not be used by
|
15
|
+
# statements in BEL documents.
|
16
|
+
class Includes
|
17
|
+
extend Relationship
|
18
|
+
|
19
|
+
SHORT = :includes
|
20
|
+
LONG = :includes
|
21
|
+
DESCRIPTION = ' +compositeAbundance(A,B) includes A+ - This
|
22
|
+
elationship links each individual abundance
|
23
|
+
erm in a +compositeAbundance(<list>)+
|
24
|
+
o the compositeAbundance. For example,
|
25
|
+
compositeAbundance(A, B) includes A+ and
|
26
|
+
compositeAbundance(A, B) includes B+. This
|
27
|
+
elationship is direct because it is a _self_
|
28
|
+
elationship. This relationship is introduced by
|
29
|
+
he BEL Compiler and may not be used by statements
|
30
|
+
n BEL documents.'.freeze
|
31
|
+
|
32
|
+
def self.short
|
33
|
+
SHORT
|
34
|
+
end
|
35
|
+
|
36
|
+
def self.long
|
37
|
+
LONG
|
38
|
+
end
|
39
|
+
|
40
|
+
def self.description
|
41
|
+
DESCRIPTION
|
42
|
+
end
|
43
|
+
|
44
|
+
def self.directed?
|
45
|
+
true
|
46
|
+
end
|
47
|
+
|
48
|
+
def self.injected?
|
49
|
+
true
|
50
|
+
end
|
51
|
+
|
52
|
+
def self.self?
|
53
|
+
true
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
@@ -0,0 +1,63 @@
|
|
1
|
+
require_relative '../../version1_0'
|
2
|
+
require_relative '../../relationship'
|
3
|
+
|
4
|
+
module BELParser
|
5
|
+
module Language
|
6
|
+
module Version1_0
|
7
|
+
module Relationships
|
8
|
+
# Increases: +A -> B+ - For terms A and B, +A increases B or
|
9
|
+
# A -> B+ indicates that increases in A have been observed to
|
10
|
+
# cause increases in B. +A increases B+ also represents cases
|
11
|
+
# where decreases in A have been observed to cause decreases in B,
|
12
|
+
# for example, in recording the results of gene deletion or other
|
13
|
+
# inhibition experiments. A is a BEL Term and B is either a BEL
|
14
|
+
# Term or a BEL Statement. The relationship does not indicate
|
15
|
+
# that the changes in A are either necessary for changes in B,
|
16
|
+
# nor does it indicate that changes in A are sufficient to cause
|
17
|
+
# changes in B.
|
18
|
+
class Increases
|
19
|
+
extend Relationship
|
20
|
+
|
21
|
+
SHORT = :'->'
|
22
|
+
LONG = :increases
|
23
|
+
DESCRIPTION = ' +A -> B+ - For terms A and B, +A increases B
|
24
|
+
r A -> B+ indicates that increases in A have been
|
25
|
+
bserved to cause increases in B. +A increases
|
26
|
+
+ also represents cases where decreases in A
|
27
|
+
ave been observed to cause decreases in B, for
|
28
|
+
xample, in recording the results of gene deletion
|
29
|
+
r other inhibition experiments. A is a BEL Term
|
30
|
+
nd B is either a BEL Term or a BEL Statement. The
|
31
|
+
elationship does not indicate that the changes
|
32
|
+
n A are either necessary for changes in B, nor
|
33
|
+
oes it indicate that changes in A are sufficient
|
34
|
+
o cause changes in B.'.freeze
|
35
|
+
|
36
|
+
def self.short
|
37
|
+
SHORT
|
38
|
+
end
|
39
|
+
|
40
|
+
def self.long
|
41
|
+
LONG
|
42
|
+
end
|
43
|
+
|
44
|
+
def self.description
|
45
|
+
DESCRIPTION
|
46
|
+
end
|
47
|
+
|
48
|
+
def self.causal?
|
49
|
+
true
|
50
|
+
end
|
51
|
+
|
52
|
+
def self.directed?
|
53
|
+
true
|
54
|
+
end
|
55
|
+
|
56
|
+
def self.increasing?
|
57
|
+
true
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
@@ -0,0 +1,48 @@
|
|
1
|
+
require_relative '../../version1_0'
|
2
|
+
require_relative '../../relationship'
|
3
|
+
|
4
|
+
module BELParser
|
5
|
+
module Language
|
6
|
+
module Version1_0
|
7
|
+
module Relationships
|
8
|
+
# IsA: +A isA B+ - For terms A and B, +A isA B+ indicates
|
9
|
+
# that A is a subset of B. All terms in BEL represent classes,
|
10
|
+
# but given that classes implicitly have instances, one can
|
11
|
+
# also interpret +A isA B+ to mean that any instance of A must
|
12
|
+
# also be an instance of B. This relationship can be used to
|
13
|
+
# represent GO and MeSH hierarchies: +pathology(MESH:Psoriasis)
|
14
|
+
# isA pathology(MESH:"Skin Diseases")+
|
15
|
+
class IsA
|
16
|
+
extend Relationship
|
17
|
+
|
18
|
+
SHORT = :isA
|
19
|
+
LONG = :isA
|
20
|
+
DESCRIPTION = ' +A isA B+ - For terms A and B, +A isA B+
|
21
|
+
ndicates that A is a subset of B. All terms in BEL
|
22
|
+
epresent classes, but given that classes implicitly
|
23
|
+
ave instances, one can also interpret +A isA B+ to
|
24
|
+
ean that any instance of A must also be an instance
|
25
|
+
f B. This relationship can be used to represent
|
26
|
+
O and MeSH hierarchies: +pathology(MESH:Psoriasis)
|
27
|
+
sA pathology(MESH:"Skin Diseases")+'.freeze
|
28
|
+
|
29
|
+
def self.short
|
30
|
+
SHORT
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.long
|
34
|
+
LONG
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.description
|
38
|
+
DESCRIPTION
|
39
|
+
end
|
40
|
+
|
41
|
+
def self.directed?
|
42
|
+
true
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|