gimme_wikidata 0.4.2
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.
- checksums.yaml +7 -0
- data/.gitignore +18 -0
- data/.travis.yml +4 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +21 -0
- data/README.md +138 -0
- data/Rakefile +15 -0
- data/bin/console +16 -0
- data/bin/setup +7 -0
- data/gimme_wikidata.gemspec +48 -0
- data/img/gimme_wikidata_logo.png +0 -0
- data/lib/gimme_wikidata.rb +143 -0
- data/lib/gimme_wikidata/claim.rb +65 -0
- data/lib/gimme_wikidata/entity.rb +157 -0
- data/lib/gimme_wikidata/entity_result.rb +37 -0
- data/lib/gimme_wikidata/enums.rb +61 -0
- data/lib/gimme_wikidata/extensions.rb +42 -0
- data/lib/gimme_wikidata/item.rb +18 -0
- data/lib/gimme_wikidata/parser.rb +211 -0
- data/lib/gimme_wikidata/printer.rb +29 -0
- data/lib/gimme_wikidata/property.rb +18 -0
- data/lib/gimme_wikidata/search.rb +55 -0
- data/lib/gimme_wikidata/version.rb +3 -0
- data/lib/gimme_wikidata/wikidata_api.rb +123 -0
- metadata +384 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
module GimmeWikidata
|
|
2
|
+
require 'colorize'
|
|
3
|
+
|
|
4
|
+
class Entity
|
|
5
|
+
##
|
|
6
|
+
# Prints a pretty version of the Entity to console
|
|
7
|
+
def print(colour = :blue)
|
|
8
|
+
heading = "#{label} (#{id})"
|
|
9
|
+
puts '=' * heading.length
|
|
10
|
+
puts "#{label} (#{id})".bold.colorize(background: colour)
|
|
11
|
+
puts '=' * heading.length
|
|
12
|
+
puts "Description\t".bold + @description
|
|
13
|
+
puts "Aliases\t\t".bold + @aliases.join(', ')
|
|
14
|
+
puts "Claims:".underline
|
|
15
|
+
claims.each {|sc| sc.print }
|
|
16
|
+
return nil
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
class Claim
|
|
21
|
+
##
|
|
22
|
+
# Prints a pretty version of the Claim to the console
|
|
23
|
+
def print(colour = :blue)
|
|
24
|
+
simple = simplify
|
|
25
|
+
puts "#{simple[:property]}: ".bold.colorize(color: colour) + "#{simple[:value].to_s}"
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
require 'gimme_wikidata/entity'
|
|
2
|
+
|
|
3
|
+
module GimmeWikidata
|
|
4
|
+
|
|
5
|
+
##
|
|
6
|
+
# Models an Property on Wikidata, which is a kind of Entity
|
|
7
|
+
#
|
|
8
|
+
# Please see: https://www.wikidata.org/wiki/Wikidata:Glossary#Entities.2C_items.2C_properties_and_queries for more details
|
|
9
|
+
class Property < Entity
|
|
10
|
+
|
|
11
|
+
def initialize(id, label = nil, description = nil, aliases = nil, claims = [])
|
|
12
|
+
throw ArgumentError.new "Invalid Wikidata Property id: #{id}" unless GimmeWikidata.valid_id?(id, [:property])
|
|
13
|
+
super(id, label, description, aliases, claims)
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
end
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
module GimmeWikidata
|
|
2
|
+
|
|
3
|
+
##
|
|
4
|
+
# TODO: DOCUMENT THIS CLASS
|
|
5
|
+
class Search
|
|
6
|
+
|
|
7
|
+
attr_reader :search_term, :success, :error
|
|
8
|
+
attr_accessor :results
|
|
9
|
+
|
|
10
|
+
def initialize(success, error, search_term, results = [])
|
|
11
|
+
@search_term = search_term
|
|
12
|
+
@success = (success == 1)
|
|
13
|
+
@results = results
|
|
14
|
+
@error = error
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def was_successful?
|
|
18
|
+
@success
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def empty?
|
|
22
|
+
results.empty?
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def top_result
|
|
26
|
+
@results.first
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
##
|
|
32
|
+
# TODO: DOCUMENT THIS CLASS
|
|
33
|
+
class SearchResult
|
|
34
|
+
|
|
35
|
+
attr_accessor :id, :type, :label, :description
|
|
36
|
+
|
|
37
|
+
def initialize(id, label, description)
|
|
38
|
+
@id = id
|
|
39
|
+
@label = label
|
|
40
|
+
@description = description
|
|
41
|
+
|
|
42
|
+
case @id[0]
|
|
43
|
+
when 'Q'
|
|
44
|
+
@type = Item
|
|
45
|
+
when 'P'
|
|
46
|
+
@type = Property
|
|
47
|
+
else
|
|
48
|
+
@type = :unknown_type
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
end
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
require 'httparty'
|
|
2
|
+
require 'gimme_wikidata/entity'
|
|
3
|
+
require 'gimme_wikidata/enums'
|
|
4
|
+
|
|
5
|
+
module GimmeWikidata
|
|
6
|
+
|
|
7
|
+
##
|
|
8
|
+
# Responsible for communication with the Wikidata API.
|
|
9
|
+
#
|
|
10
|
+
# Handles the language and formatting of API calls, and the making of calls.
|
|
11
|
+
#
|
|
12
|
+
# Not responsible for making sense of the responses; for that, see Parser.
|
|
13
|
+
#
|
|
14
|
+
# Currently supported API actions:
|
|
15
|
+
# - +wbsearchentities+ -> https://www.wikidata.org/w/api.php?action=help&modules=wbsearchentities
|
|
16
|
+
# - +wbgetentities+ -> https://www.wikidata.org/w/api.php?action=help&modules=wbgetentities
|
|
17
|
+
class WikidataAPI
|
|
18
|
+
|
|
19
|
+
include SymbolizeHelper
|
|
20
|
+
|
|
21
|
+
##
|
|
22
|
+
# The base API URL: https://www.wikidata.org/w/api.php?
|
|
23
|
+
APIURL = 'https://www.wikidata.org/w/api.php?'
|
|
24
|
+
|
|
25
|
+
##
|
|
26
|
+
# The format in which to pull data (json)
|
|
27
|
+
FORMAT = 'json'
|
|
28
|
+
|
|
29
|
+
##
|
|
30
|
+
# The current language to use in all communication with the Wikidata API.
|
|
31
|
+
@@language = Languages::ENGLISH
|
|
32
|
+
|
|
33
|
+
##
|
|
34
|
+
# Set the language to use when communicating to the the WikidataAPI.
|
|
35
|
+
#
|
|
36
|
+
# * *Parameters* :
|
|
37
|
+
# - +language_symbol+ -> A symbol from the Languages Enum class
|
|
38
|
+
# * *Returns* :
|
|
39
|
+
# - The string format of the language it is set to (or, of the current language if *not* set successfully)
|
|
40
|
+
def self.set_language(language_symbol)
|
|
41
|
+
new_lang = Languages.to_h[language_symbol]
|
|
42
|
+
@@language = new_lang unless new_lang.nil?
|
|
43
|
+
@@language
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
##
|
|
47
|
+
# Gets the language used to communicate to the Wikidata API
|
|
48
|
+
def self.get_language
|
|
49
|
+
@@language
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
##
|
|
53
|
+
# Builds a search query.
|
|
54
|
+
#
|
|
55
|
+
# The query is described here: https://www.wikidata.org/w/api.php?action=help&modules=wbsearchentities
|
|
56
|
+
#
|
|
57
|
+
# * *Parameters* :
|
|
58
|
+
# - +search+ -> the search term to look for
|
|
59
|
+
# - +language+ -> the language in which to search
|
|
60
|
+
# - +strict_language+ -> disable language fallback or not
|
|
61
|
+
# - +type+ -> either 'item' or 'property'
|
|
62
|
+
# - +limit+ -> maximum number of things returned
|
|
63
|
+
# - +continue+ -> offset of things
|
|
64
|
+
# * *Returns* :
|
|
65
|
+
# - A +wbsearchentities+ query to be used in a Wikidata API call
|
|
66
|
+
def self.search_query (search = "wikidata", strict_language: false, type: 'item', limit: 50, continue: 0)
|
|
67
|
+
url = [APIURL]
|
|
68
|
+
url << "action=#{Actions::SEARCH}"
|
|
69
|
+
url << "&format=#{FORMAT}"
|
|
70
|
+
url << "&search=#{search}"
|
|
71
|
+
url << "&language=#{@@language}"
|
|
72
|
+
url << "&strictlanguage=#{strict_language}" unless strict_language == false
|
|
73
|
+
url << "&type=#{type}" unless type == 'item'
|
|
74
|
+
url << "&limit=#{limit}" unless limit == 50
|
|
75
|
+
url << "&continue=#{continue}" unless continue == 0
|
|
76
|
+
url.join
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
##
|
|
80
|
+
# Build a query to get Entities (Items and Properties) from Wikidata.
|
|
81
|
+
#
|
|
82
|
+
# The query is described here: https://www.wikidata.org/w/api.php?action=help&modules=wbgetentities
|
|
83
|
+
#
|
|
84
|
+
# * *Parameters* :
|
|
85
|
+
# - +ids+ -> an array of strings representing the ids of the entities on Wikidata.
|
|
86
|
+
# - +props+ -> the properties to get. See the Props class.
|
|
87
|
+
# * *Returns* :
|
|
88
|
+
# - A +wbgetentities+ query to be used in a Wikidata API call
|
|
89
|
+
def self.get_entities_query(ids = ['Q1'], props: [Props::LABELS, Props::DESCRIPTIONS, Props::ALIASES])
|
|
90
|
+
raise ArgumentError.new("Ids must be an array of Wikidata ids; it was: #{ids}") unless GimmeWikidata::valid_ids? ids
|
|
91
|
+
url = [base_url]
|
|
92
|
+
url << '&action=' << Actions::GET_ENTITIES
|
|
93
|
+
url << '&ids=' << ids.join('|')
|
|
94
|
+
url << '&props=' << props.join('|')
|
|
95
|
+
url.join
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
##
|
|
99
|
+
# Helper function to build a commonly-used URL. Appends default format and language to the base Wikidata API URL
|
|
100
|
+
def self.base_url
|
|
101
|
+
url = [APIURL]
|
|
102
|
+
url << 'format=' << FORMAT
|
|
103
|
+
url << '&languages=' << @@language
|
|
104
|
+
url.join
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
##
|
|
108
|
+
# Makes a call to the Wikidata API and formats the response into a symbolized hash
|
|
109
|
+
#
|
|
110
|
+
# Uses HTTParty gem
|
|
111
|
+
#
|
|
112
|
+
# * *Parameters*:
|
|
113
|
+
# - +query+ -> The query for the API call
|
|
114
|
+
# * *Returns* :
|
|
115
|
+
# - A hash representation of the API's response
|
|
116
|
+
def self.make_call(query)
|
|
117
|
+
response = HTTParty.get(query).to_h
|
|
118
|
+
SymbolizeHelper.symbolize_recursive(response)
|
|
119
|
+
end
|
|
120
|
+
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,384 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: gimme_wikidata
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.4.2
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- Bradley Marques
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: exe
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2016-06-18 00:00:00.000000000 Z
|
|
12
|
+
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: bundler
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - "~>"
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '1.10'
|
|
20
|
+
type: :development
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - "~>"
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '1.10'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: rake
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - ">="
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: 11.1.2
|
|
34
|
+
- - "~>"
|
|
35
|
+
- !ruby/object:Gem::Version
|
|
36
|
+
version: 11.1.2
|
|
37
|
+
type: :development
|
|
38
|
+
prerelease: false
|
|
39
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
40
|
+
requirements:
|
|
41
|
+
- - ">="
|
|
42
|
+
- !ruby/object:Gem::Version
|
|
43
|
+
version: 11.1.2
|
|
44
|
+
- - "~>"
|
|
45
|
+
- !ruby/object:Gem::Version
|
|
46
|
+
version: 11.1.2
|
|
47
|
+
- !ruby/object:Gem::Dependency
|
|
48
|
+
name: simplecov
|
|
49
|
+
requirement: !ruby/object:Gem::Requirement
|
|
50
|
+
requirements:
|
|
51
|
+
- - "~>"
|
|
52
|
+
- !ruby/object:Gem::Version
|
|
53
|
+
version: 0.11.2
|
|
54
|
+
- - ">="
|
|
55
|
+
- !ruby/object:Gem::Version
|
|
56
|
+
version: 0.11.2
|
|
57
|
+
type: :development
|
|
58
|
+
prerelease: false
|
|
59
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
60
|
+
requirements:
|
|
61
|
+
- - "~>"
|
|
62
|
+
- !ruby/object:Gem::Version
|
|
63
|
+
version: 0.11.2
|
|
64
|
+
- - ">="
|
|
65
|
+
- !ruby/object:Gem::Version
|
|
66
|
+
version: 0.11.2
|
|
67
|
+
- !ruby/object:Gem::Dependency
|
|
68
|
+
name: minitest-display
|
|
69
|
+
requirement: !ruby/object:Gem::Requirement
|
|
70
|
+
requirements:
|
|
71
|
+
- - ">="
|
|
72
|
+
- !ruby/object:Gem::Version
|
|
73
|
+
version: 0.3.1
|
|
74
|
+
- - "~>"
|
|
75
|
+
- !ruby/object:Gem::Version
|
|
76
|
+
version: 0.3.1
|
|
77
|
+
type: :development
|
|
78
|
+
prerelease: false
|
|
79
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
80
|
+
requirements:
|
|
81
|
+
- - ">="
|
|
82
|
+
- !ruby/object:Gem::Version
|
|
83
|
+
version: 0.3.1
|
|
84
|
+
- - "~>"
|
|
85
|
+
- !ruby/object:Gem::Version
|
|
86
|
+
version: 0.3.1
|
|
87
|
+
- !ruby/object:Gem::Dependency
|
|
88
|
+
name: minitest-reporters
|
|
89
|
+
requirement: !ruby/object:Gem::Requirement
|
|
90
|
+
requirements:
|
|
91
|
+
- - "~>"
|
|
92
|
+
- !ruby/object:Gem::Version
|
|
93
|
+
version: 1.1.9
|
|
94
|
+
- - ">="
|
|
95
|
+
- !ruby/object:Gem::Version
|
|
96
|
+
version: 1.1.9
|
|
97
|
+
type: :development
|
|
98
|
+
prerelease: false
|
|
99
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
100
|
+
requirements:
|
|
101
|
+
- - "~>"
|
|
102
|
+
- !ruby/object:Gem::Version
|
|
103
|
+
version: 1.1.9
|
|
104
|
+
- - ">="
|
|
105
|
+
- !ruby/object:Gem::Version
|
|
106
|
+
version: 1.1.9
|
|
107
|
+
- !ruby/object:Gem::Dependency
|
|
108
|
+
name: m
|
|
109
|
+
requirement: !ruby/object:Gem::Requirement
|
|
110
|
+
requirements:
|
|
111
|
+
- - ">="
|
|
112
|
+
- !ruby/object:Gem::Version
|
|
113
|
+
version: 1.5.0
|
|
114
|
+
- - "~>"
|
|
115
|
+
- !ruby/object:Gem::Version
|
|
116
|
+
version: 1.5.0
|
|
117
|
+
type: :development
|
|
118
|
+
prerelease: false
|
|
119
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
120
|
+
requirements:
|
|
121
|
+
- - ">="
|
|
122
|
+
- !ruby/object:Gem::Version
|
|
123
|
+
version: 1.5.0
|
|
124
|
+
- - "~>"
|
|
125
|
+
- !ruby/object:Gem::Version
|
|
126
|
+
version: 1.5.0
|
|
127
|
+
- !ruby/object:Gem::Dependency
|
|
128
|
+
name: pry
|
|
129
|
+
requirement: !ruby/object:Gem::Requirement
|
|
130
|
+
requirements:
|
|
131
|
+
- - "~>"
|
|
132
|
+
- !ruby/object:Gem::Version
|
|
133
|
+
version: 0.10.3
|
|
134
|
+
- - ">="
|
|
135
|
+
- !ruby/object:Gem::Version
|
|
136
|
+
version: 0.10.3
|
|
137
|
+
type: :development
|
|
138
|
+
prerelease: false
|
|
139
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
140
|
+
requirements:
|
|
141
|
+
- - "~>"
|
|
142
|
+
- !ruby/object:Gem::Version
|
|
143
|
+
version: 0.10.3
|
|
144
|
+
- - ">="
|
|
145
|
+
- !ruby/object:Gem::Version
|
|
146
|
+
version: 0.10.3
|
|
147
|
+
- !ruby/object:Gem::Dependency
|
|
148
|
+
name: rdoc
|
|
149
|
+
requirement: !ruby/object:Gem::Requirement
|
|
150
|
+
requirements:
|
|
151
|
+
- - "~>"
|
|
152
|
+
- !ruby/object:Gem::Version
|
|
153
|
+
version: 4.2.2
|
|
154
|
+
- - ">="
|
|
155
|
+
- !ruby/object:Gem::Version
|
|
156
|
+
version: 4.2.2
|
|
157
|
+
type: :development
|
|
158
|
+
prerelease: false
|
|
159
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
160
|
+
requirements:
|
|
161
|
+
- - "~>"
|
|
162
|
+
- !ruby/object:Gem::Version
|
|
163
|
+
version: 4.2.2
|
|
164
|
+
- - ">="
|
|
165
|
+
- !ruby/object:Gem::Version
|
|
166
|
+
version: 4.2.2
|
|
167
|
+
- !ruby/object:Gem::Dependency
|
|
168
|
+
name: mocha
|
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
|
170
|
+
requirements:
|
|
171
|
+
- - "~>"
|
|
172
|
+
- !ruby/object:Gem::Version
|
|
173
|
+
version: 1.1.0
|
|
174
|
+
- - ">="
|
|
175
|
+
- !ruby/object:Gem::Version
|
|
176
|
+
version: 1.1.0
|
|
177
|
+
type: :development
|
|
178
|
+
prerelease: false
|
|
179
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
180
|
+
requirements:
|
|
181
|
+
- - "~>"
|
|
182
|
+
- !ruby/object:Gem::Version
|
|
183
|
+
version: 1.1.0
|
|
184
|
+
- - ">="
|
|
185
|
+
- !ruby/object:Gem::Version
|
|
186
|
+
version: 1.1.0
|
|
187
|
+
- !ruby/object:Gem::Dependency
|
|
188
|
+
name: dotenv
|
|
189
|
+
requirement: !ruby/object:Gem::Requirement
|
|
190
|
+
requirements:
|
|
191
|
+
- - "~>"
|
|
192
|
+
- !ruby/object:Gem::Version
|
|
193
|
+
version: 2.0.2
|
|
194
|
+
- - ">="
|
|
195
|
+
- !ruby/object:Gem::Version
|
|
196
|
+
version: 2.0.2
|
|
197
|
+
type: :development
|
|
198
|
+
prerelease: false
|
|
199
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
200
|
+
requirements:
|
|
201
|
+
- - "~>"
|
|
202
|
+
- !ruby/object:Gem::Version
|
|
203
|
+
version: 2.0.2
|
|
204
|
+
- - ">="
|
|
205
|
+
- !ruby/object:Gem::Version
|
|
206
|
+
version: 2.0.2
|
|
207
|
+
- !ruby/object:Gem::Dependency
|
|
208
|
+
name: codeclimate-test-reporter
|
|
209
|
+
requirement: !ruby/object:Gem::Requirement
|
|
210
|
+
requirements:
|
|
211
|
+
- - "~>"
|
|
212
|
+
- !ruby/object:Gem::Version
|
|
213
|
+
version: 0.5.2
|
|
214
|
+
- - ">="
|
|
215
|
+
- !ruby/object:Gem::Version
|
|
216
|
+
version: 0.5.2
|
|
217
|
+
type: :development
|
|
218
|
+
prerelease: false
|
|
219
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
220
|
+
requirements:
|
|
221
|
+
- - "~>"
|
|
222
|
+
- !ruby/object:Gem::Version
|
|
223
|
+
version: 0.5.2
|
|
224
|
+
- - ">="
|
|
225
|
+
- !ruby/object:Gem::Version
|
|
226
|
+
version: 0.5.2
|
|
227
|
+
- !ruby/object:Gem::Dependency
|
|
228
|
+
name: httparty
|
|
229
|
+
requirement: !ruby/object:Gem::Requirement
|
|
230
|
+
requirements:
|
|
231
|
+
- - "~>"
|
|
232
|
+
- !ruby/object:Gem::Version
|
|
233
|
+
version: 0.13.7
|
|
234
|
+
- - ">="
|
|
235
|
+
- !ruby/object:Gem::Version
|
|
236
|
+
version: 0.13.7
|
|
237
|
+
type: :runtime
|
|
238
|
+
prerelease: false
|
|
239
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
240
|
+
requirements:
|
|
241
|
+
- - "~>"
|
|
242
|
+
- !ruby/object:Gem::Version
|
|
243
|
+
version: 0.13.7
|
|
244
|
+
- - ">="
|
|
245
|
+
- !ruby/object:Gem::Version
|
|
246
|
+
version: 0.13.7
|
|
247
|
+
- !ruby/object:Gem::Dependency
|
|
248
|
+
name: ruby-enum
|
|
249
|
+
requirement: !ruby/object:Gem::Requirement
|
|
250
|
+
requirements:
|
|
251
|
+
- - "~>"
|
|
252
|
+
- !ruby/object:Gem::Version
|
|
253
|
+
version: 0.5.0
|
|
254
|
+
- - ">="
|
|
255
|
+
- !ruby/object:Gem::Version
|
|
256
|
+
version: 0.5.0
|
|
257
|
+
type: :runtime
|
|
258
|
+
prerelease: false
|
|
259
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
260
|
+
requirements:
|
|
261
|
+
- - "~>"
|
|
262
|
+
- !ruby/object:Gem::Version
|
|
263
|
+
version: 0.5.0
|
|
264
|
+
- - ">="
|
|
265
|
+
- !ruby/object:Gem::Version
|
|
266
|
+
version: 0.5.0
|
|
267
|
+
- !ruby/object:Gem::Dependency
|
|
268
|
+
name: colorize
|
|
269
|
+
requirement: !ruby/object:Gem::Requirement
|
|
270
|
+
requirements:
|
|
271
|
+
- - "~>"
|
|
272
|
+
- !ruby/object:Gem::Version
|
|
273
|
+
version: 0.7.7
|
|
274
|
+
- - ">="
|
|
275
|
+
- !ruby/object:Gem::Version
|
|
276
|
+
version: 0.7.7
|
|
277
|
+
type: :runtime
|
|
278
|
+
prerelease: false
|
|
279
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
280
|
+
requirements:
|
|
281
|
+
- - "~>"
|
|
282
|
+
- !ruby/object:Gem::Version
|
|
283
|
+
version: 0.7.7
|
|
284
|
+
- - ">="
|
|
285
|
+
- !ruby/object:Gem::Version
|
|
286
|
+
version: 0.7.7
|
|
287
|
+
- !ruby/object:Gem::Dependency
|
|
288
|
+
name: json
|
|
289
|
+
requirement: !ruby/object:Gem::Requirement
|
|
290
|
+
requirements:
|
|
291
|
+
- - "~>"
|
|
292
|
+
- !ruby/object:Gem::Version
|
|
293
|
+
version: 1.8.3
|
|
294
|
+
- - ">="
|
|
295
|
+
- !ruby/object:Gem::Version
|
|
296
|
+
version: 1.8.3
|
|
297
|
+
type: :runtime
|
|
298
|
+
prerelease: false
|
|
299
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
300
|
+
requirements:
|
|
301
|
+
- - "~>"
|
|
302
|
+
- !ruby/object:Gem::Version
|
|
303
|
+
version: 1.8.3
|
|
304
|
+
- - ">="
|
|
305
|
+
- !ruby/object:Gem::Version
|
|
306
|
+
version: 1.8.3
|
|
307
|
+
- !ruby/object:Gem::Dependency
|
|
308
|
+
name: carbon_date
|
|
309
|
+
requirement: !ruby/object:Gem::Requirement
|
|
310
|
+
requirements:
|
|
311
|
+
- - "~>"
|
|
312
|
+
- !ruby/object:Gem::Version
|
|
313
|
+
version: 0.1.2
|
|
314
|
+
- - ">="
|
|
315
|
+
- !ruby/object:Gem::Version
|
|
316
|
+
version: 0.1.2
|
|
317
|
+
type: :runtime
|
|
318
|
+
prerelease: false
|
|
319
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
320
|
+
requirements:
|
|
321
|
+
- - "~>"
|
|
322
|
+
- !ruby/object:Gem::Version
|
|
323
|
+
version: 0.1.2
|
|
324
|
+
- - ">="
|
|
325
|
+
- !ruby/object:Gem::Version
|
|
326
|
+
version: 0.1.2
|
|
327
|
+
description: GimmeWikidata is a Ruby gem that provides an interface to search, pull
|
|
328
|
+
(and, in future, publish) data from Wikidata. It provides a number of classes that
|
|
329
|
+
encapsulate the data model of Wikidata.
|
|
330
|
+
email:
|
|
331
|
+
- bradmarxmoosepi@gmail.com
|
|
332
|
+
executables: []
|
|
333
|
+
extensions: []
|
|
334
|
+
extra_rdoc_files: []
|
|
335
|
+
files:
|
|
336
|
+
- ".gitignore"
|
|
337
|
+
- ".travis.yml"
|
|
338
|
+
- Gemfile
|
|
339
|
+
- LICENSE.txt
|
|
340
|
+
- README.md
|
|
341
|
+
- Rakefile
|
|
342
|
+
- bin/console
|
|
343
|
+
- bin/setup
|
|
344
|
+
- gimme_wikidata.gemspec
|
|
345
|
+
- img/gimme_wikidata_logo.png
|
|
346
|
+
- lib/gimme_wikidata.rb
|
|
347
|
+
- lib/gimme_wikidata/claim.rb
|
|
348
|
+
- lib/gimme_wikidata/entity.rb
|
|
349
|
+
- lib/gimme_wikidata/entity_result.rb
|
|
350
|
+
- lib/gimme_wikidata/enums.rb
|
|
351
|
+
- lib/gimme_wikidata/extensions.rb
|
|
352
|
+
- lib/gimme_wikidata/item.rb
|
|
353
|
+
- lib/gimme_wikidata/parser.rb
|
|
354
|
+
- lib/gimme_wikidata/printer.rb
|
|
355
|
+
- lib/gimme_wikidata/property.rb
|
|
356
|
+
- lib/gimme_wikidata/search.rb
|
|
357
|
+
- lib/gimme_wikidata/version.rb
|
|
358
|
+
- lib/gimme_wikidata/wikidata_api.rb
|
|
359
|
+
homepage: https://github.com/bradleymarques/gimme_wikidata
|
|
360
|
+
licenses:
|
|
361
|
+
- MIT
|
|
362
|
+
metadata:
|
|
363
|
+
allowed_push_host: https://rubygems.org
|
|
364
|
+
post_install_message:
|
|
365
|
+
rdoc_options: []
|
|
366
|
+
require_paths:
|
|
367
|
+
- lib
|
|
368
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
369
|
+
requirements:
|
|
370
|
+
- - ">="
|
|
371
|
+
- !ruby/object:Gem::Version
|
|
372
|
+
version: '0'
|
|
373
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
374
|
+
requirements:
|
|
375
|
+
- - ">="
|
|
376
|
+
- !ruby/object:Gem::Version
|
|
377
|
+
version: '0'
|
|
378
|
+
requirements: []
|
|
379
|
+
rubyforge_project:
|
|
380
|
+
rubygems_version: 2.4.5
|
|
381
|
+
signing_key:
|
|
382
|
+
specification_version: 4
|
|
383
|
+
summary: Search and get data from the Wikidata open knowledge base.
|
|
384
|
+
test_files: []
|