bel 0.3.3 → 0.4.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +53 -8
  3. data/bel.gemspec +10 -15
  4. data/bin/bel +63 -4
  5. data/bin/bel2rdf.rb +1 -1
  6. data/bin/bel_compare.rb +1 -1
  7. data/bin/bel_parse.rb +1 -1
  8. data/bin/bel_rdfschema.rb +1 -1
  9. data/bin/bel_summarize.rb +1 -1
  10. data/bin/bel_upgrade.rb +1 -1
  11. data/lib/bel.rb +8 -10
  12. data/lib/bel/completion.rb +3 -2
  13. data/lib/bel/completion/value_match_rule.rb +10 -0
  14. data/lib/bel/evidence_model/citation.rb +101 -43
  15. data/lib/bel/evidence_model/evidence.rb +2 -2
  16. data/lib/bel/evidence_model/experiment_context.rb +1 -0
  17. data/lib/bel/evidence_model/metadata.rb +15 -2
  18. data/lib/bel/evidence_model/references.rb +10 -10
  19. data/lib/bel/json.rb +63 -0
  20. data/lib/bel/json/adapter/multi_json.rb +36 -0
  21. data/lib/bel/json/adapter/oj.rb +65 -0
  22. data/lib/bel/json/adapter/ruby_json.rb +28 -0
  23. data/lib/bel/json/reader.rb +9 -0
  24. data/lib/bel/json/writer.rb +9 -0
  25. data/lib/bel/libbel.rb +1 -4
  26. data/lib/bel/parser.rb +2 -2
  27. data/lib/bel/rdf_repository.rb +18 -0
  28. data/lib/bel/rdf_repository/plugins/memory.rb +28 -0
  29. data/lib/bel/rdf_repository/plugins/mongo.rb +28 -0
  30. data/lib/bel/resource.rb +24 -0
  31. data/lib/bel/resource/namespace.rb +122 -0
  32. data/lib/bel/resource/namespace_value.rb +69 -0
  33. data/lib/bel/resource/namespaces.rb +83 -0
  34. data/lib/bel/resource/search.rb +26 -0
  35. data/lib/bel/resource/search/api.rb +36 -0
  36. data/lib/bel/resource/search/search_result.rb +32 -0
  37. data/lib/bel/translate.rb +108 -0
  38. data/lib/bel/translator.rb +69 -0
  39. data/lib/bel/translator/plugins/bel_script.rb +36 -0
  40. data/lib/bel/translator/plugins/bel_script/bel_yielder.rb +144 -0
  41. data/lib/bel/translator/plugins/bel_script/evidence_yielder.rb +95 -0
  42. data/lib/bel/translator/plugins/bel_script/translator.rb +24 -0
  43. data/lib/bel/translator/plugins/jgf.rb +37 -0
  44. data/lib/bel/translator/plugins/jgf/translator.rb +160 -0
  45. data/lib/bel/translator/plugins/json_evidence.rb +38 -0
  46. data/lib/bel/translator/plugins/json_evidence/translator.rb +90 -0
  47. data/lib/bel/translator/plugins/rdf.rb +48 -0
  48. data/lib/bel/translator/plugins/rdf/bel_schema.rb +339 -0
  49. data/lib/bel/translator/plugins/rdf/monkey_patch.rb +310 -0
  50. data/lib/bel/translator/plugins/rdf/reader.rb +173 -0
  51. data/lib/bel/translator/plugins/rdf/translator.rb +40 -0
  52. data/lib/bel/translator/plugins/rdf/writer.rb +45 -0
  53. data/lib/bel/translator/plugins/xbel.rb +36 -0
  54. data/lib/bel/translator/plugins/xbel/evidence_handler.rb +468 -0
  55. data/lib/bel/translator/plugins/xbel/evidence_yielder.rb +24 -0
  56. data/lib/bel/translator/plugins/xbel/translator.rb +24 -0
  57. data/lib/bel/translator/plugins/xbel/xbel_yielder.rb +414 -0
  58. data/lib/bel/vendor/little-plugger.rb +323 -0
  59. data/lib/bel/version.rb +1 -1
  60. metadata +44 -158
  61. data/lib/bel/extension.rb +0 -37
  62. data/lib/bel/extension_format.rb +0 -207
  63. data/lib/bel/extensions/bel.rb +0 -258
  64. data/lib/bel/extensions/jgf.rb +0 -219
  65. data/lib/bel/extensions/json/jrjackson.rb +0 -31
  66. data/lib/bel/extensions/json/json.rb +0 -133
  67. data/lib/bel/extensions/json/multi_json.rb +0 -29
  68. data/lib/bel/extensions/json/oj.rb +0 -68
  69. data/lib/bel/extensions/json/ruby_json.rb +0 -29
  70. data/lib/bel/extensions/rdf/bel_rdf.rb +0 -338
  71. data/lib/bel/extensions/rdf/rdf.rb +0 -584
  72. data/lib/bel/extensions/xbel.rb +0 -923
  73. data/lib/bel/format.rb +0 -58
@@ -0,0 +1,38 @@
1
+ module BEL::Translator::Plugins
2
+
3
+ module JsonEvidence
4
+
5
+ ID = :json_evidence
6
+ NAME = 'JSON Evidence Translator'
7
+ DESCRIPTION = 'A translator that can read and write evidence to individual JSON objects per the evidence schema (http://next.belframework.org/schemas/evidence.schema.json).'
8
+ MEDIA_TYPES = %i(application/json)
9
+ EXTENSIONS = %i(json)
10
+ EVIDENCE_ROOT = :evidence
11
+
12
+ def self.create_translator(options = {})
13
+ require_relative 'json_evidence/translator'
14
+
15
+ JsonEvidenceTranslator.new
16
+ end
17
+
18
+ def self.id
19
+ ID
20
+ end
21
+
22
+ def self.name
23
+ NAME
24
+ end
25
+
26
+ def self.description
27
+ DESCRIPTION
28
+ end
29
+
30
+ def self.media_types
31
+ MEDIA_TYPES
32
+ end
33
+
34
+ def self.file_extensions
35
+ EXTENSIONS
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,90 @@
1
+ require 'bel'
2
+ require 'bel/json'
3
+
4
+ module BEL::Translator::Plugins
5
+
6
+ module JsonEvidence
7
+
8
+ class JsonEvidenceTranslator
9
+
10
+ include ::BEL::Translator
11
+
12
+ def read(data, options = {})
13
+ ::BEL::JSON.read(data, options).lazy.select { |obj|
14
+ obj.include?(:evidence)
15
+ }.map { |json_obj|
16
+ unwrap(json_obj)
17
+ }
18
+ end
19
+
20
+ def write(objects, writer = StringIO.new, options = {})
21
+ write_array_start(writer)
22
+ begin
23
+ evidence_enum = objects.each
24
+
25
+ # write first evidence object
26
+ evidence = evidence_enum.next
27
+ ::BEL::JSON.write(wrap(evidence), writer)
28
+
29
+ # each successive evidence starts with a comma
30
+ while true
31
+ evidence = evidence_enum.next
32
+ writer << ","
33
+ ::BEL::JSON.write(wrap(evidence), writer)
34
+ end
35
+ rescue StopIteration
36
+ # end of evidence hashes
37
+ end
38
+ write_array_end(writer)
39
+
40
+ writer
41
+ end
42
+
43
+ private
44
+
45
+ def write_array_start(writer)
46
+ writer << '['
47
+ end
48
+
49
+ def write_array_end(writer)
50
+ writer << ']'
51
+ end
52
+
53
+ def wrap(evidence)
54
+ hash = evidence.to_h
55
+ {
56
+ EVIDENCE_ROOT => {
57
+ :bel_statement => hash[:bel_statement].to_s,
58
+ :citation => hash[:citation],
59
+ :summary_text => hash[:summary_text],
60
+ :experiment_context => hash[:experiment_context],
61
+ :references => hash[:references],
62
+ :metadata => hash[:metadata].to_a
63
+ }
64
+ }
65
+ end
66
+
67
+ def unwrap(hash)
68
+ evidence_hash = hash[EVIDENCE_ROOT]
69
+ evidence = ::BEL::Model::Evidence.create(evidence_hash)
70
+
71
+ evidence.bel_statement = parse_statement(evidence)
72
+ evidence
73
+ end
74
+
75
+ def parse_statement(evidence)
76
+ namespaces = evidence.references.namespaces
77
+ ::BEL::Script.parse(
78
+ "#{evidence.bel_statement}\n",
79
+ Hash[
80
+ namespaces.map { |k, v|
81
+ [k, ::BEL::Namespace::NamespaceDefinition.new(k, v)]
82
+ }
83
+ ]
84
+ ).select { |obj|
85
+ obj.is_a? ::BEL::Model::Statement
86
+ }.first
87
+ end
88
+ end
89
+ end
90
+ end
@@ -0,0 +1,48 @@
1
+ module BEL::Translator::Plugins
2
+
3
+ module Rdf
4
+
5
+ ID = :rdf
6
+ NAME = 'BEL RDF Translator'
7
+ DESCRIPTION = 'A translator that can read and write evidence to BEL RDF.'
8
+ MEDIA_TYPES = %i(
9
+ application/n-quads
10
+ application/n-triples
11
+ application/rdf+xml
12
+ application/turtle
13
+ application/x-turtle
14
+ text/turtle
15
+ )
16
+ EXTENSIONS = %i(
17
+ nq
18
+ nt
19
+ rdf
20
+ ttl
21
+ )
22
+
23
+ def self.create_translator(options = {})
24
+ require_relative 'rdf/translator'
25
+ RdfTranslator.new
26
+ end
27
+
28
+ def self.id
29
+ ID
30
+ end
31
+
32
+ def self.name
33
+ NAME
34
+ end
35
+
36
+ def self.description
37
+ DESCRIPTION
38
+ end
39
+
40
+ def self.media_types
41
+ MEDIA_TYPES
42
+ end
43
+
44
+ def self.file_extensions
45
+ EXTENSIONS
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,339 @@
1
+ # vim: ts=2 sw=2:
2
+ # Defines the RDF vocabulary for BEL structures.
3
+ module BEL::Translator::Plugins
4
+
5
+ module Rdf
6
+ module BEL
7
+ module RDF
8
+
9
+ # uri prefixes
10
+ BELR = ::RDF::Vocabulary.new('http://www.openbel.org/bel/')
11
+ BELV = ::RDF::Vocabulary.new('http://www.openbel.org/vocabulary/')
12
+ PUBMED = ::RDF::Vocabulary.new('http://bio2rdf.org/pubmed:')
13
+ RDF = ::RDF
14
+ RDFS = ::RDF::RDFS
15
+
16
+ # annotations
17
+ Anatomy = ::RDF::Vocabulary.new('http://www.openbel.org/bel/annotation/anatomy/')
18
+ Cell = ::RDF::Vocabulary.new('http://www.openbel.org/bel/annotation/cell/')
19
+ CellLine = ::RDF::Vocabulary.new('http://www.openbel.org/bel/annotation/cell-line/')
20
+ CellStructure = ::RDF::Vocabulary.new('http://www.openbel.org/bel/annotation/cell-structure/')
21
+ Disease = ::RDF::Vocabulary.new('http://www.openbel.org/bel/annotation/disease/')
22
+ MeSHAnatomy = ::RDF::Vocabulary.new('http://www.openbel.org/bel/annotation/mesh-anatomy/')
23
+ MeSHDisease = ::RDF::Vocabulary.new('http://www.openbel.org/bel/annotation/mesh-diseases/')
24
+ Species = ::RDF::Vocabulary.new('http://www.openbel.org/bel/annotation/species-taxonomy-id/')
25
+
26
+ # maps outer function to bel/vocabulary class
27
+ FUNCTION_TYPE = {
28
+ a: BELV.Abundance,
29
+ act: BELV.AbundanceActivity,
30
+ bp: BELV.BiologicalProcess,
31
+ cat: BELV.AbundanceActivity,
32
+ chap: BELV.AbundanceActivity,
33
+ complex: BELV.ComplexAbundance,
34
+ composite: BELV.CompositeAbundance,
35
+ deg: BELV.Degradation,
36
+ fus: BELV.Fusion,
37
+ g: BELV.GeneAbundance,
38
+ gtp: BELV.AbundanceActivity,
39
+ kin: BELV.AbundanceActivity,
40
+ m: BELV.microRNAAbundance,
41
+ p: BELV.ProteinAbundance,
42
+ path: BELV.Pathology,
43
+ pep: BELV.AbundanceActivity,
44
+ phos: BELV.AbundanceActivity,
45
+ pmod: BELV.ProteinModification,
46
+ r: BELV.RNAAbundance,
47
+ ribo: BELV.AbundanceActivity,
48
+ rxn: BELV.Reaction,
49
+ sec: BELV.CellSecretion,
50
+ sub: BELV.Substitution,
51
+ surf: BELV.CellSurfaceExpression,
52
+ tloc: BELV.Translocation,
53
+ tport: BELV.AbundanceActivity,
54
+ tscript: BELV.AbundanceActivity,
55
+ abundance: BELV.Abundance,
56
+ biologicalProcess: BELV.BiologicalProcess,
57
+ catalyticActivity: BELV.AbundanceActivity,
58
+ cellSecretion: BELV.CellSecretion,
59
+ cellSurfaceExpression: BELV.CellSurfaceExpression,
60
+ chaperoneActivity: BELV.AbundanceActivity,
61
+ complexAbundance: BELV.ComplexAbundance,
62
+ compositeAbundance: BELV.CompositeAbundance,
63
+ degradation: BELV.Degradation,
64
+ fusion: BELV.Fusion,
65
+ geneAbundance: BELV.GeneAbundance,
66
+ gtpBoundActivity: BELV.AbundanceActivity,
67
+ kinaseActivity: BELV.AbundanceActivity,
68
+ list: BELV.List,
69
+ microRNAAbundance: BELV.microRNAAbundance,
70
+ molecularActivity: BELV.AbundanceActivity,
71
+ pathology: BELV.Pathology,
72
+ peptidaseActivity: BELV.AbundanceActivity,
73
+ phosphataseActivity: BELV.AbundanceActivity,
74
+ products: BELV.Products,
75
+ proteinAbundance: BELV.ProteinAbundance,
76
+ proteinModification: BELV.ProteinModification,
77
+ reactants: BELV.Reactants,
78
+ reaction: BELV.Reaction,
79
+ ribosylationActivity: BELV.AbundanceActivity,
80
+ rnaAbundance: BELV.RNAAbundance,
81
+ substitution: BELV.Substitution,
82
+ transcriptionalActivity: BELV.AbundanceActivity,
83
+ translocation: BELV.Translocation,
84
+ transportActivity: BELV.AbundanceActivity,
85
+ truncation: BELV.Truncation,
86
+ }
87
+
88
+ RELATIONSHIP_TYPE = {
89
+ '--' => BELV.Association,
90
+ '-|' => BELV.Decreases,
91
+ '=|' => BELV.DirectlyDecreases,
92
+ '=>' => BELV.DirectlyIncreases,
93
+ '->' => BELV.Increases,
94
+ ':>' => BELV.TranscribedTo,
95
+ '>>' => BELV.TranslatedTo,
96
+ 'actsIn' => BELV.ActsIn,
97
+ 'analogous' => BELV.Analogous,
98
+ 'association' => BELV.Association,
99
+ 'biomarkerFor' => BELV.BiomarkerFor,
100
+ 'causesNoChange' => BELV.CausesNoChange,
101
+ 'decreases' => BELV.Decreases,
102
+ 'directlyDecreases' => BELV.DirectlyDecreases,
103
+ 'directlyIncreases' => BELV.DirectlyIncreases,
104
+ 'hasComponent' => BELV.HasComponent,
105
+ 'hasComponents' => BELV.HasComponents,
106
+ 'hasMember' => BELV.HasMember,
107
+ 'hasMembers' => BELV.HasMembers,
108
+ 'hasModification' => BELV.HasModification,
109
+ 'hasProduct' => BELV.HasProduct,
110
+ 'hasVariant' => BELV.HasVariant,
111
+ 'includes' => BELV.Includes,
112
+ 'increases' => BELV.Increases,
113
+ 'isA' => BELV.IsA,
114
+ 'negativeCorrelation' => BELV.NegativeCorrelation,
115
+ 'orthologous' => BELV.Orthologous,
116
+ 'positiveCorrelation' => BELV.PositiveCorrelation,
117
+ 'prognosticBiomarkerFor' => BELV.PrognosticBiomarkerFor,
118
+ 'rateLimitingStepOf' => BELV.RateLimitingStepOf,
119
+ 'reactantIn' => BELV.ReactantIn,
120
+ 'subProcessOf' => BELV.SubProcessOf,
121
+ 'transcribedTo' => BELV.TranscribedTo,
122
+ 'translatedTo' => BELV.TranslatedTo,
123
+ 'translocates' => BELV.Translocates,
124
+ }
125
+
126
+ RELATIONSHIP_CLASSIFICATION = {
127
+ :'--' => BELV.CorrelativeRelationship,
128
+ :'-|' => BELV.Decreases,
129
+ :'=|' => BELV.DirectlyDecreases,
130
+ :'=>' => BELV.DirectlyIncreases,
131
+ :'->' => BELV.Increases,
132
+ :'association' => BELV.CorrelativeRelationship,
133
+ :'biomarkerFor' => BELV.BiomarkerFor,
134
+ :'causesNoChange' => BELV.CausesNoChange,
135
+ :'decreases' => BELV.Decreases,
136
+ :'directlyDecreases' => BELV.DirectlyDecreases,
137
+ :'directlyIncreases' => BELV.DirectlyIncreases,
138
+ :'hasComponent' => BELV.HasComponent,
139
+ :'hasMember' => BELV.HasMember,
140
+ :'increases' => BELV.Increases,
141
+ :'isA' => BELV.IsA,
142
+ :'negativeCorrelation' => BELV.NegativeCorrelation,
143
+ :'positiveCorrelation' => BELV.PositiveCorrelation,
144
+ :'prognosticBiomarkerFor' => BELV.PrognosticBiomarkerFor,
145
+ :'rateLimitingStepOf' => BELV.RateLimitingStepOf,
146
+ :'subProcessOf' => BELV.SubProcessOf,
147
+ }
148
+
149
+ ACTIVITY_TYPE = {
150
+ act: BELV.Activity,
151
+ cat: BELV.Catalytic,
152
+ chap: BELV.Chaperone,
153
+ gtp: BELV.GtpBound,
154
+ kin: BELV.Kinase,
155
+ pep: BELV.Peptidase,
156
+ phos: BELV.Phosphatase,
157
+ ribo: BELV.Ribosylase,
158
+ tport: BELV.Transport,
159
+ tscript: BELV.Transcription,
160
+ catalyticActivity: BELV.Catalytic,
161
+ chaperoneActivity: BELV.Chaperone,
162
+ gtpBoundActivity: BELV.GtpBound,
163
+ kinaseActivity: BELV.Kinase,
164
+ molecularActivity: BELV.Activity,
165
+ peptidaseActivity: BELV.Peptidase,
166
+ phosphataseActivity: BELV.Phosphatase,
167
+ ribosylationActivity: BELV.Ribosylase,
168
+ transcriptionalActivity: BELV.Transcription,
169
+ transportActivity: BELV.Transport,
170
+ }
171
+
172
+ # maps modification types to bel/vocabulary class
173
+ MODIFICATION_TYPE = {
174
+ 'A' => BELV.Acetylation,
175
+ 'F' => BELV.Farnesylation,
176
+ 'G' => BELV.Glycosylation,
177
+ 'H' => BELV.Hydroxylation,
178
+ 'M' => BELV.Methylation,
179
+ 'P' => BELV.Phosphorylation,
180
+ 'P,S' => BELV.PhosphorylationSerine,
181
+ 'P,T' => BELV.PhosphorylationThreonine,
182
+ 'P,Y' => BELV.PhosphorylationTyrosine,
183
+ 'R' => BELV.Ribosylation,
184
+ 'S' => BELV.Sumoylation,
185
+ 'U' => BELV.Ubiquitination,
186
+ }
187
+
188
+ # protein variant
189
+ PROTEIN_VARIANT = [:fus, :fusion, :sub, :substitution, :trunc, :truncation]
190
+
191
+ def self.vocabulary_rdf
192
+ [
193
+ # Classes
194
+ # Concept - Annotations
195
+ [BELV.AnnotationConcept, RDF::RDFS.subClassOf, RDF::SKOS.Concept],
196
+ [BELV.AnnotationConceptScheme, RDF::RDFS.subClassOf, RDF::SKOS.ConceptScheme],
197
+ # Concept - Namespaces
198
+ [BELV.AbundanceConcept, RDF::RDFS.subClassOf, BELV.NamespaceConcept],
199
+ [BELV.BiologicalProcessConcept, RDF::RDFS.subClassOf, BELV.NamespaceConcept],
200
+ [BELV.ComplexConcept, RDF::RDFS.subClassOf, BELV.AbundanceConcept],
201
+ [BELV.GeneConcept, RDF::RDFS.subClassOf, BELV.AbundanceConcept],
202
+ [BELV.MicroRNAConcept, RDF::RDFS.subClassOf, BELV.RNAConcept],
203
+ [BELV.NamespaceConceptScheme, RDF::RDFS.subClassOf, RDF::SKOS.ConceptScheme],
204
+ [BELV.NamespaceConcept, RDF::RDFS.subClassOf, RDF::SKOS.Concept],
205
+ [BELV.ProteinConcept, RDF::RDFS.subClassOf, BELV.AbundanceConcept],
206
+ [BELV.RNAConcept, RDF::RDFS.subClassOf, BELV.AbundanceConcept],
207
+ [BELV.PathologyConcept, RDF::RDFS.subClassOf, BELV.BiologicalProcessConcept],
208
+ # BEL Language
209
+ [BELV.Abundance, RDF.type, RDF::RDFS.Class],
210
+ [BELV.Activity, RDF.type, RDF::RDFS.Class],
211
+ [BELV.Evidence, RDF.type, RDF::RDFS.Class],
212
+ [BELV.Modification, RDF.type, RDF::RDFS.Class],
213
+ [BELV.Relationship, RDF.type, RDF::RDFS.Class],
214
+ [BELV.Statement, RDF.type, RDF::RDFS.Class],
215
+ [BELV.Term, RDF.type, RDF::RDFS.Class],
216
+ # Relationships
217
+ [BELV.Association, RDF::RDFS.subClassOf, BELV.CorrelativeRelationship],
218
+ [BELV.BiomarkerFor, RDF::RDFS.subClassOf, BELV.Relationship],
219
+ [BELV.CausesNoChange, RDF::RDFS.subClassOf, BELV.CausalRelationship],
220
+ [BELV.CausalRelationship, RDF::RDFS.subClassOf, BELV.Relationship],
221
+ [BELV.CorrelativeRelationship, RDF::RDFS.subClassOf, BELV.Relationship],
222
+ [BELV.Decreases, RDF::RDFS.subClassOf, BELV.CausalRelationship],
223
+ [BELV.Decreases, RDF::RDFS.subClassOf, BELV.NegativeRelationship],
224
+ [BELV.DirectlyDecreases, RDF::RDFS.subClassOf, BELV.CausalRelationship],
225
+ [BELV.DirectlyDecreases, RDF::RDFS.subClassOf, BELV.NegativeRelationship],
226
+ [BELV.DirectlyDecreases, RDF::RDFS.subClassOf, BELV.DirectRelationship],
227
+ [BELV.DirectlyDecreases, RDF::RDFS.subClassOf, BELV.Decreases],
228
+ [BELV.DirectlyIncreases, RDF::RDFS.subClassOf, BELV.CausalRelationship],
229
+ [BELV.DirectlyIncreases, RDF::RDFS.subClassOf, BELV.PositiveRelationship],
230
+ [BELV.DirectlyIncreases, RDF::RDFS.subClassOf, BELV.DirectRelationship],
231
+ [BELV.DirectlyIncreases, RDF::RDFS.subClassOf, BELV.Increases],
232
+ [BELV.DirectRelationship, RDF::RDFS.subClassOf, BELV.Relationship],
233
+ [BELV.HasComponent, RDF::RDFS.subClassOf, BELV.MembershipRelationship],
234
+ [BELV.HasMember, RDF::RDFS.subClassOf, BELV.MembershipRelationship],
235
+ [BELV.Increases, RDF::RDFS.subClassOf, BELV.CausalRelationship],
236
+ [BELV.Increases, RDF::RDFS.subClassOf, BELV.PositiveRelationship],
237
+ [BELV.IsA, RDF::RDFS.subClassOf, BELV.MembershipRelationship],
238
+ [BELV.MembershipRelationship, RDF::RDFS.subClassOf, BELV.Relationship],
239
+ [BELV.NegativeCorrelation, RDF::RDFS.subClassOf, BELV.CorrelativeRelationship],
240
+ [BELV.NegativeCorrelation, RDF::RDFS.subClassOf, BELV.NegativeRelationship],
241
+ [BELV.NegativeRelationship, RDF::RDFS.subClassOf, BELV.Relationship],
242
+ [BELV.PositiveCorrelation, RDF::RDFS.subClassOf, BELV.CorrelativeRelationship],
243
+ [BELV.PositiveCorrelation, RDF::RDFS.subClassOf, BELV.PositiveRelationship],
244
+ [BELV.PositiveRelationship, RDF::RDFS.subClassOf, BELV.Relationship],
245
+ [BELV.PrognosticBiomarkerFor, RDF::RDFS.subClassOf, BELV.BiomarkerFor],
246
+ [BELV.RateLimitingStepOf, RDF::RDFS.subClassOf, BELV.Increases],
247
+ [BELV.RateLimitingStepOf, RDF::RDFS.subClassOf, BELV.CausalRelationship],
248
+ [BELV.RateLimitingStepOf, RDF::RDFS.subClassOf, BELV.SubProcessOf],
249
+ [BELV.SubProcessOf, RDF::RDFS.subClassOf, BELV.MembershipRelationship],
250
+ # Abundances
251
+ [BELV.AbundanceActivity, RDF::RDFS.subClassOf, BELV.Process],
252
+ [BELV.BiologicalProcess, RDF::RDFS.subClassOf, BELV.Process],
253
+ [BELV.CellSecretion, RDF::RDFS.subClassOf, BELV.Translocation],
254
+ [BELV.ComplexAbundance, RDF::RDFS.subClassOf, BELV.Abundance],
255
+ [BELV.CompositeAbundance, RDF::RDFS.subClassOf, BELV.Abundance],
256
+ [BELV.Degradation, RDF::RDFS.subClassOf, BELV.Transformation],
257
+ [BELV.GeneAbundance, RDF::RDFS.subClassOf, BELV.Abundance],
258
+ [BELV.MicroRNAAbundance, RDF::RDFS.subClassOf, BELV.Abundance],
259
+ [BELV.ModifiedProteinAbundance, RDF::RDFS.subClassOf, BELV.ProteinAbundance],
260
+ [BELV.Pathology, RDF::RDFS.subClassOf, BELV.BiologicalProcess],
261
+ [BELV.Process, RDF.type, RDF::RDFS.Class],
262
+ [BELV.ProteinAbundance, RDF::RDFS.subClassOf, BELV.Abundance],
263
+ [BELV.ProteinVariantAbundance, RDF::RDFS.subClassOf, BELV.ProteinAbundance],
264
+ [BELV.Reaction, RDF::RDFS.subClassOf, BELV.Transformation],
265
+ [BELV.RNAAbundance, RDF::RDFS.subClassOf, BELV.Abundance],
266
+ [BELV.Transformation, RDF::RDFS.subClassOf, BELV.Process],
267
+ [BELV.Translocation, RDF::RDFS.subClassOf, BELV.Transformation],
268
+ # Activities
269
+ [BELV.Activity, RDF::RDFS.subClassOf, BELV.Activity],
270
+ [BELV.Catalytic, RDF::RDFS.subClassOf, BELV.Activity],
271
+ [BELV.Chaperone, RDF::RDFS.subClassOf, BELV.Activity],
272
+ [BELV.GtpBound, RDF::RDFS.subClassOf, BELV.Activity],
273
+ [BELV.Kinase, RDF::RDFS.subClassOf, BELV.Activity],
274
+ [BELV.Peptidase, RDF::RDFS.subClassOf, BELV.Activity],
275
+ [BELV.Phosphatase, RDF::RDFS.subClassOf, BELV.Activity],
276
+ [BELV.Ribosylase, RDF::RDFS.subClassOf, BELV.Activity],
277
+ [BELV.Transcription, RDF::RDFS.subClassOf, BELV.Activity],
278
+ [BELV.Transport, RDF::RDFS.subClassOf, BELV.Activity],
279
+ # Modifications
280
+ [BELV.Acetylation, RDF::RDFS.subClassOf, BELV.Modification],
281
+ [BELV.Farnesylation, RDF::RDFS.subClassOf, BELV.Modification],
282
+ [BELV.Glycosylation, RDF::RDFS.subClassOf, BELV.Modification],
283
+ [BELV.Hydroxylation, RDF::RDFS.subClassOf, BELV.Modification],
284
+ [BELV.Methylation, RDF::RDFS.subClassOf, BELV.Modification],
285
+ [BELV.Phosphorylation, RDF::RDFS.subClassOf, BELV.Modification],
286
+ [BELV.Ribosylation, RDF::RDFS.subClassOf, BELV.Modification],
287
+ [BELV.Sumoylation, RDF::RDFS.subClassOf, BELV.Modification],
288
+ [BELV.Ubiquitination, RDF::RDFS.subClassOf, BELV.Modification],
289
+ [BELV.PhosphorylationSerine, RDF::RDFS.subClassOf, BELV.Phosphorylation],
290
+ [BELV.PhosphorylationTyrosine, RDF::RDFS.subClassOf, BELV.Phosphorylation],
291
+ [BELV.PhosphorylationThreonine, RDF::RDFS.subClassOf, BELV.Phosphorylation],
292
+
293
+ # Properties
294
+ # Term
295
+ [BELV.hasActivityType, RDF.type, RDF.Property],
296
+ [BELV.hasActivityType, RDF::RDFS.range, BELV.Activity],
297
+ [BELV.hasActivityType, RDF::RDFS.domain, BELV.Term],
298
+ [BELV.hasChild, RDF.type, RDF.Property],
299
+ [BELV.hasChild, RDF::RDFS.range, BELV.Term],
300
+ [BELV.hasChild, RDF::RDFS.domain, BELV.Term],
301
+ [BELV.hasConcept, RDF.type, RDF.Property],
302
+ [BELV.hasConcept, RDF::RDFS.range, BELV.NamespaceConcept],
303
+ [BELV.hasConcept, RDF::RDFS.domain, BELV.Term],
304
+ [BELV.hasModificationPosition, RDF.type, RDF.Property],
305
+ [BELV.hasModificationPosition, RDF::RDFS.range, RDF::XSD.integer],
306
+ [BELV.hasModificationPosition, RDF::RDFS.domain, BELV.Term],
307
+ [BELV.hasModificationType, RDF.type, RDF.Property],
308
+ [BELV.hasModificationType, RDF::RDFS.range, BELV.Activity],
309
+ [BELV.hasModificationType, RDF::RDFS.domain, BELV.Term],
310
+ # Statement
311
+ [BELV.hasEvidence, RDF.type, RDF.Property],
312
+ [BELV.hasEvidence, RDF::RDFS.range, BELV.Evidence],
313
+ [BELV.hasEvidence, RDF::RDFS.domain, BELV.Statement],
314
+ [BELV.hasObject, RDF::RDFS.subPropertyOf, BELV.hasChild],
315
+ [BELV.hasObject, RDF::RDFS.range, BELV.Term],
316
+ [BELV.hasObject, RDF::RDFS.domain, BELV.Statement],
317
+ [BELV.hasRelationship, RDF.type, RDF.Property],
318
+ [BELV.hasRelationship, RDF::RDFS.range, BELV.Relationship],
319
+ [BELV.hasRelationship, RDF::RDFS.domain, BELV.Statement],
320
+ [BELV.hasSubject, RDF::RDFS.subPropertyOf, BELV.hasChild],
321
+ [BELV.hasSubject, RDF::RDFS.range, BELV.Term],
322
+ [BELV.hasSubject, RDF::RDFS.domain, BELV.Statement],
323
+ # Evidence
324
+ [BELV.hasAnnotation, RDF.type, RDF.Property],
325
+ [BELV.hasAnnotation, RDF::RDFS.range, BELV.AnnotationConcept],
326
+ [BELV.hasAnnotation, RDF::RDFS.domain, BELV.Evidence],
327
+ [BELV.hasCitation, RDF.type, RDF.Property],
328
+ [BELV.hasCitation, RDF::RDFS.domain, BELV.Evidence],
329
+ [BELV.hasEvidenceText, RDF::RDFS.range, RDF::XSD.string],
330
+ [BELV.hasEvidenceText, RDF::RDFS.domain, BELV.Evidence],
331
+ [BELV.hasStatement, RDF.type, RDF.Property],
332
+ [BELV.hasStatement, RDF::RDFS.range, BELV.Statement],
333
+ [BELV.hasStatement, RDF::RDFS.domain, BELV.Evidence]
334
+ ]
335
+ end
336
+ end
337
+ end
338
+ end
339
+ end