bel_parser 1.0.0.alpha.12 → 1.0.0.alpha.13
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/.gemspec +1 -1
- data/VERSION +1 -1
- data/bin/bel2_validator +35 -8
- data/lib/bel_parser/expression/validator.rb +3 -2
- data/lib/bel_parser/language/apply_namespace_encoding.rb +96 -0
- data/lib/bel_parser/language/base_specification.rb +82 -0
- data/lib/bel_parser/language/expression_validator.rb +6 -2
- data/lib/bel_parser/language/relationship.rb +1 -1
- data/lib/bel_parser/language/semantics/signature_mapping.rb +26 -32
- data/lib/bel_parser/language/semantics_ast.rb +285 -149
- data/lib/bel_parser/language/semantics_ast_warnings.rb +180 -0
- data/lib/bel_parser/language/semantics_result.rb +11 -2
- data/lib/bel_parser/language/semantics_type_warning.rb +22 -0
- data/lib/bel_parser/language/semantics_warning.rb +8 -0
- data/lib/bel_parser/language/specification.rb +38 -55
- data/lib/bel_parser/language/syntax/undefined_namespace_value.rb +43 -0
- data/lib/bel_parser/language/syntax_error.rb +8 -0
- data/lib/bel_parser/language/syntax_result.rb +8 -0
- data/lib/bel_parser/language/syntax_warning.rb +9 -4
- data/lib/bel_parser/language/version1_0/functions/abundance.rb +5 -6
- data/lib/bel_parser/language/version1_0/functions/biological_process.rb +5 -6
- data/lib/bel_parser/language/version1_0/functions/complex_abundance.rb +6 -7
- data/lib/bel_parser/language/version1_0/functions/fusion.rb +39 -60
- data/lib/bel_parser/language/version1_0/functions/gene_abundance.rb +9 -12
- data/lib/bel_parser/language/version1_0/functions/list.rb +5 -6
- data/lib/bel_parser/language/version1_0/functions/micro_rna_abundance.rb +5 -6
- data/lib/bel_parser/language/version1_0/functions/pathology.rb +5 -6
- data/lib/bel_parser/language/version1_0/functions/protein_abundance.rb +16 -30
- data/lib/bel_parser/language/version1_0/functions/protein_modification.rb +15 -27
- data/lib/bel_parser/language/version1_0/functions/rna_abundance.rb +8 -11
- data/lib/bel_parser/language/version1_0/functions/substitution.rb +6 -12
- data/lib/bel_parser/language/version1_0/functions/translocation.rb +9 -12
- data/lib/bel_parser/language/version1_0/functions/truncation.rb +2 -4
- 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/version1_0.rb +6 -87
- data/lib/bel_parser/language/version2_0/functions/abundance.rb +13 -18
- data/lib/bel_parser/language/version2_0/functions/biological_process.rb +5 -6
- data/lib/bel_parser/language/version2_0/functions/complex_abundance.rb +9 -12
- data/lib/bel_parser/language/version2_0/functions/fragment.rb +4 -9
- data/lib/bel_parser/language/version2_0/functions/from_location.rb +5 -6
- data/lib/bel_parser/language/version2_0/functions/fusion.rb +39 -66
- data/lib/bel_parser/language/version2_0/functions/gene_abundance.rb +13 -18
- data/lib/bel_parser/language/version2_0/functions/list.rb +5 -6
- data/lib/bel_parser/language/version2_0/functions/location.rb +5 -6
- data/lib/bel_parser/language/version2_0/functions/micro_rna_abundance.rb +13 -18
- data/lib/bel_parser/language/version2_0/functions/molecular_activity.rb +6 -5
- data/lib/bel_parser/language/version2_0/functions/pathology.rb +5 -6
- data/lib/bel_parser/language/version2_0/functions/protein_abundance.rb +21 -30
- data/lib/bel_parser/language/version2_0/functions/protein_modification.rb +11 -17
- data/lib/bel_parser/language/version2_0/functions/rna_abundance.rb +13 -18
- data/lib/bel_parser/language/version2_0/functions/to_location.rb +5 -6
- data/lib/bel_parser/language/version2_0/functions/variant.rb +1 -4
- 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/language/version2_0.rb +6 -60
- data/lib/bel_parser/language.rb +3 -4
- data/lib/bel_parser/parsers/ast/node.rb +14 -2
- data/lib/bel_parser/{language/quoting.rb → quoting.rb} +0 -56
- 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 +75 -0
- data/lib/bel_parser/resource/eager_sparql_reader.rb +51 -0
- data/lib/bel_parser/resource/http_cache.rb +71 -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 +38 -0
- data/lib/bel_parser/resource/reader.rb +18 -0
- data/lib/bel_parser/resource/resource_file_reader.rb +134 -0
- data/lib/bel_parser/resource/sparql_reader.rb +178 -0
- data/lib/bel_parser/resource/value.rb +31 -0
- metadata +42 -4
- data/lib/bel_parser/language/version1_0/syntax/function.rb +0 -28
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
require 'English'
|
|
2
|
+
|
|
3
|
+
module BELParser
|
|
4
|
+
module Language
|
|
5
|
+
module Version1_0
|
|
6
|
+
module ValueEncodings
|
|
7
|
+
# The Any value encoding.
|
|
8
|
+
class Any
|
|
9
|
+
# Return the {Symbol} value.
|
|
10
|
+
#
|
|
11
|
+
# @note This method should be overridden in subclasses.
|
|
12
|
+
def self.to_sym
|
|
13
|
+
raise_not_implemented(__method__) if self != Any
|
|
14
|
+
:*
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# Returns +true+ if I am a subtype of +other_return_type+; otherwise
|
|
18
|
+
# return +false+.
|
|
19
|
+
#
|
|
20
|
+
# @param [Class] other_return_type to compare to
|
|
21
|
+
# @return [Boolean] +true+ if I am a subtype; +false+ if not
|
|
22
|
+
def self.subtype_of?(other_return_type)
|
|
23
|
+
self <= other_return_type
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
# Retrieve my immediate subtypes.
|
|
27
|
+
#
|
|
28
|
+
# @return [Array<Class>] my immediate subtypes
|
|
29
|
+
def self.subtypes
|
|
30
|
+
(@subtypes ||= []).freeze
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# Retrieve my transitive subtypes.
|
|
34
|
+
#
|
|
35
|
+
# @return [Array<Class>] my transitive subtypes
|
|
36
|
+
def self.transitive_subtypes
|
|
37
|
+
transitive_subtypes =
|
|
38
|
+
(@subtypes ||= []).flat_map do |subtype|
|
|
39
|
+
[subtype, subtype.subtypes]
|
|
40
|
+
end.flatten
|
|
41
|
+
transitive_subtypes << self
|
|
42
|
+
transitive_subtypes.freeze
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
# Inherited hook overridden to keep track of descendants. This method
|
|
46
|
+
# is inherited by all descendants.
|
|
47
|
+
#
|
|
48
|
+
# @param [Class] cls the subclass that is inheriting me
|
|
49
|
+
# @see .subtypes
|
|
50
|
+
def self.inherited(cls)
|
|
51
|
+
(@subtypes ||= []) << cls
|
|
52
|
+
end
|
|
53
|
+
private_class_method
|
|
54
|
+
|
|
55
|
+
# Raise {NotImplementedError} for +method+. Alters the exception
|
|
56
|
+
# backtrace to exclude this method.
|
|
57
|
+
#
|
|
58
|
+
# @param [#to_s] the method name
|
|
59
|
+
# @raise [NotImplementedError] for +method+
|
|
60
|
+
def self.raise_not_implemented(method)
|
|
61
|
+
msg = "#{name} must implement the #{method} method"
|
|
62
|
+
raise NotImplementedError, msg
|
|
63
|
+
rescue StandardError
|
|
64
|
+
raise(
|
|
65
|
+
$ERROR_INFO.class,
|
|
66
|
+
$ERROR_INFO.message,
|
|
67
|
+
$ERROR_INFO.backtrace[1..-1])
|
|
68
|
+
end
|
|
69
|
+
private_class_method
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
require_relative '../../version1_0'
|
|
2
|
+
require_relative 'any'
|
|
3
|
+
|
|
4
|
+
module BELParser
|
|
5
|
+
module Language
|
|
6
|
+
module Version1_0
|
|
7
|
+
module ValueEncodings
|
|
8
|
+
# BiologicalProcess value encoding.
|
|
9
|
+
class BiologicalProcess < Any
|
|
10
|
+
# Return the {Symbol} value.
|
|
11
|
+
#
|
|
12
|
+
# @note This method should be overridden in subclasses.
|
|
13
|
+
def self.to_sym
|
|
14
|
+
raise_not_implemented(__method__) if self != BiologicalProcess
|
|
15
|
+
:B
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
require_relative '../../version1_0'
|
|
2
|
+
require_relative 'abundance'
|
|
3
|
+
|
|
4
|
+
module BELParser
|
|
5
|
+
module Language
|
|
6
|
+
module Version1_0
|
|
7
|
+
module ValueEncodings
|
|
8
|
+
# ComplexAbundance value encoding.
|
|
9
|
+
class ComplexAbundance < Abundance
|
|
10
|
+
# Return the {Symbol} value.
|
|
11
|
+
#
|
|
12
|
+
# @note This method should be overridden in subclasses.
|
|
13
|
+
def self.to_sym
|
|
14
|
+
raise_not_implemented(__method__) if self != ComplexAbundance
|
|
15
|
+
:C
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
require_relative '../../version1_0'
|
|
2
|
+
require_relative 'abundance'
|
|
3
|
+
|
|
4
|
+
module BELParser
|
|
5
|
+
module Language
|
|
6
|
+
module Version1_0
|
|
7
|
+
module ValueEncodings
|
|
8
|
+
# GeneAbundance value encoding.
|
|
9
|
+
class GeneAbundance < Abundance
|
|
10
|
+
# Return the {Symbol} value.
|
|
11
|
+
#
|
|
12
|
+
# @note This method should be overridden in subclasses.
|
|
13
|
+
def self.to_sym
|
|
14
|
+
raise_not_implemented(__method__) if self != GeneAbundance
|
|
15
|
+
:G
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
require_relative '../../version1_0'
|
|
2
|
+
require_relative 'rna_abundance'
|
|
3
|
+
|
|
4
|
+
module BELParser
|
|
5
|
+
module Language
|
|
6
|
+
module Version1_0
|
|
7
|
+
module ValueEncodings
|
|
8
|
+
# Micro RNA abundance value encoding.
|
|
9
|
+
class MicroRNAAbundance < RNAAbundance
|
|
10
|
+
# Return the {Symbol} value.
|
|
11
|
+
#
|
|
12
|
+
# @note This method should be overridden in subclasses.
|
|
13
|
+
def self.to_sym
|
|
14
|
+
raise_not_implemented(__method__) if self != MicroRNAAbundance
|
|
15
|
+
:M
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
require_relative '../../version1_0'
|
|
2
|
+
require_relative 'biological_process'
|
|
3
|
+
|
|
4
|
+
module BELParser
|
|
5
|
+
module Language
|
|
6
|
+
module Version1_0
|
|
7
|
+
module ValueEncodings
|
|
8
|
+
# Pathology value encoding.
|
|
9
|
+
class Pathology < BiologicalProcess
|
|
10
|
+
# Return the {Symbol} value.
|
|
11
|
+
#
|
|
12
|
+
# @note This method should be overridden in subclasses.
|
|
13
|
+
def self.to_sym
|
|
14
|
+
raise_not_implemented(__method__) if self != Pathology
|
|
15
|
+
:O
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
require_relative '../../version1_0'
|
|
2
|
+
require_relative 'abundance'
|
|
3
|
+
|
|
4
|
+
module BELParser
|
|
5
|
+
module Language
|
|
6
|
+
module Version1_0
|
|
7
|
+
module ValueEncodings
|
|
8
|
+
# ProteinAbundance value encoding.
|
|
9
|
+
class ProteinAbundance < Abundance
|
|
10
|
+
# Return the {Symbol} value.
|
|
11
|
+
#
|
|
12
|
+
# @note This method should be overridden in subclasses.
|
|
13
|
+
def self.to_sym
|
|
14
|
+
raise_not_implemented(__method__) if self != ProteinAbundance
|
|
15
|
+
:P
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
require_relative '../../version1_0'
|
|
2
|
+
require_relative 'abundance'
|
|
3
|
+
|
|
4
|
+
module BELParser
|
|
5
|
+
module Language
|
|
6
|
+
module Version1_0
|
|
7
|
+
module ValueEncodings
|
|
8
|
+
# RNAAbundance value encoding.
|
|
9
|
+
class RNAAbundance < Abundance
|
|
10
|
+
# Return the {Symbol} value.
|
|
11
|
+
#
|
|
12
|
+
# @note This method should be overridden in subclasses.
|
|
13
|
+
def self.to_sym
|
|
14
|
+
raise_not_implemented(__method__) if self != RNAAbundance
|
|
15
|
+
:R
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -1,101 +1,20 @@
|
|
|
1
1
|
require_relative 'function'
|
|
2
2
|
require_relative 'specification'
|
|
3
|
+
require_relative 'base_specification'
|
|
3
4
|
|
|
4
5
|
module BELParser
|
|
5
6
|
module Language
|
|
6
7
|
module Version1_0
|
|
7
|
-
#
|
|
8
|
-
class Specification
|
|
9
|
-
|
|
8
|
+
# Version1_0 specification defines the BEL 1.0 specification.
|
|
9
|
+
class Specification < BaseSpecification
|
|
10
|
+
BaseSpecification.load_version_path('version1_0')
|
|
11
|
+
|
|
10
12
|
def initialize
|
|
11
13
|
@version = '1.0'.freeze
|
|
12
|
-
|
|
13
|
-
load_functions
|
|
14
|
-
load_relationships
|
|
15
|
-
load_syntax
|
|
14
|
+
load_language_constants(Version1_0)
|
|
16
15
|
freeze
|
|
17
16
|
end
|
|
18
|
-
|
|
19
|
-
def load_return_types
|
|
20
|
-
# Collect return types
|
|
21
|
-
ret_classes = Version1_0::ReturnTypes.constants.collect do |symbol|
|
|
22
|
-
const = Version1_0::ReturnTypes.const_get(symbol)
|
|
23
|
-
const if const.respond_to?(:subtypes)
|
|
24
|
-
end
|
|
25
|
-
@return_types = ret_classes.compact
|
|
26
|
-
@indexed_return_types = index_sym(@return_types)
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
def load_functions
|
|
30
|
-
# Collect functions
|
|
31
|
-
function_classes = Version1_0::Functions.constants.collect do |symbol|
|
|
32
|
-
const = Version1_0::Functions.const_get(symbol)
|
|
33
|
-
const if
|
|
34
|
-
const.respond_to?(:short) &&
|
|
35
|
-
const.respond_to?(:long)
|
|
36
|
-
end
|
|
37
|
-
@functions = function_classes.compact
|
|
38
|
-
@indexed_functions = index_long_short(@functions)
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
def load_relationships
|
|
42
|
-
# Collect relationships
|
|
43
|
-
rel_classes = Version1_0::Relationships.constants.collect do |symbol|
|
|
44
|
-
const = Version1_0::Relationships.const_get(symbol)
|
|
45
|
-
const if
|
|
46
|
-
const.respond_to?(:short) &&
|
|
47
|
-
const.respond_to?(:long)
|
|
48
|
-
end
|
|
49
|
-
@relationships = rel_classes.compact
|
|
50
|
-
@indexed_relationships = index_long_short(@relationships)
|
|
51
|
-
assign_relationship_categories(@relationships)
|
|
52
|
-
end
|
|
53
|
-
|
|
54
|
-
def load_syntax
|
|
55
|
-
# Collect syntax checkers.
|
|
56
|
-
syntax_classes = Version1_0::Syntax.constants.collect do |symbol|
|
|
57
|
-
const = Version1_0::Syntax.const_get(symbol)
|
|
58
|
-
const if const.respond_to?(:match)
|
|
59
|
-
end
|
|
60
|
-
@syntax = syntax_classes.compact
|
|
61
|
-
end
|
|
62
17
|
end
|
|
63
18
|
end
|
|
64
19
|
end
|
|
65
20
|
end
|
|
66
|
-
|
|
67
|
-
# Require all version 1.0 return types
|
|
68
|
-
Dir[
|
|
69
|
-
File.join(
|
|
70
|
-
File.dirname(File.expand_path(__FILE__)),
|
|
71
|
-
'version1_0', 'return_types', '*.rb')
|
|
72
|
-
].each do |path|
|
|
73
|
-
require_relative "version1_0/return_types/#{File.basename(path)}"
|
|
74
|
-
end
|
|
75
|
-
|
|
76
|
-
# Require all version 1.0 functions.
|
|
77
|
-
Dir[
|
|
78
|
-
File.join(
|
|
79
|
-
File.dirname(File.expand_path(__FILE__)),
|
|
80
|
-
'version1_0', 'functions', '*.rb')
|
|
81
|
-
].each do |path|
|
|
82
|
-
require_relative "version1_0/functions/#{File.basename(path)}"
|
|
83
|
-
end
|
|
84
|
-
|
|
85
|
-
# Require all version 1.0 relationships.
|
|
86
|
-
Dir[
|
|
87
|
-
File.join(
|
|
88
|
-
File.dirname(File.expand_path(__FILE__)),
|
|
89
|
-
'version1_0', 'relationships', '*.rb')
|
|
90
|
-
].each do |path|
|
|
91
|
-
require_relative "version1_0/relationships/#{File.basename(path)}"
|
|
92
|
-
end
|
|
93
|
-
|
|
94
|
-
# Require all version 1.0 syntax checkers.
|
|
95
|
-
Dir[
|
|
96
|
-
File.join(
|
|
97
|
-
File.dirname(File.expand_path(__FILE__)),
|
|
98
|
-
'version1_0', 'syntax', '*.rb')
|
|
99
|
-
].each do |path|
|
|
100
|
-
require_relative "version1_0/syntax/#{File.basename(path)}"
|
|
101
|
-
end
|
|
@@ -14,6 +14,7 @@ module BELParser
|
|
|
14
14
|
SHORT = :a
|
|
15
15
|
LONG = :abundance
|
|
16
16
|
RETURN_TYPE = BELParser::Language::Version2_0::ReturnTypes::Abundance
|
|
17
|
+
A_ENC = Version2_0::ValueEncodings::Abundance
|
|
17
18
|
DESCRIPTION = 'Denotes the abundance of an entity.'.freeze
|
|
18
19
|
|
|
19
20
|
def self.short
|
|
@@ -51,13 +52,11 @@ module BELParser
|
|
|
51
52
|
argument(
|
|
52
53
|
parameter(
|
|
53
54
|
prefix(
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
namespace_of(:*))),
|
|
55
|
+
has_namespace,
|
|
56
|
+
namespace_of(:*)),
|
|
57
57
|
value(
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
encoding_of(:Abundance))))))
|
|
58
|
+
has_encoding,
|
|
59
|
+
encoding_of(A_ENC)))))
|
|
61
60
|
end
|
|
62
61
|
private_constant :AST
|
|
63
62
|
|
|
@@ -87,13 +86,11 @@ module BELParser
|
|
|
87
86
|
argument(
|
|
88
87
|
parameter(
|
|
89
88
|
prefix(
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
namespace_of(:*))),
|
|
89
|
+
has_namespace,
|
|
90
|
+
namespace_of(:*)),
|
|
93
91
|
value(
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
encoding_of(:Abundance))))),
|
|
92
|
+
has_encoding,
|
|
93
|
+
encoding_of(A_ENC)))),
|
|
97
94
|
argument(
|
|
98
95
|
term(
|
|
99
96
|
function(
|
|
@@ -128,13 +125,11 @@ module BELParser
|
|
|
128
125
|
argument(
|
|
129
126
|
parameter(
|
|
130
127
|
prefix(
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
namespace_of(:*))),
|
|
128
|
+
has_namespace,
|
|
129
|
+
namespace_of(:*)),
|
|
134
130
|
value(
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
encoding_of(:Abundance))))),
|
|
131
|
+
has_encoding,
|
|
132
|
+
encoding_of(A_ENC)))),
|
|
138
133
|
argument(
|
|
139
134
|
term(
|
|
140
135
|
function(
|
|
@@ -14,6 +14,7 @@ module BELParser
|
|
|
14
14
|
SHORT = :bp
|
|
15
15
|
LONG = :biologicalProcess
|
|
16
16
|
RETURN_TYPE = BELParser::Language::Version2_0::ReturnTypes::BiologicalProcess
|
|
17
|
+
B_ENC = Version2_0::ValueEncodings::BiologicalProcess
|
|
17
18
|
DESCRIPTION = 'Denotes a process or population of
|
|
18
19
|
vents.'.freeze
|
|
19
20
|
|
|
@@ -52,13 +53,11 @@ module BELParser
|
|
|
52
53
|
argument(
|
|
53
54
|
parameter(
|
|
54
55
|
prefix(
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
namespace_of(:*))),
|
|
56
|
+
has_namespace,
|
|
57
|
+
namespace_of(:*)),
|
|
58
58
|
value(
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
encoding_of(:BiologicalProcess))))))
|
|
59
|
+
has_encoding,
|
|
60
|
+
encoding_of(B_ENC)))))
|
|
62
61
|
end
|
|
63
62
|
private_constant :AST
|
|
64
63
|
|
|
@@ -14,6 +14,7 @@ module BELParser
|
|
|
14
14
|
SHORT = :complex
|
|
15
15
|
LONG = :complexAbundance
|
|
16
16
|
RETURN_TYPE = BELParser::Language::Version2_0::ReturnTypes::ComplexAbundance
|
|
17
|
+
C_ENC = Version2_0::ValueEncodings::ComplexAbundance
|
|
17
18
|
DESCRIPTION = 'Denotes the abundance of a molecular
|
|
18
19
|
omplex.'.freeze
|
|
19
20
|
|
|
@@ -52,13 +53,11 @@ module BELParser
|
|
|
52
53
|
argument(
|
|
53
54
|
parameter(
|
|
54
55
|
prefix(
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
namespace_of(:*))),
|
|
56
|
+
has_namespace,
|
|
57
|
+
namespace_of(:*)),
|
|
58
58
|
value(
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
encoding_of(:Abundance))))))
|
|
59
|
+
has_encoding,
|
|
60
|
+
encoding_of(C_ENC)))))
|
|
62
61
|
end
|
|
63
62
|
private_constant :AST
|
|
64
63
|
|
|
@@ -88,13 +87,11 @@ module BELParser
|
|
|
88
87
|
argument(
|
|
89
88
|
parameter(
|
|
90
89
|
prefix(
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
namespace_of(:*))),
|
|
90
|
+
has_namespace,
|
|
91
|
+
namespace_of(:*)),
|
|
94
92
|
value(
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
encoding_of(:Abundance))))),
|
|
93
|
+
has_encoding,
|
|
94
|
+
encoding_of(C_ENC)))),
|
|
98
95
|
argument(
|
|
99
96
|
term(
|
|
100
97
|
function(
|
|
@@ -54,8 +54,7 @@ module BELParser
|
|
|
54
54
|
parameter(
|
|
55
55
|
prefix(any),
|
|
56
56
|
value(
|
|
57
|
-
|
|
58
|
-
is_amino_acid_range_pattern)))))
|
|
57
|
+
is_amino_acid_range_pattern))))
|
|
59
58
|
end
|
|
60
59
|
private_constant :AST
|
|
61
60
|
|
|
@@ -86,15 +85,11 @@ module BELParser
|
|
|
86
85
|
parameter(
|
|
87
86
|
prefix(any),
|
|
88
87
|
value(
|
|
89
|
-
|
|
90
|
-
is_amino_acid_range_pattern)))),
|
|
88
|
+
is_amino_acid_range_pattern))),
|
|
91
89
|
argument(
|
|
92
90
|
parameter(
|
|
93
|
-
prefix(
|
|
94
|
-
|
|
95
|
-
value(
|
|
96
|
-
value_type(
|
|
97
|
-
encoding_of(:*))))))
|
|
91
|
+
prefix(any),
|
|
92
|
+
value(any))))
|
|
98
93
|
end
|
|
99
94
|
private_constant :AST
|
|
100
95
|
|
|
@@ -15,6 +15,7 @@ module BELParser
|
|
|
15
15
|
SHORT = :fromLoc
|
|
16
16
|
LONG = :fromLocation
|
|
17
17
|
RETURN_TYPE = BELParser::Language::Version2_0::ReturnTypes::FromLocation
|
|
18
|
+
L_ENC = Version2_0::ValueEncodings::Location
|
|
18
19
|
DESCRIPTION = 'Denotes the from cellular location of the
|
|
19
20
|
bundance.'.freeze
|
|
20
21
|
|
|
@@ -53,13 +54,11 @@ module BELParser
|
|
|
53
54
|
argument(
|
|
54
55
|
parameter(
|
|
55
56
|
prefix(
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
namespace_of(:*))),
|
|
57
|
+
has_namespace,
|
|
58
|
+
namespace_of(:*)),
|
|
59
59
|
value(
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
encoding_of(:Location))))))
|
|
60
|
+
has_encoding,
|
|
61
|
+
encoding_of(L_ENC)))))
|
|
63
62
|
end
|
|
64
63
|
private_constant :AST
|
|
65
64
|
|