wikidata-client 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +4 -4
- data/README.md +1 -0
- data/lib/wikidata/entity.rb +27 -25
- data/lib/wikidata/item.rb +7 -8
- data/lib/wikidata/property.rb +1 -9
- data/lib/wikidata/version.rb +1 -1
- data/spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_string/should_return_a_nil_property_id_if_not_an_item.yml +160 -0
- data/spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_string/should_return_property_id.yml +160 -0
- data/spec/wikidata/entity_spec.rb +4 -0
- metadata +6 -3
- data/lib/wikidata/resource.rb +0 -69
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 574fa6611ad2c28edfe22c33ef380ac5126f6b0e
|
4
|
+
data.tar.gz: 629b49700bb84e330bbd798d0a98acb3c034aada
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0d23c328efba521a691be46048e82f8fe7912683f130583dc4297057ae3b106a395cf37c56005580eccda19160cbfbeae399d820af16327ef85923d6721b0e1a
|
7
|
+
data.tar.gz: 09de214a928f2886b2d4eaffc75199ac01b16325434f052752066db31528ce58f34a08b3dac72dc0ed2aa22b7e6a8535d30fb466c2663c673268733472a270b8
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
wikidata-client (0.0.
|
4
|
+
wikidata-client (0.0.2)
|
5
5
|
faraday (~> 0.9)
|
6
6
|
faraday_middleware (~> 0.9)
|
7
7
|
hashie (~> 3.3)
|
@@ -11,7 +11,7 @@ GEM
|
|
11
11
|
remote: https://rubygems.org/
|
12
12
|
specs:
|
13
13
|
addressable (2.3.6)
|
14
|
-
codeclimate-test-reporter (0.4.
|
14
|
+
codeclimate-test-reporter (0.4.1)
|
15
15
|
simplecov (>= 0.7.1, < 1.0.0)
|
16
16
|
coderay (1.1.0)
|
17
17
|
crack (0.4.2)
|
@@ -44,7 +44,7 @@ GEM
|
|
44
44
|
rspec-mocks (3.1.1)
|
45
45
|
rspec-support (~> 3.1.0)
|
46
46
|
rspec-support (3.1.0)
|
47
|
-
safe_yaml (1.0.
|
47
|
+
safe_yaml (1.0.4)
|
48
48
|
simplecov (0.9.1)
|
49
49
|
docile (~> 1.1.0)
|
50
50
|
multi_json (~> 1.0)
|
@@ -52,7 +52,7 @@ GEM
|
|
52
52
|
simplecov-html (0.8.0)
|
53
53
|
slop (3.6.0)
|
54
54
|
vcr (2.9.3)
|
55
|
-
webmock (1.
|
55
|
+
webmock (1.19.0)
|
56
56
|
addressable (>= 2.3.6)
|
57
57
|
crack (>= 0.3.2)
|
58
58
|
|
data/README.md
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
# Wikidata API Client
|
2
2
|
|
3
|
+
[![Gem Version](https://badge.fury.io/rb/wikidata-client.svg)](http://badge.fury.io/rb/wikidata-client)
|
3
4
|
[![Build Status](https://travis-ci.org/klacointe/wikidata-client.svg?branch=master)](https://travis-ci.org/klacointe/wikidata-client)
|
4
5
|
[![Code Climate](https://codeclimate.com/github/klacointe/wikidata-client/badges/gpa.svg)](https://codeclimate.com/github/klacointe/wikidata-client)
|
5
6
|
[![Test Coverage](https://codeclimate.com/github/klacointe/wikidata-client/badges/coverage.svg)](https://codeclimate.com/github/klacointe/wikidata-client)
|
data/lib/wikidata/entity.rb
CHANGED
@@ -25,21 +25,15 @@ module Wikidata
|
|
25
25
|
Wikidata.settings.item.url.gsub(':id', id)
|
26
26
|
end
|
27
27
|
|
28
|
-
Wikidata.mapping.
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
Wikidata.mapping.collections.each do |k, code|
|
38
|
-
define_method k do
|
39
|
-
properties code
|
40
|
-
end
|
41
|
-
define_method "#{k}_ids" do
|
42
|
-
property_ids code
|
28
|
+
Wikidata.mapping.each do |type, mappings|
|
29
|
+
resource = (type.to_sym == :resources)
|
30
|
+
mappings.each do |k, code|
|
31
|
+
define_method k do
|
32
|
+
resource ? property(code) : properties(code)
|
33
|
+
end
|
34
|
+
define_method (resource ? "#{k}_id" : "#{k}_ids") do
|
35
|
+
resource ? property_id(code) : property_ids(code)
|
36
|
+
end
|
43
37
|
end
|
44
38
|
end
|
45
39
|
|
@@ -49,16 +43,8 @@ module Wikidata
|
|
49
43
|
|
50
44
|
def property_ids code
|
51
45
|
Array(raw_property(code)).map do |attribute|
|
52
|
-
|
53
|
-
|
54
|
-
case attribute.mainsnak.datavalue.value['entity-type']
|
55
|
-
when 'item'
|
56
|
-
prefix = 'Q'
|
57
|
-
else
|
58
|
-
raise "Unkown wikibase-item entity-type #{attribute.mainsnak.datatype.value['entity-type']}"
|
59
|
-
end
|
60
|
-
"#{prefix}#{attribute.mainsnak.datavalue.value['numeric-id']}"
|
61
|
-
end
|
46
|
+
self.class.entity_id attribute
|
47
|
+
end.compact
|
62
48
|
end
|
63
49
|
|
64
50
|
def property code
|
@@ -73,6 +59,22 @@ module Wikidata
|
|
73
59
|
"<#{self.class} id: #{id}, title: \"#{title}\">"
|
74
60
|
end
|
75
61
|
|
62
|
+
class << self
|
63
|
+
|
64
|
+
# TODO Handle other types
|
65
|
+
# http://www.wikidata.org/wiki/Wikidata:Glossary#Entities.2C_items.2C_properties_and_queries
|
66
|
+
def entity_id attribute
|
67
|
+
attribute.mainsnak.datavalue.value.tap do |h|
|
68
|
+
case h['entity-type']
|
69
|
+
when 'item'
|
70
|
+
return "Q#{h['numeric-id']}"
|
71
|
+
else
|
72
|
+
return nil
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
76
78
|
private
|
77
79
|
|
78
80
|
def raw_property code
|
data/lib/wikidata/item.rb
CHANGED
@@ -15,20 +15,19 @@ module Wikidata
|
|
15
15
|
|
16
16
|
class << self
|
17
17
|
def find ids, query = {}
|
18
|
-
|
19
|
-
.merge( query )
|
20
|
-
.merge( ids: Array(ids).join('|') )
|
21
|
-
Wikidata::Client.new( q ).response.tap do |resp|
|
22
|
-
return resp.results.first unless ids.is_a?(Array)
|
23
|
-
end
|
18
|
+
_find :ids, ids, query
|
24
19
|
end
|
25
20
|
|
26
21
|
def find_by_title titles, query = {}
|
22
|
+
_find :titles, titles, query
|
23
|
+
end
|
24
|
+
|
25
|
+
def _find finder = :ids, list = '', query = {}
|
27
26
|
q = DEFAULT_QUERIES[:find]
|
28
27
|
.merge( query )
|
29
|
-
.merge(
|
28
|
+
.merge( finder => Array(list).join('|') )
|
30
29
|
Wikidata::Client.new( q ).response.tap do |resp|
|
31
|
-
return resp.results.first unless
|
30
|
+
return resp.results.first unless list.is_a?(Array)
|
32
31
|
end
|
33
32
|
end
|
34
33
|
|
data/lib/wikidata/property.rb
CHANGED
@@ -12,15 +12,7 @@ module Wikidata
|
|
12
12
|
when 'url'
|
13
13
|
Wikidata::Property::Url.new attribute
|
14
14
|
when 'wikibase-item'
|
15
|
-
|
16
|
-
# http://www.wikidata.org/wiki/Wikidata:Glossary#Entities.2C_items.2C_properties_and_queries
|
17
|
-
case attribute.mainsnak.datavalue.value['entity-type']
|
18
|
-
when 'item'
|
19
|
-
prefix = 'Q'
|
20
|
-
else
|
21
|
-
raise "Unkown wikibase-item entity-type #{attribute.mainsnak.datatype.value['entity-type']}"
|
22
|
-
end
|
23
|
-
Wikidata::Item.find "#{prefix}#{attribute.mainsnak.datavalue.value['numeric-id']}"
|
15
|
+
Wikidata::Item.find Wikidata::Entity.entity_id(attribute)
|
24
16
|
else
|
25
17
|
raise "Unkown property type #{attribute.mainsnak.datatype}"
|
26
18
|
end
|
data/lib/wikidata/version.rb
CHANGED
@@ -0,0 +1,160 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://www.wikidata.org/w/api.php?action=wbgetentities&format=json&sites=enwiki&titles=Homer%20Simpson
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.9.0
|
12
|
+
Expect:
|
13
|
+
- ''
|
14
|
+
response:
|
15
|
+
status:
|
16
|
+
code: 200
|
17
|
+
message: OK
|
18
|
+
headers:
|
19
|
+
Server:
|
20
|
+
- Apache
|
21
|
+
X-Content-Type-Options:
|
22
|
+
- nosniff
|
23
|
+
Cache-Control:
|
24
|
+
- private
|
25
|
+
X-Frame-Options:
|
26
|
+
- DENY
|
27
|
+
Content-Type:
|
28
|
+
- application/json; charset=utf-8
|
29
|
+
Vary:
|
30
|
+
- Accept-Encoding,X-Use-HHVM
|
31
|
+
X-Varnish:
|
32
|
+
- 2282365090, 3231348047, 2153710035
|
33
|
+
Via:
|
34
|
+
- 1.1 varnish, 1.1 varnish, 1.1 varnish
|
35
|
+
Transfer-Encoding:
|
36
|
+
- chunked
|
37
|
+
Date:
|
38
|
+
- Wed, 01 Oct 2014 15:12:16 GMT
|
39
|
+
Age:
|
40
|
+
- '0'
|
41
|
+
Connection:
|
42
|
+
- keep-alive
|
43
|
+
X-Cache:
|
44
|
+
- cp1068 miss (0), amssq48 miss (0), amssq37 frontend miss (0)
|
45
|
+
X-Analytics:
|
46
|
+
- php=zend
|
47
|
+
Set-Cookie:
|
48
|
+
- GeoIP=FR:Sainte-luce-sur-loire:47.2500:-1.5000:v4; Path=/; Domain=.wikidata.org
|
49
|
+
body:
|
50
|
+
encoding: ASCII-8BIT
|
51
|
+
string: '{"entities":{"Q7810":{"pageid":9056,"ns":0,"title":"Q7810","lastrevid":159661784,"modified":"2014-09-25T12:26:51Z","id":"Q7810","type":"item","aliases":{"de":[{"language":"de","value":"Homer
|
52
|
+
J. Simpsons"},{"language":"de","value":"Homer Jay Simpson"},{"language":"de","value":"Captain
|
53
|
+
Albern"},{"language":"de","value":"Max Power"},{"language":"de","value":"Dancin\u2019
|
54
|
+
Homer"},{"language":"de","value":"Andreas T. aus Happyhill"},{"language":"de","value":"Colonel
|
55
|
+
Homer"},{"language":"de","value":"Mr. Schneepflug"},{"language":"de","value":"Brian
|
56
|
+
McGee"},{"language":"de","value":"Mr. Thompson"},{"language":"de","value":"der
|
57
|
+
Bierbaron"},{"language":"de","value":"Arthur N. aus Rosenburg"},{"language":"de","value":"Mr.
|
58
|
+
X"},{"language":"de","value":"El Homo"},{"language":"de","value":"Elvis Jagger
|
59
|
+
Abdul-Jabbar"},{"language":"de","value":"Tortenmann"},{"language":"de","value":"Homer
|
60
|
+
Sanchez"},{"language":"de","value":"Homie"},{"language":"de","value":"Admiral
|
61
|
+
Adonis"},{"language":"de","value":"Commander Cool"}],"en":[{"language":"en","value":"Homer
|
62
|
+
Jay Simpson"}],"it":[{"language":"it","value":"Homer J. Simpson"}]},"labels":{"it":{"language":"it","value":"Homer
|
63
|
+
Simpson"},"fr":{"language":"fr","value":"Homer Simpson"},"en":{"language":"en","value":"Homer
|
64
|
+
Simpson"},"de":{"language":"de","value":"Homer Simpson"},"af":{"language":"af","value":"Homer
|
65
|
+
Simpson"},"ast":{"language":"ast","value":"Homer Simpson"},"az":{"language":"az","value":"Homer
|
66
|
+
Simpson"},"bar":{"language":"bar","value":"Homer Simpson"},"be":{"language":"be","value":"\u0413\u0430\u043c\u0435\u0440
|
67
|
+
\u0421\u0456\u043c\u043f\u0441\u0430\u043d"},"bg":{"language":"bg","value":"\u0425\u043e\u0443\u043c\u044a\u0440
|
68
|
+
\u0421\u0438\u043c\u043f\u0441\u044a\u043d"},"bo":{"language":"bo","value":"\u0f67\u0f7c\u0f60\u0f7c\u0f0b\u0f58\u0f62\u0f0b\u0f66\u0f72\u0f58\u0f0b\u0f56\u0f74\u0f0b\u0f66\u0f53\u0f0d"},"bs":{"language":"bs","value":"Homer
|
69
|
+
Simpson"},"ca":{"language":"ca","value":"Homer Simpson"},"cs":{"language":"cs","value":"Homer
|
70
|
+
Simpson"},"cy":{"language":"cy","value":"Homer Simpson"},"da":{"language":"da","value":"Homer
|
71
|
+
Simpson"},"en-ca":{"language":"en-ca","value":"Homer Simpson"},"en-gb":{"language":"en-gb","value":"Homer
|
72
|
+
Simpson"},"es":{"language":"es","value":"Homer Simpson"},"et":{"language":"et","value":"Homer
|
73
|
+
Simpson"},"eu":{"language":"eu","value":"Homer Simpson"},"fa":{"language":"fa","value":"\u0647\u0648\u0645\u0631
|
74
|
+
\u0633\u06cc\u0645\u067e\u0633\u0648\u0646"},"fi":{"language":"fi","value":"Homer
|
75
|
+
Simpson"},"ga":{"language":"ga","value":"Homer Simpson"},"gl":{"language":"gl","value":"Homer
|
76
|
+
Simpson"},"he":{"language":"he","value":"\u05d4\u05d5\u05de\u05e8 \u05e1\u05d9\u05de\u05e4\u05e1\u05d5\u05df"},"hr":{"language":"hr","value":"Homer
|
77
|
+
Simpson"},"hu":{"language":"hu","value":"Homer Simpson"},"hy":{"language":"hy","value":"\u0540\u0578\u0574\u0565\u0580
|
78
|
+
\u054d\u056b\u0574\u057a\u057d\u0578\u0576"},"id":{"language":"id","value":"Homer
|
79
|
+
Simpson"},"is":{"language":"is","value":"H\u00f3mer Simpson"},"ja":{"language":"ja","value":"\u30db\u30fc\u30de\u30fc\u30fb\u30b7\u30f3\u30d7\u30bd\u30f3"},"ka":{"language":"ka","value":"\u10f0\u10dd\u10db\u10d4\u10e0
|
80
|
+
\u10e1\u10d8\u10db\u10de\u10e1\u10dd\u10dc\u10d8"},"ko":{"language":"ko","value":"\ud638\uba38
|
81
|
+
\uc2ec\uc2a8"},"lb":{"language":"lb","value":"Homer Simpson"},"lv":{"language":"lv","value":"Hom\u0113rs
|
82
|
+
Simpsons"},"mr":{"language":"mr","value":"\u0939\u094b\u092e\u0930 \u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928"},"nah":{"language":"nah","value":"Homer
|
83
|
+
Simpson"},"ne":{"language":"ne","value":"\u0939\u094b\u092e\u0930 \u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928"},"nl":{"language":"nl","value":"Homer
|
84
|
+
Simpson"},"oc":{"language":"oc","value":"Homer Simpson"},"pi":{"language":"pi","value":"\u0939\u094b\u092e\u0930
|
85
|
+
\u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928"},"pl":{"language":"pl","value":"Homer
|
86
|
+
Simpson"},"pt":{"language":"pt","value":"Homer Simpson"},"pt-br":{"language":"pt-br","value":"Homer
|
87
|
+
Simpson"},"ro":{"language":"ro","value":"Homer Simpson"},"ru":{"language":"ru","value":"\u0413\u043e\u043c\u0435\u0440
|
88
|
+
\u0421\u0438\u043c\u043f\u0441\u043e\u043d"},"sa":{"language":"sa","value":"\u0939\u094b\u092e\u0930
|
89
|
+
\u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928"},"scn":{"language":"scn","value":"Homer
|
90
|
+
Simpson"},"sh":{"language":"sh","value":"Homer Simpson"},"sk":{"language":"sk","value":"Homer
|
91
|
+
Simpson"},"sq":{"language":"sq","value":"Homer Simpson"},"sr":{"language":"sr","value":"\u0425\u043e\u043c\u0435\u0440
|
92
|
+
\u040f\u0435\u0458 \u0421\u0438\u043c\u043f\u0441\u043e\u043d"},"sv":{"language":"sv","value":"Homer
|
93
|
+
Simpson"},"th":{"language":"th","value":"\u0e42\u0e2e\u0e40\u0e21\u0e2d\u0e23\u0e4c
|
94
|
+
\u0e0b\u0e34\u0e21\u0e1b\u0e4c\u0e2a\u0e31\u0e19"},"tr":{"language":"tr","value":"Homer
|
95
|
+
Simpson"},"uk":{"language":"uk","value":"\u0413\u043e\u043c\u0435\u0440 \u0421\u0456\u043c\u043f\u0441\u043e\u043d"},"vi":{"language":"vi","value":"Homer
|
96
|
+
Simpson"},"war":{"language":"war","value":"Homer Simpson"},"zh":{"language":"zh","value":"\u970d\u9ed8\u00b7\u8f9b\u666e\u68ee"},"gn":{"language":"gn","value":"Homer
|
97
|
+
Simpson"},"lt":{"language":"lt","value":"Homer Simpson"},"nb":{"language":"nb","value":"Homer
|
98
|
+
Simpson"},"ar":{"language":"ar","value":"\u0647\u0648\u0645\u0631 \u0633\u064a\u0645\u0628\u0633\u0648\u0646"},"ckb":{"language":"ckb","value":"\u06be\u06c6\u0645\u06d5\u0631
|
99
|
+
\u0633\u06cc\u0645\u067e\u0633\u06c6\u0646"},"nn":{"language":"nn","value":"Homer
|
100
|
+
Simpson"},"eo":{"language":"eo","value":"Homer Simpson"}},"descriptions":{"it":{"language":"it","value":"protagonista
|
101
|
+
della serie I Simpson"},"de":{"language":"de","value":"Figur der Simpsons"},"ru":{"language":"ru","value":"\u0433\u043b\u0430\u0432\u043d\u044b\u0439
|
102
|
+
\u0433\u0435\u0440\u043e\u0439 \u043c\u0443\u043b\u044c\u0442\u0441\u0435\u0440\u0438\u0430\u043b\u0430
|
103
|
+
\u00ab\u0421\u0438\u043c\u043f\u0441\u043e\u043d\u044b\u00bb"},"es":{"language":"es","value":"personaje
|
104
|
+
de dibujos animados"},"en":{"language":"en","value":"fictional character from
|
105
|
+
The Simpsons franchise"},"fr":{"language":"fr","value":"personnage de la s\u00e9rie
|
106
|
+
t\u00e9l\u00e9vis\u00e9e Les Simpson"},"nl":{"language":"nl","value":"personage
|
107
|
+
uit The Simpsons"}},"claims":{"P7":[{"id":"Q7810$2eb0aa51-40cb-3312-5b5d-777a34b3be23","mainsnak":{"snaktype":"value","property":"P7","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":2340973},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P345":[{"id":"q7810$D52517F8-64C0-498F-BD1F-2665DADE3A34","mainsnak":{"snaktype":"value","property":"P345","datatype":"string","datavalue":{"value":"ch0003002","type":"string"}},"type":"statement","rank":"preferred"}],"P26":[{"id":"q7810$7A080AE2-BE0B-4D9E-8B8C-6C1D5FD5C838","mainsnak":{"snaktype":"value","property":"P26","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":7828},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P21":[{"id":"q7810$EBCB4B01-C592-44E7-9DB8-F090E62074E2","mainsnak":{"snaktype":"value","property":"P21","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":6581097},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P40":[{"id":"q7810$2B9F1E2C-7583-4DD8-8CEB-F367FC0641E1","mainsnak":{"snaktype":"value","property":"P40","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":5480},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"},{"id":"q7810$A6DC727E-3642-470C-BD93-6707640CD90C","mainsnak":{"snaktype":"value","property":"P40","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":5846},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"},{"id":"q7810$E580F297-F30A-4680-BA5C-3559041E3B0F","mainsnak":{"snaktype":"value","property":"P40","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":7834},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P22":[{"id":"q7810$571A84C2-93C0-48E3-8DD3-A92A7D57BEA9","mainsnak":{"snaktype":"value","property":"P22","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":842104},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P25":[{"id":"q7810$46038435-4D85-46AB-90CE-5555ACD71760","mainsnak":{"snaktype":"value","property":"P25","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":1641818},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P19":[{"id":"q7810$F3E8C187-B8F2-4096-B15E-C4168F90CE42","mainsnak":{"snaktype":"value","property":"P19","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":151076},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P434":[{"id":"q7810$7604e6cb-443a-65f9-2ab3-70db024360af","mainsnak":{"snaktype":"value","property":"P434","datatype":"string","datavalue":{"value":"109a53ec-73e7-44e8-81cd-484114849a02","type":"string"}},"type":"statement","rank":"normal"}],"P373":[{"id":"q7810$1511B4E7-E94C-45FA-8DF5-07616B0B2A86","mainsnak":{"snaktype":"novalue","property":"P373"},"type":"statement","rank":"normal"}],"P27":[{"id":"Q7810$3C8AEBB8-9F14-4E4C-B386-FFAFBDBC9F46","mainsnak":{"snaktype":"value","property":"P27","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":30},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P646":[{"id":"Q7810$8F38CA22-CBE7-45D0-A02D-B2D5950B6648","mainsnak":{"snaktype":"value","property":"P646","datatype":"string","datavalue":{"value":"/m/0h545","type":"string"}},"type":"statement","rank":"normal","references":[{"hash":"b923b0d68beb300866b87ead39f61e63ec30d8af","snaks":{"P248":[{"snaktype":"value","property":"P248","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":15241312},"type":"wikibase-entityid"}}],"P577":[{"snaktype":"value","property":"P577","datatype":"time","datavalue":{"value":{"time":"+00000002013-10-28T00:00:00Z","timezone":0,"before":0,"after":0,"precision":11,"calendarmodel":"http://www.wikidata.org/entity/Q1985727"},"type":"time"}}]},"snaks-order":["P248","P577"]}]}],"P569":[{"id":"Q7810$B87E9E15-38ED-4A83-B7A5-0EA872EC98EE","mainsnak":{"snaktype":"value","property":"P569","datatype":"time","datavalue":{"value":{"time":"+00000001956-06-18T00:00:00Z","timezone":0,"before":0,"after":0,"precision":11,"calendarmodel":"http://www.wikidata.org/entity/Q1985727"},"type":"time"}},"type":"statement","rank":"normal"}],"P31":[{"id":"Q7810$ae77588c-491b-63c1-7bc0-3f902811f72a","mainsnak":{"snaktype":"value","property":"P31","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":15632617},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P1441":[{"id":"Q7810$0B70914E-EA32-4B54-AF9F-08CA8716557C","mainsnak":{"snaktype":"value","property":"P1441","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":886},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}]},"sitelinks":{"afwiki":{"site":"afwiki","title":"Homer
|
108
|
+
Simpson","badges":[]},"arwiki":{"site":"arwiki","title":"\u0647\u0648\u0645\u0631
|
109
|
+
\u0633\u064a\u0645\u0628\u0633\u0648\u0646","badges":[]},"astwiki":{"site":"astwiki","title":"Homer
|
110
|
+
Simpson","badges":[]},"azwiki":{"site":"azwiki","title":"Homer Simpson","badges":[]},"azwikiquote":{"site":"azwikiquote","title":"Homer
|
111
|
+
Simpson","badges":[]},"barwiki":{"site":"barwiki","title":"Homer Simpson","badges":[]},"bewiki":{"site":"bewiki","title":"\u0413\u0430\u043c\u0435\u0440
|
112
|
+
\u0421\u0456\u043c\u043f\u0441\u0430\u043d","badges":[]},"bgwiki":{"site":"bgwiki","title":"\u0425\u043e\u0443\u043c\u044a\u0440
|
113
|
+
\u0421\u0438\u043c\u043f\u0441\u044a\u043d","badges":[]},"bowiki":{"site":"bowiki","title":"\u0f67\u0f7c\u0f60\u0f7c\u0f0b\u0f58\u0f62\u0f0b\u0f66\u0f72\u0f58\u0f0b\u0f56\u0f74\u0f0b\u0f66\u0f53\u0f0d","badges":[]},"bswiki":{"site":"bswiki","title":"Homer
|
114
|
+
Simpson","badges":[]},"bswikiquote":{"site":"bswikiquote","title":"Homer Simpson","badges":[]},"cawiki":{"site":"cawiki","title":"Homer
|
115
|
+
Simpson","badges":[]},"ckbwiki":{"site":"ckbwiki","title":"\u06be\u06c6\u0645\u06d5\u0631
|
116
|
+
\u0633\u06cc\u0645\u067e\u0633\u06c6\u0646","badges":[]},"cswiki":{"site":"cswiki","title":"Homer
|
117
|
+
Simpson","badges":[]},"cywiki":{"site":"cywiki","title":"Homer Simpson","badges":[]},"dawiki":{"site":"dawiki","title":"Homer
|
118
|
+
Simpson","badges":[]},"dawikiquote":{"site":"dawikiquote","title":"Homer Simpson","badges":[]},"dewiki":{"site":"dewiki","title":"Homer
|
119
|
+
Simpson","badges":[]},"enwiki":{"site":"enwiki","title":"Homer Simpson","badges":["Q17437796"]},"eowikiquote":{"site":"eowikiquote","title":"Homer
|
120
|
+
Simpson","badges":[]},"eswiki":{"site":"eswiki","title":"Homer Simpson","badges":["Q17437796"]},"eswikiquote":{"site":"eswikiquote","title":"Homer
|
121
|
+
J. Simpson","badges":[]},"etwiki":{"site":"etwiki","title":"Homer Simpson","badges":[]},"euwiki":{"site":"euwiki","title":"Homer
|
122
|
+
Simpson","badges":[]},"fawiki":{"site":"fawiki","title":"\u0647\u0648\u0645\u0631
|
123
|
+
\u0633\u06cc\u0645\u067e\u0633\u0648\u0646","badges":[]},"fiwiki":{"site":"fiwiki","title":"Homer
|
124
|
+
Simpson","badges":[]},"fiwikiquote":{"site":"fiwikiquote","title":"Homer Simpson","badges":[]},"frwiki":{"site":"frwiki","title":"Homer
|
125
|
+
Simpson","badges":["Q17437798"]},"gawiki":{"site":"gawiki","title":"Homer
|
126
|
+
Simpson","badges":[]},"glwiki":{"site":"glwiki","title":"Homer Simpson","badges":[]},"gnwiki":{"site":"gnwiki","title":"Homer
|
127
|
+
Simpson","badges":[]},"hewiki":{"site":"hewiki","title":"\u05d4\u05d5\u05de\u05e8
|
128
|
+
\u05e1\u05d9\u05de\u05e4\u05e1\u05d5\u05df","badges":[]},"hewikiquote":{"site":"hewikiquote","title":"\u05d4\u05d5\u05de\u05e8
|
129
|
+
\u05e1\u05d9\u05de\u05e4\u05e1\u05d5\u05df","badges":[]},"hrwiki":{"site":"hrwiki","title":"Homer
|
130
|
+
Simpson","badges":[]},"huwiki":{"site":"huwiki","title":"Homer Simpson","badges":[]},"hywiki":{"site":"hywiki","title":"\u0540\u0578\u0574\u0565\u0580
|
131
|
+
\u054d\u056b\u0574\u057a\u057d\u0578\u0576","badges":[]},"idwiki":{"site":"idwiki","title":"Homer
|
132
|
+
Simpson","badges":[]},"iswiki":{"site":"iswiki","title":"H\u00f3mer Simpson","badges":[]},"itwiki":{"site":"itwiki","title":"Homer
|
133
|
+
Simpson","badges":["Q17437796"]},"itwikiquote":{"site":"itwikiquote","title":"Homer
|
134
|
+
Simpson","badges":[]},"jawiki":{"site":"jawiki","title":"\u30db\u30fc\u30de\u30fc\u30fb\u30b7\u30f3\u30d7\u30bd\u30f3","badges":[]},"kawiki":{"site":"kawiki","title":"\u10f0\u10dd\u10db\u10d4\u10e0
|
135
|
+
\u10e1\u10d8\u10db\u10de\u10e1\u10dd\u10dc\u10d8","badges":[]},"kowiki":{"site":"kowiki","title":"\ud638\uba38
|
136
|
+
\uc2ec\uc2a8","badges":[]},"lbwiki":{"site":"lbwiki","title":"Homer Simpson","badges":[]},"ltwiki":{"site":"ltwiki","title":"Homer
|
137
|
+
Simpson","badges":[]},"lvwiki":{"site":"lvwiki","title":"Hom\u0113rs Simpsons","badges":[]},"mrwiki":{"site":"mrwiki","title":"\u0939\u094b\u092e\u0930
|
138
|
+
\u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928","badges":[]},"nahwiki":{"site":"nahwiki","title":"Homer
|
139
|
+
Simpson","badges":[]},"newiki":{"site":"newiki","title":"\u0939\u094b\u092e\u0930
|
140
|
+
\u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928","badges":[]},"nlwiki":{"site":"nlwiki","title":"Homer
|
141
|
+
Simpson","badges":[]},"nowiki":{"site":"nowiki","title":"Homer Simpson","badges":[]},"nowikiquote":{"site":"nowikiquote","title":"Homer
|
142
|
+
Simpson","badges":[]},"ocwiki":{"site":"ocwiki","title":"Homer Simpson","badges":[]},"piwiki":{"site":"piwiki","title":"\u0939\u094b\u092e\u0930
|
143
|
+
\u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928","badges":[]},"plwiki":{"site":"plwiki","title":"Homer
|
144
|
+
Simpson","badges":[]},"plwikiquote":{"site":"plwikiquote","title":"Homer Simpson","badges":[]},"ptwiki":{"site":"ptwiki","title":"Homer
|
145
|
+
Simpson","badges":[]},"rowiki":{"site":"rowiki","title":"Homer Simpson","badges":[]},"ruwiki":{"site":"ruwiki","title":"\u0413\u043e\u043c\u0435\u0440
|
146
|
+
\u0421\u0438\u043c\u043f\u0441\u043e\u043d","badges":[]},"ruwikiquote":{"site":"ruwikiquote","title":"\u0413\u043e\u043c\u0435\u0440
|
147
|
+
\u0421\u0438\u043c\u043f\u0441\u043e\u043d","badges":[]},"sawiki":{"site":"sawiki","title":"\u0939\u094b\u092e\u0930
|
148
|
+
\u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928","badges":[]},"scnwiki":{"site":"scnwiki","title":"Homer
|
149
|
+
Simpson","badges":[]},"shwiki":{"site":"shwiki","title":"Homer Simpson","badges":[]},"simplewiki":{"site":"simplewiki","title":"Homer
|
150
|
+
Simpson","badges":[]},"skwiki":{"site":"skwiki","title":"Homer Simpson","badges":[]},"sqwiki":{"site":"sqwiki","title":"Homer
|
151
|
+
Simpson","badges":[]},"srwiki":{"site":"srwiki","title":"\u0425\u043e\u043c\u0435\u0440
|
152
|
+
\u040f\u0435\u0458 \u0421\u0438\u043c\u043f\u0441\u043e\u043d","badges":["Q17437798"]},"svwiki":{"site":"svwiki","title":"Homer
|
153
|
+
Simpson","badges":[]},"svwikiquote":{"site":"svwikiquote","title":"Homer Simpson","badges":[]},"thwiki":{"site":"thwiki","title":"\u0e42\u0e2e\u0e40\u0e21\u0e2d\u0e23\u0e4c
|
154
|
+
\u0e0b\u0e34\u0e21\u0e1b\u0e4c\u0e2a\u0e31\u0e19","badges":[]},"trwiki":{"site":"trwiki","title":"Homer
|
155
|
+
Simpson","badges":[]},"trwikiquote":{"site":"trwikiquote","title":"Homer Simpson","badges":[]},"ukwiki":{"site":"ukwiki","title":"\u0413\u043e\u043c\u0435\u0440
|
156
|
+
\u0421\u0456\u043c\u043f\u0441\u043e\u043d","badges":[]},"viwiki":{"site":"viwiki","title":"Homer
|
157
|
+
Simpson","badges":[]},"warwiki":{"site":"warwiki","title":"Homer Simpson","badges":[]},"zhwiki":{"site":"zhwiki","title":"\u970d\u9ed8\u00b7\u8f9b\u666e\u68ee","badges":["Q17437798"]}}}},"success":1}'
|
158
|
+
http_version:
|
159
|
+
recorded_at: Wed, 01 Oct 2014 15:12:16 GMT
|
160
|
+
recorded_with: VCR 2.9.3
|
@@ -0,0 +1,160 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://www.wikidata.org/w/api.php?action=wbgetentities&format=json&sites=enwiki&titles=Homer%20Simpson
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.9.0
|
12
|
+
Expect:
|
13
|
+
- ''
|
14
|
+
response:
|
15
|
+
status:
|
16
|
+
code: 200
|
17
|
+
message: OK
|
18
|
+
headers:
|
19
|
+
Server:
|
20
|
+
- Apache
|
21
|
+
X-Content-Type-Options:
|
22
|
+
- nosniff
|
23
|
+
Cache-Control:
|
24
|
+
- private
|
25
|
+
X-Frame-Options:
|
26
|
+
- DENY
|
27
|
+
Content-Type:
|
28
|
+
- application/json; charset=utf-8
|
29
|
+
Vary:
|
30
|
+
- Accept-Encoding,X-Use-HHVM
|
31
|
+
X-Varnish:
|
32
|
+
- 2282079673, 3231260063, 1032008906
|
33
|
+
Via:
|
34
|
+
- 1.1 varnish, 1.1 varnish, 1.1 varnish
|
35
|
+
Transfer-Encoding:
|
36
|
+
- chunked
|
37
|
+
Date:
|
38
|
+
- Wed, 01 Oct 2014 15:08:43 GMT
|
39
|
+
Age:
|
40
|
+
- '0'
|
41
|
+
Connection:
|
42
|
+
- keep-alive
|
43
|
+
X-Cache:
|
44
|
+
- cp1068 miss (0), amssq48 miss (0), amssq54 frontend miss (0)
|
45
|
+
X-Analytics:
|
46
|
+
- php=zend
|
47
|
+
Set-Cookie:
|
48
|
+
- GeoIP=FR:Sainte-luce-sur-loire:47.2500:-1.5000:v4; Path=/; Domain=.wikidata.org
|
49
|
+
body:
|
50
|
+
encoding: ASCII-8BIT
|
51
|
+
string: '{"entities":{"Q7810":{"pageid":9056,"ns":0,"title":"Q7810","lastrevid":159661784,"modified":"2014-09-25T12:26:51Z","id":"Q7810","type":"item","aliases":{"de":[{"language":"de","value":"Homer
|
52
|
+
J. Simpsons"},{"language":"de","value":"Homer Jay Simpson"},{"language":"de","value":"Captain
|
53
|
+
Albern"},{"language":"de","value":"Max Power"},{"language":"de","value":"Dancin\u2019
|
54
|
+
Homer"},{"language":"de","value":"Andreas T. aus Happyhill"},{"language":"de","value":"Colonel
|
55
|
+
Homer"},{"language":"de","value":"Mr. Schneepflug"},{"language":"de","value":"Brian
|
56
|
+
McGee"},{"language":"de","value":"Mr. Thompson"},{"language":"de","value":"der
|
57
|
+
Bierbaron"},{"language":"de","value":"Arthur N. aus Rosenburg"},{"language":"de","value":"Mr.
|
58
|
+
X"},{"language":"de","value":"El Homo"},{"language":"de","value":"Elvis Jagger
|
59
|
+
Abdul-Jabbar"},{"language":"de","value":"Tortenmann"},{"language":"de","value":"Homer
|
60
|
+
Sanchez"},{"language":"de","value":"Homie"},{"language":"de","value":"Admiral
|
61
|
+
Adonis"},{"language":"de","value":"Commander Cool"}],"en":[{"language":"en","value":"Homer
|
62
|
+
Jay Simpson"}],"it":[{"language":"it","value":"Homer J. Simpson"}]},"labels":{"it":{"language":"it","value":"Homer
|
63
|
+
Simpson"},"fr":{"language":"fr","value":"Homer Simpson"},"en":{"language":"en","value":"Homer
|
64
|
+
Simpson"},"de":{"language":"de","value":"Homer Simpson"},"af":{"language":"af","value":"Homer
|
65
|
+
Simpson"},"ast":{"language":"ast","value":"Homer Simpson"},"az":{"language":"az","value":"Homer
|
66
|
+
Simpson"},"bar":{"language":"bar","value":"Homer Simpson"},"be":{"language":"be","value":"\u0413\u0430\u043c\u0435\u0440
|
67
|
+
\u0421\u0456\u043c\u043f\u0441\u0430\u043d"},"bg":{"language":"bg","value":"\u0425\u043e\u0443\u043c\u044a\u0440
|
68
|
+
\u0421\u0438\u043c\u043f\u0441\u044a\u043d"},"bo":{"language":"bo","value":"\u0f67\u0f7c\u0f60\u0f7c\u0f0b\u0f58\u0f62\u0f0b\u0f66\u0f72\u0f58\u0f0b\u0f56\u0f74\u0f0b\u0f66\u0f53\u0f0d"},"bs":{"language":"bs","value":"Homer
|
69
|
+
Simpson"},"ca":{"language":"ca","value":"Homer Simpson"},"cs":{"language":"cs","value":"Homer
|
70
|
+
Simpson"},"cy":{"language":"cy","value":"Homer Simpson"},"da":{"language":"da","value":"Homer
|
71
|
+
Simpson"},"en-ca":{"language":"en-ca","value":"Homer Simpson"},"en-gb":{"language":"en-gb","value":"Homer
|
72
|
+
Simpson"},"es":{"language":"es","value":"Homer Simpson"},"et":{"language":"et","value":"Homer
|
73
|
+
Simpson"},"eu":{"language":"eu","value":"Homer Simpson"},"fa":{"language":"fa","value":"\u0647\u0648\u0645\u0631
|
74
|
+
\u0633\u06cc\u0645\u067e\u0633\u0648\u0646"},"fi":{"language":"fi","value":"Homer
|
75
|
+
Simpson"},"ga":{"language":"ga","value":"Homer Simpson"},"gl":{"language":"gl","value":"Homer
|
76
|
+
Simpson"},"he":{"language":"he","value":"\u05d4\u05d5\u05de\u05e8 \u05e1\u05d9\u05de\u05e4\u05e1\u05d5\u05df"},"hr":{"language":"hr","value":"Homer
|
77
|
+
Simpson"},"hu":{"language":"hu","value":"Homer Simpson"},"hy":{"language":"hy","value":"\u0540\u0578\u0574\u0565\u0580
|
78
|
+
\u054d\u056b\u0574\u057a\u057d\u0578\u0576"},"id":{"language":"id","value":"Homer
|
79
|
+
Simpson"},"is":{"language":"is","value":"H\u00f3mer Simpson"},"ja":{"language":"ja","value":"\u30db\u30fc\u30de\u30fc\u30fb\u30b7\u30f3\u30d7\u30bd\u30f3"},"ka":{"language":"ka","value":"\u10f0\u10dd\u10db\u10d4\u10e0
|
80
|
+
\u10e1\u10d8\u10db\u10de\u10e1\u10dd\u10dc\u10d8"},"ko":{"language":"ko","value":"\ud638\uba38
|
81
|
+
\uc2ec\uc2a8"},"lb":{"language":"lb","value":"Homer Simpson"},"lv":{"language":"lv","value":"Hom\u0113rs
|
82
|
+
Simpsons"},"mr":{"language":"mr","value":"\u0939\u094b\u092e\u0930 \u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928"},"nah":{"language":"nah","value":"Homer
|
83
|
+
Simpson"},"ne":{"language":"ne","value":"\u0939\u094b\u092e\u0930 \u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928"},"nl":{"language":"nl","value":"Homer
|
84
|
+
Simpson"},"oc":{"language":"oc","value":"Homer Simpson"},"pi":{"language":"pi","value":"\u0939\u094b\u092e\u0930
|
85
|
+
\u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928"},"pl":{"language":"pl","value":"Homer
|
86
|
+
Simpson"},"pt":{"language":"pt","value":"Homer Simpson"},"pt-br":{"language":"pt-br","value":"Homer
|
87
|
+
Simpson"},"ro":{"language":"ro","value":"Homer Simpson"},"ru":{"language":"ru","value":"\u0413\u043e\u043c\u0435\u0440
|
88
|
+
\u0421\u0438\u043c\u043f\u0441\u043e\u043d"},"sa":{"language":"sa","value":"\u0939\u094b\u092e\u0930
|
89
|
+
\u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928"},"scn":{"language":"scn","value":"Homer
|
90
|
+
Simpson"},"sh":{"language":"sh","value":"Homer Simpson"},"sk":{"language":"sk","value":"Homer
|
91
|
+
Simpson"},"sq":{"language":"sq","value":"Homer Simpson"},"sr":{"language":"sr","value":"\u0425\u043e\u043c\u0435\u0440
|
92
|
+
\u040f\u0435\u0458 \u0421\u0438\u043c\u043f\u0441\u043e\u043d"},"sv":{"language":"sv","value":"Homer
|
93
|
+
Simpson"},"th":{"language":"th","value":"\u0e42\u0e2e\u0e40\u0e21\u0e2d\u0e23\u0e4c
|
94
|
+
\u0e0b\u0e34\u0e21\u0e1b\u0e4c\u0e2a\u0e31\u0e19"},"tr":{"language":"tr","value":"Homer
|
95
|
+
Simpson"},"uk":{"language":"uk","value":"\u0413\u043e\u043c\u0435\u0440 \u0421\u0456\u043c\u043f\u0441\u043e\u043d"},"vi":{"language":"vi","value":"Homer
|
96
|
+
Simpson"},"war":{"language":"war","value":"Homer Simpson"},"zh":{"language":"zh","value":"\u970d\u9ed8\u00b7\u8f9b\u666e\u68ee"},"gn":{"language":"gn","value":"Homer
|
97
|
+
Simpson"},"lt":{"language":"lt","value":"Homer Simpson"},"nb":{"language":"nb","value":"Homer
|
98
|
+
Simpson"},"ar":{"language":"ar","value":"\u0647\u0648\u0645\u0631 \u0633\u064a\u0645\u0628\u0633\u0648\u0646"},"ckb":{"language":"ckb","value":"\u06be\u06c6\u0645\u06d5\u0631
|
99
|
+
\u0633\u06cc\u0645\u067e\u0633\u06c6\u0646"},"nn":{"language":"nn","value":"Homer
|
100
|
+
Simpson"},"eo":{"language":"eo","value":"Homer Simpson"}},"descriptions":{"it":{"language":"it","value":"protagonista
|
101
|
+
della serie I Simpson"},"de":{"language":"de","value":"Figur der Simpsons"},"ru":{"language":"ru","value":"\u0433\u043b\u0430\u0432\u043d\u044b\u0439
|
102
|
+
\u0433\u0435\u0440\u043e\u0439 \u043c\u0443\u043b\u044c\u0442\u0441\u0435\u0440\u0438\u0430\u043b\u0430
|
103
|
+
\u00ab\u0421\u0438\u043c\u043f\u0441\u043e\u043d\u044b\u00bb"},"es":{"language":"es","value":"personaje
|
104
|
+
de dibujos animados"},"en":{"language":"en","value":"fictional character from
|
105
|
+
The Simpsons franchise"},"fr":{"language":"fr","value":"personnage de la s\u00e9rie
|
106
|
+
t\u00e9l\u00e9vis\u00e9e Les Simpson"},"nl":{"language":"nl","value":"personage
|
107
|
+
uit The Simpsons"}},"claims":{"P7":[{"id":"Q7810$2eb0aa51-40cb-3312-5b5d-777a34b3be23","mainsnak":{"snaktype":"value","property":"P7","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":2340973},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P345":[{"id":"q7810$D52517F8-64C0-498F-BD1F-2665DADE3A34","mainsnak":{"snaktype":"value","property":"P345","datatype":"string","datavalue":{"value":"ch0003002","type":"string"}},"type":"statement","rank":"preferred"}],"P26":[{"id":"q7810$7A080AE2-BE0B-4D9E-8B8C-6C1D5FD5C838","mainsnak":{"snaktype":"value","property":"P26","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":7828},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P21":[{"id":"q7810$EBCB4B01-C592-44E7-9DB8-F090E62074E2","mainsnak":{"snaktype":"value","property":"P21","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":6581097},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P40":[{"id":"q7810$2B9F1E2C-7583-4DD8-8CEB-F367FC0641E1","mainsnak":{"snaktype":"value","property":"P40","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":5480},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"},{"id":"q7810$A6DC727E-3642-470C-BD93-6707640CD90C","mainsnak":{"snaktype":"value","property":"P40","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":5846},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"},{"id":"q7810$E580F297-F30A-4680-BA5C-3559041E3B0F","mainsnak":{"snaktype":"value","property":"P40","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":7834},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P22":[{"id":"q7810$571A84C2-93C0-48E3-8DD3-A92A7D57BEA9","mainsnak":{"snaktype":"value","property":"P22","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":842104},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P25":[{"id":"q7810$46038435-4D85-46AB-90CE-5555ACD71760","mainsnak":{"snaktype":"value","property":"P25","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":1641818},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P19":[{"id":"q7810$F3E8C187-B8F2-4096-B15E-C4168F90CE42","mainsnak":{"snaktype":"value","property":"P19","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":151076},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P434":[{"id":"q7810$7604e6cb-443a-65f9-2ab3-70db024360af","mainsnak":{"snaktype":"value","property":"P434","datatype":"string","datavalue":{"value":"109a53ec-73e7-44e8-81cd-484114849a02","type":"string"}},"type":"statement","rank":"normal"}],"P373":[{"id":"q7810$1511B4E7-E94C-45FA-8DF5-07616B0B2A86","mainsnak":{"snaktype":"novalue","property":"P373"},"type":"statement","rank":"normal"}],"P27":[{"id":"Q7810$3C8AEBB8-9F14-4E4C-B386-FFAFBDBC9F46","mainsnak":{"snaktype":"value","property":"P27","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":30},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P646":[{"id":"Q7810$8F38CA22-CBE7-45D0-A02D-B2D5950B6648","mainsnak":{"snaktype":"value","property":"P646","datatype":"string","datavalue":{"value":"/m/0h545","type":"string"}},"type":"statement","rank":"normal","references":[{"hash":"b923b0d68beb300866b87ead39f61e63ec30d8af","snaks":{"P248":[{"snaktype":"value","property":"P248","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":15241312},"type":"wikibase-entityid"}}],"P577":[{"snaktype":"value","property":"P577","datatype":"time","datavalue":{"value":{"time":"+00000002013-10-28T00:00:00Z","timezone":0,"before":0,"after":0,"precision":11,"calendarmodel":"http://www.wikidata.org/entity/Q1985727"},"type":"time"}}]},"snaks-order":["P248","P577"]}]}],"P569":[{"id":"Q7810$B87E9E15-38ED-4A83-B7A5-0EA872EC98EE","mainsnak":{"snaktype":"value","property":"P569","datatype":"time","datavalue":{"value":{"time":"+00000001956-06-18T00:00:00Z","timezone":0,"before":0,"after":0,"precision":11,"calendarmodel":"http://www.wikidata.org/entity/Q1985727"},"type":"time"}},"type":"statement","rank":"normal"}],"P31":[{"id":"Q7810$ae77588c-491b-63c1-7bc0-3f902811f72a","mainsnak":{"snaktype":"value","property":"P31","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":15632617},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}],"P1441":[{"id":"Q7810$0B70914E-EA32-4B54-AF9F-08CA8716557C","mainsnak":{"snaktype":"value","property":"P1441","datatype":"wikibase-item","datavalue":{"value":{"entity-type":"item","numeric-id":886},"type":"wikibase-entityid"}},"type":"statement","rank":"normal"}]},"sitelinks":{"afwiki":{"site":"afwiki","title":"Homer
|
108
|
+
Simpson","badges":[]},"arwiki":{"site":"arwiki","title":"\u0647\u0648\u0645\u0631
|
109
|
+
\u0633\u064a\u0645\u0628\u0633\u0648\u0646","badges":[]},"astwiki":{"site":"astwiki","title":"Homer
|
110
|
+
Simpson","badges":[]},"azwiki":{"site":"azwiki","title":"Homer Simpson","badges":[]},"azwikiquote":{"site":"azwikiquote","title":"Homer
|
111
|
+
Simpson","badges":[]},"barwiki":{"site":"barwiki","title":"Homer Simpson","badges":[]},"bewiki":{"site":"bewiki","title":"\u0413\u0430\u043c\u0435\u0440
|
112
|
+
\u0421\u0456\u043c\u043f\u0441\u0430\u043d","badges":[]},"bgwiki":{"site":"bgwiki","title":"\u0425\u043e\u0443\u043c\u044a\u0440
|
113
|
+
\u0421\u0438\u043c\u043f\u0441\u044a\u043d","badges":[]},"bowiki":{"site":"bowiki","title":"\u0f67\u0f7c\u0f60\u0f7c\u0f0b\u0f58\u0f62\u0f0b\u0f66\u0f72\u0f58\u0f0b\u0f56\u0f74\u0f0b\u0f66\u0f53\u0f0d","badges":[]},"bswiki":{"site":"bswiki","title":"Homer
|
114
|
+
Simpson","badges":[]},"bswikiquote":{"site":"bswikiquote","title":"Homer Simpson","badges":[]},"cawiki":{"site":"cawiki","title":"Homer
|
115
|
+
Simpson","badges":[]},"ckbwiki":{"site":"ckbwiki","title":"\u06be\u06c6\u0645\u06d5\u0631
|
116
|
+
\u0633\u06cc\u0645\u067e\u0633\u06c6\u0646","badges":[]},"cswiki":{"site":"cswiki","title":"Homer
|
117
|
+
Simpson","badges":[]},"cywiki":{"site":"cywiki","title":"Homer Simpson","badges":[]},"dawiki":{"site":"dawiki","title":"Homer
|
118
|
+
Simpson","badges":[]},"dawikiquote":{"site":"dawikiquote","title":"Homer Simpson","badges":[]},"dewiki":{"site":"dewiki","title":"Homer
|
119
|
+
Simpson","badges":[]},"enwiki":{"site":"enwiki","title":"Homer Simpson","badges":["Q17437796"]},"eowikiquote":{"site":"eowikiquote","title":"Homer
|
120
|
+
Simpson","badges":[]},"eswiki":{"site":"eswiki","title":"Homer Simpson","badges":["Q17437796"]},"eswikiquote":{"site":"eswikiquote","title":"Homer
|
121
|
+
J. Simpson","badges":[]},"etwiki":{"site":"etwiki","title":"Homer Simpson","badges":[]},"euwiki":{"site":"euwiki","title":"Homer
|
122
|
+
Simpson","badges":[]},"fawiki":{"site":"fawiki","title":"\u0647\u0648\u0645\u0631
|
123
|
+
\u0633\u06cc\u0645\u067e\u0633\u0648\u0646","badges":[]},"fiwiki":{"site":"fiwiki","title":"Homer
|
124
|
+
Simpson","badges":[]},"fiwikiquote":{"site":"fiwikiquote","title":"Homer Simpson","badges":[]},"frwiki":{"site":"frwiki","title":"Homer
|
125
|
+
Simpson","badges":["Q17437798"]},"gawiki":{"site":"gawiki","title":"Homer
|
126
|
+
Simpson","badges":[]},"glwiki":{"site":"glwiki","title":"Homer Simpson","badges":[]},"gnwiki":{"site":"gnwiki","title":"Homer
|
127
|
+
Simpson","badges":[]},"hewiki":{"site":"hewiki","title":"\u05d4\u05d5\u05de\u05e8
|
128
|
+
\u05e1\u05d9\u05de\u05e4\u05e1\u05d5\u05df","badges":[]},"hewikiquote":{"site":"hewikiquote","title":"\u05d4\u05d5\u05de\u05e8
|
129
|
+
\u05e1\u05d9\u05de\u05e4\u05e1\u05d5\u05df","badges":[]},"hrwiki":{"site":"hrwiki","title":"Homer
|
130
|
+
Simpson","badges":[]},"huwiki":{"site":"huwiki","title":"Homer Simpson","badges":[]},"hywiki":{"site":"hywiki","title":"\u0540\u0578\u0574\u0565\u0580
|
131
|
+
\u054d\u056b\u0574\u057a\u057d\u0578\u0576","badges":[]},"idwiki":{"site":"idwiki","title":"Homer
|
132
|
+
Simpson","badges":[]},"iswiki":{"site":"iswiki","title":"H\u00f3mer Simpson","badges":[]},"itwiki":{"site":"itwiki","title":"Homer
|
133
|
+
Simpson","badges":["Q17437796"]},"itwikiquote":{"site":"itwikiquote","title":"Homer
|
134
|
+
Simpson","badges":[]},"jawiki":{"site":"jawiki","title":"\u30db\u30fc\u30de\u30fc\u30fb\u30b7\u30f3\u30d7\u30bd\u30f3","badges":[]},"kawiki":{"site":"kawiki","title":"\u10f0\u10dd\u10db\u10d4\u10e0
|
135
|
+
\u10e1\u10d8\u10db\u10de\u10e1\u10dd\u10dc\u10d8","badges":[]},"kowiki":{"site":"kowiki","title":"\ud638\uba38
|
136
|
+
\uc2ec\uc2a8","badges":[]},"lbwiki":{"site":"lbwiki","title":"Homer Simpson","badges":[]},"ltwiki":{"site":"ltwiki","title":"Homer
|
137
|
+
Simpson","badges":[]},"lvwiki":{"site":"lvwiki","title":"Hom\u0113rs Simpsons","badges":[]},"mrwiki":{"site":"mrwiki","title":"\u0939\u094b\u092e\u0930
|
138
|
+
\u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928","badges":[]},"nahwiki":{"site":"nahwiki","title":"Homer
|
139
|
+
Simpson","badges":[]},"newiki":{"site":"newiki","title":"\u0939\u094b\u092e\u0930
|
140
|
+
\u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928","badges":[]},"nlwiki":{"site":"nlwiki","title":"Homer
|
141
|
+
Simpson","badges":[]},"nowiki":{"site":"nowiki","title":"Homer Simpson","badges":[]},"nowikiquote":{"site":"nowikiquote","title":"Homer
|
142
|
+
Simpson","badges":[]},"ocwiki":{"site":"ocwiki","title":"Homer Simpson","badges":[]},"piwiki":{"site":"piwiki","title":"\u0939\u094b\u092e\u0930
|
143
|
+
\u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928","badges":[]},"plwiki":{"site":"plwiki","title":"Homer
|
144
|
+
Simpson","badges":[]},"plwikiquote":{"site":"plwikiquote","title":"Homer Simpson","badges":[]},"ptwiki":{"site":"ptwiki","title":"Homer
|
145
|
+
Simpson","badges":[]},"rowiki":{"site":"rowiki","title":"Homer Simpson","badges":[]},"ruwiki":{"site":"ruwiki","title":"\u0413\u043e\u043c\u0435\u0440
|
146
|
+
\u0421\u0438\u043c\u043f\u0441\u043e\u043d","badges":[]},"ruwikiquote":{"site":"ruwikiquote","title":"\u0413\u043e\u043c\u0435\u0440
|
147
|
+
\u0421\u0438\u043c\u043f\u0441\u043e\u043d","badges":[]},"sawiki":{"site":"sawiki","title":"\u0939\u094b\u092e\u0930
|
148
|
+
\u0938\u093f\u092e\u094d\u092a\u094d\u0938\u0928","badges":[]},"scnwiki":{"site":"scnwiki","title":"Homer
|
149
|
+
Simpson","badges":[]},"shwiki":{"site":"shwiki","title":"Homer Simpson","badges":[]},"simplewiki":{"site":"simplewiki","title":"Homer
|
150
|
+
Simpson","badges":[]},"skwiki":{"site":"skwiki","title":"Homer Simpson","badges":[]},"sqwiki":{"site":"sqwiki","title":"Homer
|
151
|
+
Simpson","badges":[]},"srwiki":{"site":"srwiki","title":"\u0425\u043e\u043c\u0435\u0440
|
152
|
+
\u040f\u0435\u0458 \u0421\u0438\u043c\u043f\u0441\u043e\u043d","badges":["Q17437798"]},"svwiki":{"site":"svwiki","title":"Homer
|
153
|
+
Simpson","badges":[]},"svwikiquote":{"site":"svwikiquote","title":"Homer Simpson","badges":[]},"thwiki":{"site":"thwiki","title":"\u0e42\u0e2e\u0e40\u0e21\u0e2d\u0e23\u0e4c
|
154
|
+
\u0e0b\u0e34\u0e21\u0e1b\u0e4c\u0e2a\u0e31\u0e19","badges":[]},"trwiki":{"site":"trwiki","title":"Homer
|
155
|
+
Simpson","badges":[]},"trwikiquote":{"site":"trwikiquote","title":"Homer Simpson","badges":[]},"ukwiki":{"site":"ukwiki","title":"\u0413\u043e\u043c\u0435\u0440
|
156
|
+
\u0421\u0456\u043c\u043f\u0441\u043e\u043d","badges":[]},"viwiki":{"site":"viwiki","title":"Homer
|
157
|
+
Simpson","badges":[]},"warwiki":{"site":"warwiki","title":"Homer Simpson","badges":[]},"zhwiki":{"site":"zhwiki","title":"\u970d\u9ed8\u00b7\u8f9b\u666e\u68ee","badges":["Q17437798"]}}}},"success":1}'
|
158
|
+
http_version:
|
159
|
+
recorded_at: Wed, 01 Oct 2014 15:08:43 GMT
|
160
|
+
recorded_with: VCR 2.9.3
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wikidata-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kévin Lacointe
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-10-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -162,7 +162,6 @@ files:
|
|
162
162
|
- lib/wikidata/property/string.rb
|
163
163
|
- lib/wikidata/property/time.rb
|
164
164
|
- lib/wikidata/property/url.rb
|
165
|
-
- lib/wikidata/resource.rb
|
166
165
|
- lib/wikidata/response.rb
|
167
166
|
- lib/wikidata/search_response.rb
|
168
167
|
- lib/wikidata/version.rb
|
@@ -176,6 +175,8 @@ files:
|
|
176
175
|
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_globe_coordinate/should_return_GlobeCoordinate_from_a_property_id_P625_for_coordinate_location_here_.yml
|
177
176
|
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_string/should_return_String_from_a_key_freebase_identifier_here_.yml
|
178
177
|
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_string/should_return_String_from_a_property_id_P646_for_freebase_identifier_here_.yml
|
178
|
+
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_string/should_return_a_nil_property_id_if_not_an_item.yml
|
179
|
+
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_string/should_return_property_id.yml
|
179
180
|
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_url/should_return_Url_from_a_key_official_website_here_.yml
|
180
181
|
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_url/should_return_Url_from_a_property_id_P856_for_official_website_here_.yml
|
181
182
|
- spec/fixtures/vcr/Wikidata_Entity/properties/should_return_aliases.yml
|
@@ -236,6 +237,8 @@ test_files:
|
|
236
237
|
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_globe_coordinate/should_return_GlobeCoordinate_from_a_property_id_P625_for_coordinate_location_here_.yml
|
237
238
|
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_string/should_return_String_from_a_key_freebase_identifier_here_.yml
|
238
239
|
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_string/should_return_String_from_a_property_id_P646_for_freebase_identifier_here_.yml
|
240
|
+
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_string/should_return_a_nil_property_id_if_not_an_item.yml
|
241
|
+
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_string/should_return_property_id.yml
|
239
242
|
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_url/should_return_Url_from_a_key_official_website_here_.yml
|
240
243
|
- spec/fixtures/vcr/Wikidata_Entity/properties/properties/of_type_url/should_return_Url_from_a_property_id_P856_for_official_website_here_.yml
|
241
244
|
- spec/fixtures/vcr/Wikidata_Entity/properties/should_return_aliases.yml
|
data/lib/wikidata/resource.rb
DELETED
@@ -1,69 +0,0 @@
|
|
1
|
-
module Wikidata
|
2
|
-
class Resource
|
3
|
-
attr_accessor :item
|
4
|
-
delegate :claims_for_property_id, to: :item
|
5
|
-
|
6
|
-
def initialize item
|
7
|
-
return unless item.data_hash
|
8
|
-
@item = item
|
9
|
-
end
|
10
|
-
|
11
|
-
def name
|
12
|
-
return @_name if @_name
|
13
|
-
%w{fr en}.each do |l|
|
14
|
-
@_name ||= item.labels[l].value if item.data_hash[:labels] && item.labels[l]
|
15
|
-
@_name ||= item.sitelinks["#{l}wiki"].title if item.data_hash[:sitelinks] && item.sitelinks["#{l}wiki"]
|
16
|
-
end
|
17
|
-
@_name
|
18
|
-
end
|
19
|
-
|
20
|
-
def url
|
21
|
-
Gaston.wikidata.item_url.gsub(':id', item.id)
|
22
|
-
end
|
23
|
-
|
24
|
-
Gaston.wikidata.accessors.each do |k|
|
25
|
-
define_method k do
|
26
|
-
item.data_hash[k]
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
Gaston.wikidata.mapping.resources.each do |k, code|
|
31
|
-
define_method k do
|
32
|
-
property code
|
33
|
-
end
|
34
|
-
define_method "#{k}_id" do
|
35
|
-
property_id code
|
36
|
-
end
|
37
|
-
end
|
38
|
-
Gaston.wikidata.mapping.collections.each do |k, code|
|
39
|
-
define_method k do
|
40
|
-
properties code
|
41
|
-
end
|
42
|
-
define_method "#{k}_ids" do
|
43
|
-
property_ids code
|
44
|
-
end
|
45
|
-
end
|
46
|
-
|
47
|
-
def properties code
|
48
|
-
claims_for_property_id(code).map {|a| Wikidata::Attribute.build a }
|
49
|
-
end
|
50
|
-
|
51
|
-
def property code
|
52
|
-
properties(code).first
|
53
|
-
end
|
54
|
-
|
55
|
-
def property_ids code
|
56
|
-
claims_for_property_id(code).map do |a|
|
57
|
-
begin
|
58
|
-
"Q#{a.mainsnak.value.data_hash['numeric-id']}"
|
59
|
-
rescue
|
60
|
-
nil
|
61
|
-
end
|
62
|
-
end.compact
|
63
|
-
end
|
64
|
-
|
65
|
-
def property_id code
|
66
|
-
property_ids(code).first
|
67
|
-
end
|
68
|
-
end
|
69
|
-
end
|