activerdf_rdflite 1.4 → 1.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. data/CHANGELOG +5 -1
  2. data/doc/rdoc/classes/FetchingAdapter.html +150 -0
  3. data/doc/rdoc/classes/FetchingAdapter.src/M000015.html +36 -0
  4. data/doc/rdoc/classes/RDFLite.html +390 -0
  5. data/doc/rdoc/classes/RDFLite.src/M000001.html +55 -0
  6. data/doc/rdoc/classes/RDFLite.src/M000002.html +18 -0
  7. data/doc/rdoc/classes/RDFLite.src/M000003.html +20 -0
  8. data/doc/rdoc/classes/RDFLite.src/M000004.html +18 -0
  9. data/doc/rdoc/classes/RDFLite.src/M000005.html +45 -0
  10. data/doc/rdoc/classes/RDFLite.src/M000006.html +32 -0
  11. data/doc/rdoc/classes/RDFLite.src/M000007.html +20 -0
  12. data/doc/rdoc/classes/RDFLite.src/M000008.html +24 -0
  13. data/doc/rdoc/classes/RDFLite.src/M000009.html +36 -0
  14. data/doc/rdoc/classes/RDFLite.src/M000010.html +33 -0
  15. data/doc/rdoc/classes/RDFLite.src/M000011.html +19 -0
  16. data/doc/rdoc/classes/RDFLite.src/M000012.html +27 -0
  17. data/doc/rdoc/classes/String.html +137 -0
  18. data/doc/rdoc/classes/String.src/M000016.html +25 -0
  19. data/doc/rdoc/classes/SuggestingAdapter.html +190 -0
  20. data/doc/rdoc/classes/SuggestingAdapter.src/M000013.html +23 -0
  21. data/doc/rdoc/classes/SuggestingAdapter.src/M000014.html +46 -0
  22. data/doc/rdoc/created.rid +1 -0
  23. data/doc/rdoc/files/LICENSE.html +756 -0
  24. data/doc/rdoc/files/README.html +127 -0
  25. data/doc/rdoc/files/lib/activerdf_rdflite/fetching_rb.html +115 -0
  26. data/doc/rdoc/files/lib/activerdf_rdflite/init_rb.html +116 -0
  27. data/doc/rdoc/files/lib/activerdf_rdflite/rdflite_rb.html +127 -0
  28. data/doc/rdoc/files/lib/activerdf_rdflite/suggesting_rb.html +115 -0
  29. data/doc/rdoc/fr_class_index.html +30 -0
  30. data/doc/rdoc/fr_file_index.html +32 -0
  31. data/doc/rdoc/fr_method_index.html +42 -0
  32. data/doc/rdoc/index.html +24 -0
  33. data/doc/rdoc/rdoc-style.css +208 -0
  34. data/lib/activerdf_rdflite/rdflite.rb +27 -9
  35. data/test/test_rdflite.rb +8 -6
  36. metadata +102 -57
@@ -7,6 +7,8 @@ require 'active_rdf'
7
7
  require 'federation/connection_pool'
8
8
  require 'uuidtools'
9
9
  require 'queryengine/ntriples_parser'
10
+ require 'open-uri'
11
+ require 'mime/types'
10
12
 
11
13
  $activerdflog.info "loading RDFLite adapter"
12
14
 
@@ -93,7 +95,7 @@ class RDFLite < ActiveRdfAdapter
93
95
  # close adapter and remove it from the ConnectionPool
94
96
  def close
95
97
  ConnectionPool.remove_data_source(self)
96
- # TODO: close rdflite data source
98
+ @db.close
97
99
  end
98
100
 
99
101
  # deletes triple(s,p,o,c) from datastore
@@ -159,14 +161,30 @@ class RDFLite < ActiveRdfAdapter
159
161
  end
160
162
 
161
163
  # loads triples from file in ntriples format
162
- def load(file)
163
- ntriples = File.readlines(file)
164
- $activerdflog.debug "read #{ntriples.size} triples from file #{file}"
165
-
166
- # use filename as context
167
- context = internalise(RDFS::Resource.new("file:#{file}"))
168
-
169
- add_ntriples(ntriples, context)
164
+ def load(location)
165
+ context = if URI.parse(location).host
166
+ location
167
+ else
168
+ internalise(RDFS::Resource.new("file:#{location}"))
169
+ end
170
+
171
+ case MIME::Types.of(location)
172
+ when MIME::Types['application/rdf+xml']
173
+ # check if rapper available
174
+ begin
175
+ # can only parse rdf/xml with redland
176
+ # die otherwise
177
+ require 'rdf/redland'
178
+ model = Redland::Model.new
179
+ Redland::Parser.new.parse_into_model(model, location)
180
+ add_ntriples(model.to_string('ntriples'), location)
181
+ rescue LoadError
182
+ raise ActiveRdfError, "cannot parse remote rdf/xml file without Redland: please install Redland (librdf.org) and its Ruby bindings"
183
+ end
184
+ else
185
+ data = open(location).read
186
+ add_ntriples(data, context)
187
+ end
170
188
  end
171
189
 
172
190
  # adds ntriples from given context into datastore
data/test/test_rdflite.rb CHANGED
@@ -19,8 +19,6 @@ class TestRdfLiteAdapter < Test::Unit::TestCase
19
19
  def test_registration
20
20
  adapter = ConnectionPool.add_data_source(:type => :rdflite)
21
21
  assert_instance_of RDFLite, adapter
22
- # we cant garantuee that the rdflite adapter can do keyword search
23
- # assert adapter.keyword_search?
24
22
  end
25
23
 
26
24
  def test_initialise
@@ -28,10 +26,6 @@ class TestRdfLiteAdapter < Test::Unit::TestCase
28
26
  assert !adapter.keyword_search?
29
27
  end
30
28
 
31
- def test_initialise_with_user_params
32
- #TODO: FIXME
33
- end
34
-
35
29
  def test_duplicate_registration
36
30
  adapter1 = ConnectionPool.add_data_source(:type => :rdflite)
37
31
  adapter2 = ConnectionPool.add_data_source(:type => :rdflite)
@@ -122,6 +116,14 @@ class TestRdfLiteAdapter < Test::Unit::TestCase
122
116
  adapter = ConnectionPool.add_data_source :type => :rdflite
123
117
  adapter.load(File.dirname(File.expand_path(__FILE__)) + '/test_data.nt')
124
118
  assert_equal 32, adapter.size
119
+
120
+ adapter.clear
121
+ adapter.load('http://www.w3.org/2000/10/rdf-tests/rdfcore/ntriples/test.nt')
122
+ assert_equal 30, adapter.size
123
+
124
+ adapter.clear
125
+ adapter.load('http://www.w3.org/2000/10/rdf-tests/rdfcore/testSchema.rdf')
126
+ assert_equal 76, adapter.size
125
127
  end
126
128
 
127
129
  def test_load_bnodes
metadata CHANGED
@@ -1,88 +1,133 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
+ rubygems_version: 0.9.4
3
+ specification_version: 1
4
+ name: activerdf_rdflite
5
+ version: !ruby/object:Gem::Version
6
+ version: 1.4.1
7
+ date: 2007-11-01 00:00:00 +00:00
8
+ summary: an RDF database for usage in ActiveRDF (based on sqlite3)
9
+ require_paths:
10
+ - lib
11
+ email:
2
12
  homepage:
3
- extensions: []
4
- executables: []
5
- version: !ruby/object:Gem::Version
6
- version: !str 1.4
13
+ rubyforge_project:
14
+ description: an RDF database for usage in ActiveRDF (based on sqlite3)
15
+ autorequire:
16
+ default_executable:
17
+ bindir: bin
18
+ has_rdoc: true
19
+ required_ruby_version: !ruby/object:Gem::Version::Requirement
20
+ requirements:
21
+ - - ">"
22
+ - !ruby/object:Gem::Version
23
+ version: 0.0.0
24
+ version:
25
+ platform: ruby
26
+ signing_key:
27
+ cert_chain:
7
28
  post_install_message:
8
- date: 2007-09-01 22:00:00 +00:00
29
+ authors:
30
+ - Eyal Oren <eyal.oren@deri.org
9
31
  files:
10
32
  - LICENSE
11
33
  - README
12
34
  - CHANGELOG
13
- - test/test_bnode_data.nt
35
+ - doc/rdoc/classes
36
+ - doc/rdoc/classes/FetchingAdapter.src
37
+ - doc/rdoc/classes/FetchingAdapter.src/M000015.html
38
+ - doc/rdoc/classes/RDFLite.src
39
+ - doc/rdoc/classes/RDFLite.src/M000001.html
40
+ - doc/rdoc/classes/RDFLite.src/M000002.html
41
+ - doc/rdoc/classes/RDFLite.src/M000003.html
42
+ - doc/rdoc/classes/RDFLite.src/M000004.html
43
+ - doc/rdoc/classes/RDFLite.src/M000005.html
44
+ - doc/rdoc/classes/RDFLite.src/M000006.html
45
+ - doc/rdoc/classes/RDFLite.src/M000007.html
46
+ - doc/rdoc/classes/RDFLite.src/M000008.html
47
+ - doc/rdoc/classes/RDFLite.src/M000009.html
48
+ - doc/rdoc/classes/RDFLite.src/M000010.html
49
+ - doc/rdoc/classes/RDFLite.src/M000011.html
50
+ - doc/rdoc/classes/RDFLite.src/M000012.html
51
+ - doc/rdoc/classes/String.src
52
+ - doc/rdoc/classes/String.src/M000016.html
53
+ - doc/rdoc/classes/SuggestingAdapter.src
54
+ - doc/rdoc/classes/SuggestingAdapter.src/M000013.html
55
+ - doc/rdoc/classes/SuggestingAdapter.src/M000014.html
56
+ - doc/rdoc/classes/FetchingAdapter.html
57
+ - doc/rdoc/classes/RDFLite.html
58
+ - doc/rdoc/classes/String.html
59
+ - doc/rdoc/classes/SuggestingAdapter.html
60
+ - doc/rdoc/files
61
+ - doc/rdoc/files/lib
62
+ - doc/rdoc/files/lib/activerdf_rdflite
63
+ - doc/rdoc/files/lib/activerdf_rdflite/fetching_rb.html
64
+ - doc/rdoc/files/lib/activerdf_rdflite/init_rb.html
65
+ - doc/rdoc/files/lib/activerdf_rdflite/rdflite_rb.html
66
+ - doc/rdoc/files/lib/activerdf_rdflite/suggesting_rb.html
67
+ - doc/rdoc/files/LICENSE.html
68
+ - doc/rdoc/files/README.html
69
+ - doc/rdoc/created.rid
70
+ - doc/rdoc/fr_class_index.html
71
+ - doc/rdoc/fr_file_index.html
72
+ - doc/rdoc/fr_method_index.html
73
+ - doc/rdoc/index.html
74
+ - doc/rdoc/rdoc-style.css
14
75
  - test/test_data.nt
76
+ - test/test_rdflite.rb
15
77
  - test/test_escaped_data.nt
16
78
  - test/test_fetching.rb
17
- - test/test_rdflite.rb
79
+ - test/test_bnode_data.nt
18
80
  - lib/activerdf_rdflite
81
+ - lib/activerdf_rdflite/rdflite.rb
19
82
  - lib/activerdf_rdflite/fetching.rb
20
83
  - lib/activerdf_rdflite/init.rb
21
- - lib/activerdf_rdflite/rdflite.rb
22
84
  - lib/activerdf_rdflite/suggesting.rb
23
- rubygems_version: 0.9.4
24
- rdoc_options: []
25
- signing_key:
26
- cert_chain:
27
- name: activerdf_rdflite
28
- has_rdoc: true
29
- platform: ruby
30
- summary: an RDF database for usage in ActiveRDF (based on sqlite3)
31
- default_executable:
32
- bindir: bin
33
- required_ruby_version: !ruby/object:Gem::Version::Requirement
34
- version:
35
- requirements:
36
- - - '>'
37
- - !ruby/object:Gem::Version
38
- version: 0.0.0
39
- require_paths:
40
- - lib
41
- specification_version: 1
42
85
  test_files: []
86
+
87
+ rdoc_options: []
88
+
89
+ extra_rdoc_files:
90
+ - README
91
+ executables: []
92
+
93
+ extensions: []
94
+
95
+ requirements: []
96
+
43
97
  dependencies:
44
- - !ruby/object:Gem::Dependency
98
+ - !ruby/object:Gem::Dependency
45
99
  name: gem_plugin
46
100
  version_requirement:
47
- version_requirements: !ruby/object:Gem::Version::Requirement
48
- version:
101
+ version_requirements: !ruby/object:Gem::Version::Requirement
49
102
  requirements:
50
- - - '>='
51
- - !ruby/object:Gem::Version
103
+ - - ">="
104
+ - !ruby/object:Gem::Version
52
105
  version: 0.2.1
53
- - !ruby/object:Gem::Dependency
106
+ version:
107
+ - !ruby/object:Gem::Dependency
54
108
  name: uuidtools
55
109
  version_requirement:
56
- version_requirements: !ruby/object:Gem::Version::Requirement
57
- version:
110
+ version_requirements: !ruby/object:Gem::Version::Requirement
58
111
  requirements:
59
- - - '>'
60
- - !ruby/object:Gem::Version
112
+ - - ">"
113
+ - !ruby/object:Gem::Version
61
114
  version: 0.0.0
62
- - !ruby/object:Gem::Dependency
115
+ version:
116
+ - !ruby/object:Gem::Dependency
63
117
  name: activerdf
64
118
  version_requirement:
65
- version_requirements: !ruby/object:Gem::Version::Requirement
66
- version:
119
+ version_requirements: !ruby/object:Gem::Version::Requirement
67
120
  requirements:
68
- - - '>='
69
- - !ruby/object:Gem::Version
121
+ - - ">="
122
+ - !ruby/object:Gem::Version
70
123
  version: 1.6.4
71
- - !ruby/object:Gem::Dependency
124
+ version:
125
+ - !ruby/object:Gem::Dependency
72
126
  name: sqlite3-ruby
73
127
  version_requirement:
74
- version_requirements: !ruby/object:Gem::Version::Requirement
75
- version:
128
+ version_requirements: !ruby/object:Gem::Version::Requirement
76
129
  requirements:
77
- - - '>='
78
- - !ruby/object:Gem::Version
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
79
132
  version: 1.2.1
80
- description: an RDF database for usage in ActiveRDF (based on sqlite3)
81
- authors:
82
- - Eyal Oren <eyal.oren@deri.org
83
- email:
84
- extra_rdoc_files:
85
- - README
86
- requirements: []
87
- rubyforge_project:
88
- autorequire:
133
+ version: