biointerchange 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +49 -4
- data/VERSION +1 -1
- data/examples/chromosome_BF.gff +1701 -0
- data/examples/estd176_Banerjee_et_al_2011.2012-11-29.NCBI36.gvf +4326 -0
- data/examples/pubannotation.10096561.json +1 -0
- data/examples/{pubannotation.json → pubannotation.10096561.json.old} +0 -0
- data/examples/pubannotation.2626671.json +1 -0
- data/lib/biointerchange/core.rb +58 -16
- data/lib/biointerchange/genomics/gff3_feature.rb +1 -0
- data/lib/biointerchange/genomics/gff3_feature_set.rb +31 -1
- data/lib/biointerchange/genomics/gff3_pragmas.rb +35 -0
- data/lib/biointerchange/genomics/gff3_rdf_ntriples.rb +60 -23
- data/lib/biointerchange/genomics/gff3_reader.rb +74 -40
- data/lib/biointerchange/genomics/gvf_feature.rb +24 -0
- data/lib/biointerchange/genomics/gvf_feature_set.rb +14 -0
- data/lib/biointerchange/genomics/gvf_pragmas.rb +6 -0
- data/lib/biointerchange/genomics/gvf_reader.rb +37 -0
- data/lib/biointerchange/gff3o.rb +1 -1
- data/lib/biointerchange/gvf1o.rb +145 -17
- data/lib/biointerchange/textmining/content.rb +1 -0
- data/lib/biointerchange/textmining/content_connection.rb +74 -0
- data/lib/biointerchange/textmining/document.rb +3 -1
- data/lib/biointerchange/textmining/pubannos_json_reader.rb +87 -9
- data/lib/biointerchange/textmining/text_mining_rdf_ntriples.rb +58 -2
- data/spec/gff3_rdfwriter_spec.rb +9 -1
- data/spec/gvf_rdfwriter_spec.rb +81 -0
- data/spec/text_mining_pubannos_json_reader_spec.rb +82 -10
- data/spec/text_mining_rdfwriter_spec.rb +11 -0
- data/web/api.html +30 -23
- metadata +156 -138
data/web/api.html
CHANGED
@@ -71,16 +71,43 @@
|
|
71
71
|
<h2>Application Programming Interface</h2>
|
72
72
|
<p>BioInterchange offers Application Programming Interfaces (APIs) for multiple programming languages, but only Ruby is supporting the full range of functinality that BioInterchange provides. For Python and Java, a subset of the Ruby API is available: vocabulary wrappers for convenient access to ontologies used in BioInterchange.</p>
|
73
73
|
<h3>Ruby API</h3>
|
74
|
+
<p>The Ruby API — including vocabulary wrapper classes — are available via <a href="http://rubygems.org/gems/biointerchange">RubyGems</a>:</p>
|
75
|
+
<pre>
|
76
|
+
sudo gem install biointerchange
|
77
|
+
</pre>
|
74
78
|
<h4>The BioInterchange Framework</h4>
|
75
79
|
<em>TODO... sorry.</em>
|
76
80
|
<h4>Vocabulary Wrappers</h4>
|
81
|
+
<p>Usage example (see also <a href="https://github.com/BioInterchange/BioInterchange/blob/master/examples/vocabulary.rb">vocabulary.rb</a>):</p>
|
82
|
+
<pre>
|
83
|
+
require 'rubygems'
|
84
|
+
require 'biointerchange'
|
77
85
|
|
86
|
+
include BioInterchange
|
87
|
+
|
88
|
+
# Get the URI of an ontology term by label:
|
89
|
+
GFF3O.seqid()
|
90
|
+
|
91
|
+
# Ambiguous labels will return an array of URIs:
|
92
|
+
# "start" can refer to a sub-property of "feature_properties" or "target_properties"
|
93
|
+
GFF3O.start()
|
94
|
+
# "feature_properties" can be either a datatype or object property
|
95
|
+
GFF3O.feature_properties()
|
96
|
+
|
97
|
+
# Use build-in method "is_datatype_property" to resolve ambiguity:
|
98
|
+
# (Note: there is exactly one item in the result set, so the selection of the first item is acceptable.)
|
99
|
+
feature_properties = GFF3O.feature_properties().select { |uri| GFF3O.is_datatype_property(uri) }[0]
|
100
|
+
|
101
|
+
# Use build-in method "with_parent" to pick properties based on their context:
|
102
|
+
GFF3O.with_parent(GFF3O.start(), feature_properties)
|
103
|
+
</pre>
|
78
104
|
<h3>Python API</h3>
|
105
|
+
<p>Vocabulary wrappers in Python are available as an egg, that can be installed via <a href="http://pypi.python.org/pypi/setuptools">easy_install</a>:</p>
|
79
106
|
<pre>
|
80
107
|
sudo easy_install rdflib
|
81
108
|
sudo easy_install http://www.biointerchange.org/eggs/biointerchange-0.1.2-py2.7.egg
|
82
109
|
</pre>
|
83
|
-
Usage example (see also <a href="https://github.com/BioInterchange/BioInterchange/blob/master/supplemental/python/example.py">example.py</a>)
|
110
|
+
<p>Usage example (see also <a href="https://github.com/BioInterchange/BioInterchange/blob/master/supplemental/python/example.py">example.py</a>):</p>
|
84
111
|
<pre>
|
85
112
|
import biointerchange
|
86
113
|
from biointerchange import *
|
@@ -102,6 +129,7 @@ feature_properties = filter(lambda uri: GFF3O.is_datatype_property(uri), GFF3O.f
|
|
102
129
|
GFF3O.with_parent(GFF3O.start(), feature_properties)
|
103
130
|
</pre>
|
104
131
|
<h3>Java API</h3>
|
132
|
+
<p>Vocabulary wrappers in Java are available as a Maven artifact. Add the following repository and dependency setting to your Project Object Model (POM) file:</p>
|
105
133
|
<pre>
|
106
134
|
<repositories>
|
107
135
|
<repository>
|
@@ -119,7 +147,7 @@ GFF3O.with_parent(GFF3O.start(), feature_properties)
|
|
119
147
|
</dependency>
|
120
148
|
</dependencies>
|
121
149
|
</pre>
|
122
|
-
Usage example (see also <a href="https://github.com/BioInterchange/BioInterchange/blob/master/supplemental/java/biointerchange/src/main/java/org/biointerchange/App.java">App.java</a>)
|
150
|
+
<p>Usage example (see also <a href="https://github.com/BioInterchange/BioInterchange/blob/master/supplemental/java/biointerchange/src/main/java/org/biointerchange/App.java">App.java</a>):</p>
|
123
151
|
<pre>
|
124
152
|
package org.biointerchange;
|
125
153
|
|
@@ -180,27 +208,6 @@ public class App
|
|
180
208
|
}
|
181
209
|
}
|
182
210
|
</pre>
|
183
|
-
<h3>BioInterchange Ontologies</h3>
|
184
|
-
Ontologies specifically designed and implemented for BioInterchange are available via their <a href="http://biointerchange.github.com/Ontologies">GitHub project pages</a>.
|
185
|
-
<h4>Generic Feature Format Version 3 Ontology</h4>
|
186
|
-
<p>The Generic Feature Format Version 3 Ontology (GFF3O) has been closely modelled on the <a href="http://www.sequenceontology.org/resources/gff3.html">Generic Feature Format Version 3</a> (GFF3) specification.</p>
|
187
|
-
<p><i>A more detailed description has yet to be written...</i></p>
|
188
|
-
<ul>
|
189
|
-
<li><a href="http://biointerchange.github.com/Ontologies">Generic Feature Format Version 3 Ontology</a> (GFF3O)</li>
|
190
|
-
</ul>
|
191
|
-
<h4>Genome Variation Format Version 1 Ontology</h4>
|
192
|
-
<p>The Genome Variation Format Version 1 Ontology (GVF1O) has been closely modelled on the <a href="http://www.sequenceontology.org/resources/gvf.html">Genomic Variation Format</a> (GVF) specification.</p>
|
193
|
-
<p><i>A more detailed description has yet to be written...</i></p>
|
194
|
-
<ul>
|
195
|
-
<li><a href="http://biointerchange.github.com/Ontologies">Genome Variation Format Version 1 Ontology</a> (GVF1O)</li>
|
196
|
-
</ul>
|
197
|
-
<h3>External Ontologies</h3>
|
198
|
-
<ul>
|
199
|
-
<li><a href="http://xmlns.com/foaf/spec">Friend of a Friend</a> (FOAF)</li>
|
200
|
-
<li><a href="http://code.google.com/p/semanticscience/wiki/SIO">Semanticscience Integrated Ontology</a> (SIO)</li>
|
201
|
-
</ul>
|
202
|
-
</div>
|
203
|
-
</div>
|
204
211
|
|
205
212
|
<hr>
|
206
213
|
|
metadata
CHANGED
@@ -1,14 +1,10 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: biointerchange
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
|
6
|
-
- 0
|
7
|
-
- 1
|
8
|
-
- 2
|
9
|
-
version: 0.1.2
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.3
|
5
|
+
prerelease:
|
10
6
|
platform: ruby
|
11
|
-
authors:
|
7
|
+
authors:
|
12
8
|
- Joachim Baran
|
13
9
|
- Kevin B. Cohen
|
14
10
|
- Geraint Duck
|
@@ -17,146 +13,162 @@ authors:
|
|
17
13
|
autorequire:
|
18
14
|
bindir: bin
|
19
15
|
cert_chain: []
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
dependencies:
|
24
|
-
- !ruby/object:Gem::Dependency
|
16
|
+
date: 2013-01-05 00:00:00.000000000 Z
|
17
|
+
dependencies:
|
18
|
+
- !ruby/object:Gem::Dependency
|
25
19
|
name: rdf
|
26
|
-
|
27
|
-
|
28
|
-
requirements:
|
29
|
-
- -
|
30
|
-
- !ruby/object:Gem::Version
|
31
|
-
segments:
|
32
|
-
- 0
|
33
|
-
- 3
|
34
|
-
- 4
|
35
|
-
- 1
|
20
|
+
requirement: !ruby/object:Gem::Requirement
|
21
|
+
none: false
|
22
|
+
requirements:
|
23
|
+
- - ! '>='
|
24
|
+
- !ruby/object:Gem::Version
|
36
25
|
version: 0.3.4.1
|
37
26
|
type: :runtime
|
38
|
-
version_requirements: *id001
|
39
|
-
- !ruby/object:Gem::Dependency
|
40
|
-
name: json
|
41
27
|
prerelease: false
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
28
|
+
version_requirements: !ruby/object:Gem::Requirement
|
29
|
+
none: false
|
30
|
+
requirements:
|
31
|
+
- - ! '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.3.4.1
|
34
|
+
- !ruby/object:Gem::Dependency
|
35
|
+
name: json
|
36
|
+
requirement: !ruby/object:Gem::Requirement
|
37
|
+
none: false
|
38
|
+
requirements:
|
39
|
+
- - ! '>='
|
40
|
+
- !ruby/object:Gem::Version
|
50
41
|
version: 1.6.4
|
51
42
|
type: :runtime
|
52
|
-
version_requirements: *id002
|
53
|
-
- !ruby/object:Gem::Dependency
|
54
|
-
name: getopt
|
55
43
|
prerelease: false
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
44
|
+
version_requirements: !ruby/object:Gem::Requirement
|
45
|
+
none: false
|
46
|
+
requirements:
|
47
|
+
- - ! '>='
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: 1.6.4
|
50
|
+
- !ruby/object:Gem::Dependency
|
51
|
+
name: getopt
|
52
|
+
requirement: !ruby/object:Gem::Requirement
|
53
|
+
none: false
|
54
|
+
requirements:
|
55
|
+
- - ! '>='
|
56
|
+
- !ruby/object:Gem::Version
|
64
57
|
version: 1.4.1
|
65
58
|
type: :runtime
|
66
|
-
version_requirements: *id003
|
67
|
-
- !ruby/object:Gem::Dependency
|
68
|
-
name: addressable
|
69
59
|
prerelease: false
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
60
|
+
version_requirements: !ruby/object:Gem::Requirement
|
61
|
+
none: false
|
62
|
+
requirements:
|
63
|
+
- - ! '>='
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: 1.4.1
|
66
|
+
- !ruby/object:Gem::Dependency
|
67
|
+
name: addressable
|
68
|
+
requirement: !ruby/object:Gem::Requirement
|
69
|
+
none: false
|
70
|
+
requirements:
|
71
|
+
- - ! '>='
|
72
|
+
- !ruby/object:Gem::Version
|
78
73
|
version: 2.3.2
|
79
74
|
type: :runtime
|
80
|
-
version_requirements: *id004
|
81
|
-
- !ruby/object:Gem::Dependency
|
82
|
-
name: rspec
|
83
75
|
prerelease: false
|
84
|
-
|
85
|
-
|
76
|
+
version_requirements: !ruby/object:Gem::Requirement
|
77
|
+
none: false
|
78
|
+
requirements:
|
79
|
+
- - ! '>='
|
80
|
+
- !ruby/object:Gem::Version
|
81
|
+
version: 2.3.2
|
82
|
+
- !ruby/object:Gem::Dependency
|
83
|
+
name: rspec
|
84
|
+
requirement: !ruby/object:Gem::Requirement
|
85
|
+
none: false
|
86
|
+
requirements:
|
86
87
|
- - ~>
|
87
|
-
- !ruby/object:Gem::Version
|
88
|
-
segments:
|
89
|
-
- 2
|
90
|
-
- 8
|
91
|
-
- 0
|
88
|
+
- !ruby/object:Gem::Version
|
92
89
|
version: 2.8.0
|
93
90
|
type: :development
|
94
|
-
version_requirements: *id005
|
95
|
-
- !ruby/object:Gem::Dependency
|
96
|
-
name: bundler
|
97
91
|
prerelease: false
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
none: false
|
94
|
+
requirements:
|
95
|
+
- - ~>
|
96
|
+
- !ruby/object:Gem::Version
|
97
|
+
version: 2.8.0
|
98
|
+
- !ruby/object:Gem::Dependency
|
99
|
+
name: bundler
|
100
|
+
requirement: !ruby/object:Gem::Requirement
|
101
|
+
none: false
|
102
|
+
requirements:
|
103
|
+
- - ! '>='
|
104
|
+
- !ruby/object:Gem::Version
|
106
105
|
version: 1.1.5
|
107
106
|
type: :development
|
108
|
-
version_requirements: *id006
|
109
|
-
- !ruby/object:Gem::Dependency
|
110
|
-
name: jeweler
|
111
107
|
prerelease: false
|
112
|
-
|
113
|
-
|
108
|
+
version_requirements: !ruby/object:Gem::Requirement
|
109
|
+
none: false
|
110
|
+
requirements:
|
111
|
+
- - ! '>='
|
112
|
+
- !ruby/object:Gem::Version
|
113
|
+
version: 1.1.5
|
114
|
+
- !ruby/object:Gem::Dependency
|
115
|
+
name: jeweler
|
116
|
+
requirement: !ruby/object:Gem::Requirement
|
117
|
+
none: false
|
118
|
+
requirements:
|
114
119
|
- - ~>
|
115
|
-
- !ruby/object:Gem::Version
|
116
|
-
segments:
|
117
|
-
- 1
|
118
|
-
- 8
|
119
|
-
- 4
|
120
|
+
- !ruby/object:Gem::Version
|
120
121
|
version: 1.8.4
|
121
122
|
type: :development
|
122
|
-
version_requirements: *id007
|
123
|
-
- !ruby/object:Gem::Dependency
|
124
|
-
name: bio
|
125
123
|
prerelease: false
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
124
|
+
version_requirements: !ruby/object:Gem::Requirement
|
125
|
+
none: false
|
126
|
+
requirements:
|
127
|
+
- - ~>
|
128
|
+
- !ruby/object:Gem::Version
|
129
|
+
version: 1.8.4
|
130
|
+
- !ruby/object:Gem::Dependency
|
131
|
+
name: bio
|
132
|
+
requirement: !ruby/object:Gem::Requirement
|
133
|
+
none: false
|
134
|
+
requirements:
|
135
|
+
- - ! '>='
|
136
|
+
- !ruby/object:Gem::Version
|
134
137
|
version: 1.4.2
|
135
138
|
type: :development
|
136
|
-
version_requirements: *id008
|
137
|
-
- !ruby/object:Gem::Dependency
|
138
|
-
name: rdoc
|
139
139
|
prerelease: false
|
140
|
-
|
141
|
-
|
140
|
+
version_requirements: !ruby/object:Gem::Requirement
|
141
|
+
none: false
|
142
|
+
requirements:
|
143
|
+
- - ! '>='
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: 1.4.2
|
146
|
+
- !ruby/object:Gem::Dependency
|
147
|
+
name: rdoc
|
148
|
+
requirement: !ruby/object:Gem::Requirement
|
149
|
+
none: false
|
150
|
+
requirements:
|
142
151
|
- - ~>
|
143
|
-
- !ruby/object:Gem::Version
|
144
|
-
|
145
|
-
- 3
|
146
|
-
- 12
|
147
|
-
version: "3.12"
|
152
|
+
- !ruby/object:Gem::Version
|
153
|
+
version: '3.12'
|
148
154
|
type: :development
|
149
|
-
|
150
|
-
|
155
|
+
prerelease: false
|
156
|
+
version_requirements: !ruby/object:Gem::Requirement
|
157
|
+
none: false
|
158
|
+
requirements:
|
159
|
+
- - ~>
|
160
|
+
- !ruby/object:Gem::Version
|
161
|
+
version: '3.12'
|
162
|
+
description: BioInterchange is a Ruby gem, command-line tool, web-service for turning
|
163
|
+
heterogeneous data formats such as JSON, XML, GFF3, etc., into RDF."
|
151
164
|
email: joachim.baran@gmail.com
|
152
|
-
executables:
|
165
|
+
executables:
|
153
166
|
- biointerchange
|
154
167
|
extensions: []
|
155
|
-
|
156
|
-
extra_rdoc_files:
|
168
|
+
extra_rdoc_files:
|
157
169
|
- LICENSE.txt
|
158
170
|
- README.md
|
159
|
-
files:
|
171
|
+
files:
|
160
172
|
- .document
|
161
173
|
- .rspec
|
162
174
|
- .travis.yml
|
@@ -167,8 +179,12 @@ files:
|
|
167
179
|
- VERSION
|
168
180
|
- bin/biointerchange
|
169
181
|
- examples/BovineGenomeChrX.gff3.gz
|
182
|
+
- examples/chromosome_BF.gff
|
183
|
+
- examples/estd176_Banerjee_et_al_2011.2012-11-29.NCBI36.gvf
|
170
184
|
- examples/gb-2007-8-3-R40.xml
|
171
|
-
- examples/pubannotation.json
|
185
|
+
- examples/pubannotation.10096561.json
|
186
|
+
- examples/pubannotation.10096561.json.old
|
187
|
+
- examples/pubannotation.2626671.json
|
172
188
|
- examples/vocabulary.rb
|
173
189
|
- generators/javaify.rb
|
174
190
|
- generators/pythonify.rb
|
@@ -178,8 +194,13 @@ files:
|
|
178
194
|
- lib/biointerchange/exceptions.rb
|
179
195
|
- lib/biointerchange/genomics/gff3_feature.rb
|
180
196
|
- lib/biointerchange/genomics/gff3_feature_set.rb
|
197
|
+
- lib/biointerchange/genomics/gff3_pragmas.rb
|
181
198
|
- lib/biointerchange/genomics/gff3_rdf_ntriples.rb
|
182
199
|
- lib/biointerchange/genomics/gff3_reader.rb
|
200
|
+
- lib/biointerchange/genomics/gvf_feature.rb
|
201
|
+
- lib/biointerchange/genomics/gvf_feature_set.rb
|
202
|
+
- lib/biointerchange/genomics/gvf_pragmas.rb
|
203
|
+
- lib/biointerchange/genomics/gvf_reader.rb
|
183
204
|
- lib/biointerchange/gff3o.rb
|
184
205
|
- lib/biointerchange/gvf1o.rb
|
185
206
|
- lib/biointerchange/reader.rb
|
@@ -187,6 +208,7 @@ files:
|
|
187
208
|
- lib/biointerchange/sio.rb
|
188
209
|
- lib/biointerchange/sofa.rb
|
189
210
|
- lib/biointerchange/textmining/content.rb
|
211
|
+
- lib/biointerchange/textmining/content_connection.rb
|
190
212
|
- lib/biointerchange/textmining/document.rb
|
191
213
|
- lib/biointerchange/textmining/pdfx_xml_reader.rb
|
192
214
|
- lib/biointerchange/textmining/process.rb
|
@@ -196,6 +218,7 @@ files:
|
|
196
218
|
- lib/biointerchange/writer.rb
|
197
219
|
- spec/exceptions_spec.rb
|
198
220
|
- spec/gff3_rdfwriter_spec.rb
|
221
|
+
- spec/gvf_rdfwriter_spec.rb
|
199
222
|
- spec/text_mining_pdfx_xml_reader_spec.rb
|
200
223
|
- spec/text_mining_pubannos_json_reader_spec.rb
|
201
224
|
- spec/text_mining_rdfwriter_spec.rb
|
@@ -233,35 +256,30 @@ files:
|
|
233
256
|
- web/ontologies.html
|
234
257
|
- web/service/rdfizer.fcgi
|
235
258
|
- web/webservices.html
|
236
|
-
has_rdoc: true
|
237
259
|
homepage: http://www.biointerchange.org
|
238
|
-
licenses:
|
260
|
+
licenses:
|
239
261
|
- MIT
|
240
262
|
post_install_message:
|
241
263
|
rdoc_options: []
|
242
|
-
|
243
|
-
require_paths:
|
264
|
+
require_paths:
|
244
265
|
- lib
|
245
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
requirements:
|
254
|
-
- -
|
255
|
-
- !ruby/object:Gem::Version
|
256
|
-
|
257
|
-
- 0
|
258
|
-
version: "0"
|
266
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
267
|
+
none: false
|
268
|
+
requirements:
|
269
|
+
- - ! '>='
|
270
|
+
- !ruby/object:Gem::Version
|
271
|
+
version: '0'
|
272
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
273
|
+
none: false
|
274
|
+
requirements:
|
275
|
+
- - ! '>='
|
276
|
+
- !ruby/object:Gem::Version
|
277
|
+
version: '0'
|
259
278
|
requirements: []
|
260
|
-
|
261
279
|
rubyforge_project:
|
262
|
-
rubygems_version: 1.
|
280
|
+
rubygems_version: 1.8.23
|
263
281
|
signing_key:
|
264
282
|
specification_version: 3
|
265
|
-
summary: An open source framework for transforming heterogeneous data formats into
|
283
|
+
summary: An open source framework for transforming heterogeneous data formats into
|
284
|
+
RDF.
|
266
285
|
test_files: []
|
267
|
-
|