bel_parser 1.0.0.alpha.47 → 1.0.0.alpha.48
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gemspec +1 -1
- data/VERSION +1 -1
- data/lib/bel_parser/expression/model/namespace.rb +60 -20
- data/lib/bel_parser/expression/model/parameter.rb +30 -36
- data/lib/bel_parser/expression/model/statement.rb +28 -3
- data/lib/bel_parser/expression/model/term.rb +46 -7
- data/lib/bel_parser/expression/parser.rb +15 -3
- data/lib/bel_parser/expression/validator.rb +13 -15
- data/lib/bel_parser/language/apply_namespace_encoding.rb +14 -18
- data/lib/bel_parser/language/expression_validator.rb +398 -23
- data/lib/bel_parser/language/semantics_ast_warnings.rb +1 -1
- data/lib/bel_parser/language/specification.rb +4 -0
- data/lib/bel_parser/language/syntax/undefined_namespace.rb +1 -1
- data/lib/bel_parser/language/syntax/undefined_namespace_value.rb +2 -1
- data/lib/bel_parser/language/version2_0/functions/activity.rb +2 -2
- data/lib/bel_parser/language/version2_0/functions/biological_process.rb +1 -2
- data/lib/bel_parser/language/version2_0/functions/cell_secretion.rb +2 -2
- data/lib/bel_parser/language/version2_0/functions/cell_surface_expression.rb +2 -2
- data/lib/bel_parser/language/version2_0/functions/complex_abundance.rb +1 -1
- data/lib/bel_parser/language/version2_0/functions/composite_abundance.rb +1 -1
- data/lib/bel_parser/language/version2_0/functions/degradation.rb +2 -2
- data/lib/bel_parser/language/version2_0/functions/fragment.rb +1 -1
- data/lib/bel_parser/language/version2_0/functions/from_location.rb +1 -1
- data/lib/bel_parser/language/version2_0/functions/fusion.rb +1 -1
- data/lib/bel_parser/language/version2_0/functions/micro_rna_abundance.rb +1 -1
- data/lib/bel_parser/language/version2_0/functions/molecular_activity.rb +1 -1
- data/lib/bel_parser/language/version2_0/functions/protein_modification.rb +1 -1
- data/lib/bel_parser/language/version2_0/functions/reaction.rb +1 -1
- data/lib/bel_parser/language/version2_0/functions/to_location.rb +1 -1
- data/lib/bel_parser/language/version2_0/functions/translocation.rb +1 -1
- data/lib/bel_parser/language/version2_0/functions/variant.rb +1 -1
- data/lib/bel_parser/resource/concept_scheme.rb +8 -0
- data/lib/bel_parser/resource/dataset.rb +24 -0
- data/lib/bel_parser/resource/file_resource.rb +8 -0
- data/lib/bel_parser/resource/file_resource_value.rb +1 -0
- data/lib/bel_parser/resource/sparql_reader.rb +3 -1
- data/lib/bel_parser/resource/value.rb +20 -0
- data/lib/bel_parser/resource.rb +8 -6
- metadata +10 -9
@@ -29,6 +29,30 @@ module BELParser
|
|
29
29
|
def types
|
30
30
|
raise NotImplementedError, "#{__method__} is not implemented."
|
31
31
|
end
|
32
|
+
|
33
|
+
def uri?
|
34
|
+
raise NotImplementedError, "#{__method__} is not implemented."
|
35
|
+
end
|
36
|
+
|
37
|
+
def url?
|
38
|
+
raise NotImplementedError, "#{__method__} is not implemented."
|
39
|
+
end
|
40
|
+
|
41
|
+
def <=>(another_dataset)
|
42
|
+
keyword <=> another_dataset.keyword
|
43
|
+
end
|
44
|
+
|
45
|
+
def hash
|
46
|
+
[types, identifier, keyword].hash
|
47
|
+
end
|
48
|
+
|
49
|
+
def ==(another_dataset)
|
50
|
+
return false if another_dataset == nil
|
51
|
+
types == another_dataset.types &&
|
52
|
+
identifier == another_dataset.identifier &&
|
53
|
+
keyword == another_dataset.keyword
|
54
|
+
end
|
55
|
+
alias :eql? :'=='
|
32
56
|
end
|
33
57
|
end
|
34
58
|
end
|
@@ -122,9 +122,11 @@ module BELParser
|
|
122
122
|
where {
|
123
123
|
<<%= uri %>> rdf:type skos:ConceptScheme .
|
124
124
|
<<%= uri %>> rdf:type ?type .
|
125
|
-
<<%= uri %>> belv:domain ?domain .
|
126
125
|
<<%= uri %>> belv:prefix ?prefix .
|
127
126
|
<<%= uri %>> skos:prefLabel ?prefLabel .
|
127
|
+
optional {
|
128
|
+
<<%= uri %>> belv:domain ?domain .
|
129
|
+
}
|
128
130
|
}
|
129
131
|
group by ?domain ?prefix ?prefLabel
|
130
132
|
SPARQL
|
@@ -26,6 +26,26 @@ module BELParser
|
|
26
26
|
def encodings
|
27
27
|
raise NotImplementedError, "#{__method__} is not implemented."
|
28
28
|
end
|
29
|
+
|
30
|
+
def <=>(another_value)
|
31
|
+
name <=> another_value.name
|
32
|
+
end
|
33
|
+
|
34
|
+
def hash
|
35
|
+
[dataset, name, encodings].hash
|
36
|
+
end
|
37
|
+
|
38
|
+
def ==(another_value)
|
39
|
+
return false if another_value == nil
|
40
|
+
dataset == another_value.dataset &&
|
41
|
+
name == another_value.name &&
|
42
|
+
encodings == another_value.encodings
|
43
|
+
end
|
44
|
+
alias :eql? :'=='
|
45
|
+
|
46
|
+
def to_s
|
47
|
+
name
|
48
|
+
end
|
29
49
|
end
|
30
50
|
end
|
31
51
|
end
|
data/lib/bel_parser/resource.rb
CHANGED
@@ -5,8 +5,7 @@ require_relative 'resource/resource_url_reader'
|
|
5
5
|
module BELParser
|
6
6
|
module Resource
|
7
7
|
|
8
|
-
DEFAULT_SPARQL_ENDPOINT = 'http://
|
9
|
-
#DEFAULT_SPARQL_ENDPOINT = 'http://localhost:3030/identifiers/sparql'
|
8
|
+
DEFAULT_SPARQL_ENDPOINT = 'http://resources.openbel.org/sparql'
|
10
9
|
|
11
10
|
READER_LOCK = Mutex.new
|
12
11
|
private_constant :READER_LOCK
|
@@ -15,27 +14,30 @@ module BELParser
|
|
15
14
|
URISTRING_PATTERN = /^URIString *= *(.*)$/
|
16
15
|
private_constant :URISTRING_PATTERN
|
17
16
|
|
17
|
+
@default_uri_reader = SPARQLReader.new(DEFAULT_SPARQL_ENDPOINT, false)
|
18
|
+
@default_url_reader = ResourceURLReader.new
|
19
|
+
|
18
20
|
def self.default_uri_reader
|
19
21
|
READER_LOCK.synchronize do
|
20
|
-
@default_uri_reader
|
22
|
+
@default_uri_reader
|
21
23
|
end
|
22
24
|
end
|
23
25
|
|
24
26
|
def self.default_uri_reader=(uri_reader)
|
25
27
|
READER_LOCK.synchronize do
|
26
|
-
@default_uri_reader
|
28
|
+
@default_uri_reader = uri_reader
|
27
29
|
end
|
28
30
|
end
|
29
31
|
|
30
32
|
def self.default_url_reader
|
31
33
|
READER_LOCK.synchronize do
|
32
|
-
@default_url_reader
|
34
|
+
@default_url_reader
|
33
35
|
end
|
34
36
|
end
|
35
37
|
|
36
38
|
def self.default_url_reader=(url_reader)
|
37
39
|
READER_LOCK.synchronize do
|
38
|
-
@default_url_reader
|
40
|
+
@default_url_reader = url_reader
|
39
41
|
end
|
40
42
|
end
|
41
43
|
|
metadata
CHANGED
@@ -1,25 +1,25 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bel_parser
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.alpha.
|
4
|
+
version: 1.0.0.alpha.48
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Anthony Bargnesi
|
8
8
|
- Nick Bargnesi
|
9
|
-
autorequire:
|
9
|
+
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2016-05-
|
12
|
+
date: 2016-05-26 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
+
name: sparql-client
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
16
17
|
requirements:
|
17
18
|
- - "~>"
|
18
19
|
- !ruby/object:Gem::Version
|
19
20
|
version: 2.0.0
|
20
|
-
name: sparql-client
|
21
|
-
prerelease: false
|
22
21
|
type: :runtime
|
22
|
+
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - "~>"
|
@@ -380,7 +380,7 @@ homepage: https://github.com/OpenBEL/bel_parser
|
|
380
380
|
licenses:
|
381
381
|
- Apache-2.0
|
382
382
|
metadata: {}
|
383
|
-
post_install_message:
|
383
|
+
post_install_message:
|
384
384
|
rdoc_options: []
|
385
385
|
require_paths:
|
386
386
|
- lib
|
@@ -395,9 +395,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
395
395
|
- !ruby/object:Gem::Version
|
396
396
|
version: 1.3.1
|
397
397
|
requirements: []
|
398
|
-
rubyforge_project:
|
399
|
-
rubygems_version: 2.
|
400
|
-
signing_key:
|
398
|
+
rubyforge_project:
|
399
|
+
rubygems_version: 2.5.1
|
400
|
+
signing_key:
|
401
401
|
specification_version: 4
|
402
402
|
summary: Parser for Biolgical Expression Language.
|
403
403
|
test_files: []
|
404
|
+
has_rdoc:
|