activerdf_sparql 1.0 → 1.1

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.
data/Rakefile CHANGED
@@ -15,7 +15,7 @@ setup_rdoc ['README', 'LICENSE', 'lib/**/*.rb', 'doc/**/*.rdoc']
15
15
  desc "Does a full compile, test run"
16
16
  task :default => [:test, :package]
17
17
 
18
- version="1.0"
18
+ version=ENV['REL']
19
19
  name="activerdf_sparql"
20
20
 
21
21
  setup_gem(name, version) do |spec|
@@ -1,8 +1,3 @@
1
- # SPARQL adapter
2
- #
3
- # Author:: Eyal Oren and Sebastian Gerke
4
- # Copyright:: (c) 2005-2006
5
- # License:: LGPL
6
1
  require 'active_rdf'
7
2
  require 'queryengine/query2sparql'
8
3
  require 'open-uri'
@@ -10,9 +5,9 @@ require 'cgi'
10
5
  require 'rexml/document'
11
6
  require "#{File.dirname(__FILE__)}/sparql_result_parser"
12
7
 
13
-
8
+ # SPARQL adapter
14
9
  class SparqlAdapter < ActiveRdfAdapter
15
- $log.info "loading SPARQL adapter"
10
+ $activerdflog.info "loading SPARQL adapter"
16
11
  ConnectionPool.register_adapter(:sparql, self)
17
12
 
18
13
  # Instantiate the connection with the SPARQL Endpoint.
@@ -30,7 +25,7 @@ class SparqlAdapter < ActiveRdfAdapter
30
25
  raise ActiveRdfError, "Result format unsupported" unless
31
26
  known_formats.include?(@result_format)
32
27
 
33
- $log.info "Sparql adapter initialised #{inspect}"
28
+ $activerdflog.info "Sparql adapter initialised #{inspect}"
34
29
  end
35
30
 
36
31
  def size
@@ -42,21 +37,24 @@ class SparqlAdapter < ActiveRdfAdapter
42
37
  def query(query, &block)
43
38
  time = Time.now
44
39
  qs = Query2SPARQL.translate(query)
45
- $log.debug "executing sparql query #{query}"
40
+ $activerdflog.debug "executing sparql query #{query}"
46
41
 
47
42
  execute_sparql_query(qs, header(query), &block)
48
43
  end
49
44
 
50
45
  # do the real work of executing the sparql query
51
46
  def execute_sparql_query(qs, header, &block)
52
- $log.debug "executing query #{qs} on url #@url"
47
+ $activerdflog.debug "executing query #{qs} on url #@url"
53
48
 
54
49
  # encoding query string in URL
55
50
  url = "#@url?query=#{CGI.escape(qs)}"
56
51
 
57
52
  # querying sparql endpoint
53
+ response = ''
58
54
  begin
59
- response = open(url, header).read
55
+ open(url, header) do |f|
56
+ response = f.read
57
+ end
60
58
  rescue OpenURI::HTTPError => e
61
59
  raise ActiveRdfError, "could not query SPARQL endpoint, server said: #{e}"
62
60
  return []
@@ -105,21 +103,15 @@ class SparqlAdapter < ActiveRdfAdapter
105
103
  results = []
106
104
  vars = parsed_object['head']['vars']
107
105
  objects = parsed_object['results']['bindings']
108
- if vars.length > 1
109
- objects.each do |obj|
110
- result = []
111
- vars.each do |v|
112
- result << create_node( obj[v]['type'], obj[v]['value'])
113
- end
114
- results << result
115
- end
116
- else
117
- objects.each do |obj|
118
- obj.each_value do |e|
119
- results << create_node(e['type'], e['value'])
120
- end
121
- end
122
- end
106
+
107
+ objects.each do |obj|
108
+ result = []
109
+ vars.each do |v|
110
+ result << create_node( obj[v]['type'], obj[v]['value'])
111
+ end
112
+ results << result
113
+ end
114
+
123
115
  results
124
116
  end
125
117
 
@@ -1,9 +1,4 @@
1
- # parser for SPARQL XML result set
2
- #
3
- # Author:: Sebastian Gerke
4
- # Copyright:: (c) 2005-2006
5
- # License:: LGPL
6
-
1
+ # Parser for SPARQL XML result set.
7
2
  class SparqlResultParser
8
3
  attr_reader :result
9
4
 
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.0
3
3
  specification_version: 1
4
4
  name: activerdf_sparql
5
5
  version: !ruby/object:Gem::Version
6
- version: "1.0"
7
- date: 2006-11-02 00:00:00 +00:00
6
+ version: "1.1"
7
+ date: 2006-12-08 00:00:00 +00:00
8
8
  summary: ActiveRDF adapter to SPARQL endpoint
9
9
  require_paths:
10
10
  - lib