factbook-readers 0.0.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.
- checksums.yaml +7 -0
- data/CHANGELOG.md +3 -0
- data/Manifest.txt +56 -0
- data/README.md +196 -0
- data/Rakefile +34 -0
- data/data/attributes.yml +337 -0
- data/data/categories.csv +164 -0
- data/data/codes.csv +262 -0
- data/data/codesxref.csv +280 -0
- data/data/comparisons.csv +75 -0
- data/lib/factbook-readers.rb +59 -0
- data/lib/factbook-readers/attributes.rb +74 -0
- data/lib/factbook-readers/builder.rb +212 -0
- data/lib/factbook-readers/builder_item.rb +185 -0
- data/lib/factbook-readers/builder_json.rb +79 -0
- data/lib/factbook-readers/codes.rb +122 -0
- data/lib/factbook-readers/comparisons.rb +50 -0
- data/lib/factbook-readers/counter.rb +48 -0
- data/lib/factbook-readers/normalize.rb +43 -0
- data/lib/factbook-readers/page.rb +148 -0
- data/lib/factbook-readers/page_info.rb +12 -0
- data/lib/factbook-readers/reader_json.rb +51 -0
- data/lib/factbook-readers/sanitizer.rb +307 -0
- data/lib/factbook-readers/sect.rb +29 -0
- data/lib/factbook-readers/subsect.rb +18 -0
- data/lib/factbook-readers/table.rb +52 -0
- data/lib/factbook-readers/utils.rb +47 -0
- data/lib/factbook-readers/utils_info.rb +129 -0
- data/lib/factbook-readers/version.rb +24 -0
- data/lib/factbook/readers.rb +5 -0
- data/test/data/au.html +579 -0
- data/test/data/au.yml +8 -0
- data/test/data/be.html +596 -0
- data/test/data/be.yml +8 -0
- data/test/data/json/au.json +892 -0
- data/test/data/src/ag.html +716 -0
- data/test/data/src/au-2015-09-24.html +2006 -0
- data/test/data/src/au.html +658 -0
- data/test/data/src/be-2015-09-24.html +2011 -0
- data/test/data/src/be.html +648 -0
- data/test/helper.rb +11 -0
- data/test/test_attribs.rb +87 -0
- data/test/test_attribs_def.rb +20 -0
- data/test/test_builder.rb +35 -0
- data/test/test_codes.rb +76 -0
- data/test/test_comparisons.rb +19 -0
- data/test/test_convert.rb +30 -0
- data/test/test_counter.rb +31 -0
- data/test/test_fields.rb +52 -0
- data/test/test_importer.rb +56 -0
- data/test/test_item_builder.rb +99 -0
- data/test/test_json.rb +45 -0
- data/test/test_json_builder.rb +25 -0
- data/test/test_normalize.rb +23 -0
- data/test/test_page.rb +38 -0
- data/test/test_sanitizer.rb +39 -0
- data/test/test_sanitizer_regex.rb +89 -0
- metadata +196 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: dc307d415f957d373118337b72baa5ca9c0b5686
|
4
|
+
data.tar.gz: f5241909514a895878e29b1e9e3dd0f3fddf9088
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: cd89c3f31089bb3256969076a69fe2dcc3e04f762033cec14e621d5bbff289f72aecd4f6a67e0c32b864588c56f3a57e8059f9957f885293875a95695dd22059
|
7
|
+
data.tar.gz: 5f55a31397cbfa186cb85597ec280a2fc94fe63e8b595ccf18e36e2168dff531e19d0a64a63281fba380356df23b56769318aecf1d84c52277e511e5cb21998f
|
data/CHANGELOG.md
ADDED
data/Manifest.txt
ADDED
@@ -0,0 +1,56 @@
|
|
1
|
+
CHANGELOG.md
|
2
|
+
Manifest.txt
|
3
|
+
README.md
|
4
|
+
Rakefile
|
5
|
+
data/attributes.yml
|
6
|
+
data/categories.csv
|
7
|
+
data/codes.csv
|
8
|
+
data/codesxref.csv
|
9
|
+
data/comparisons.csv
|
10
|
+
lib/factbook-readers.rb
|
11
|
+
lib/factbook-readers/attributes.rb
|
12
|
+
lib/factbook-readers/builder.rb
|
13
|
+
lib/factbook-readers/builder_item.rb
|
14
|
+
lib/factbook-readers/builder_json.rb
|
15
|
+
lib/factbook-readers/codes.rb
|
16
|
+
lib/factbook-readers/comparisons.rb
|
17
|
+
lib/factbook-readers/counter.rb
|
18
|
+
lib/factbook-readers/normalize.rb
|
19
|
+
lib/factbook-readers/page.rb
|
20
|
+
lib/factbook-readers/page_info.rb
|
21
|
+
lib/factbook-readers/reader_json.rb
|
22
|
+
lib/factbook-readers/sanitizer.rb
|
23
|
+
lib/factbook-readers/sect.rb
|
24
|
+
lib/factbook-readers/subsect.rb
|
25
|
+
lib/factbook-readers/table.rb
|
26
|
+
lib/factbook-readers/utils.rb
|
27
|
+
lib/factbook-readers/utils_info.rb
|
28
|
+
lib/factbook-readers/version.rb
|
29
|
+
lib/factbook/readers.rb
|
30
|
+
test/data/au.html
|
31
|
+
test/data/au.yml
|
32
|
+
test/data/be.html
|
33
|
+
test/data/be.yml
|
34
|
+
test/data/json/au.json
|
35
|
+
test/data/src/ag.html
|
36
|
+
test/data/src/au-2015-09-24.html
|
37
|
+
test/data/src/au.html
|
38
|
+
test/data/src/be-2015-09-24.html
|
39
|
+
test/data/src/be.html
|
40
|
+
test/helper.rb
|
41
|
+
test/test_attribs.rb
|
42
|
+
test/test_attribs_def.rb
|
43
|
+
test/test_builder.rb
|
44
|
+
test/test_codes.rb
|
45
|
+
test/test_comparisons.rb
|
46
|
+
test/test_convert.rb
|
47
|
+
test/test_counter.rb
|
48
|
+
test/test_fields.rb
|
49
|
+
test/test_importer.rb
|
50
|
+
test/test_item_builder.rb
|
51
|
+
test/test_json.rb
|
52
|
+
test/test_json_builder.rb
|
53
|
+
test/test_normalize.rb
|
54
|
+
test/test_page.rb
|
55
|
+
test/test_sanitizer.rb
|
56
|
+
test/test_sanitizer_regex.rb
|
data/README.md
ADDED
@@ -0,0 +1,196 @@
|
|
1
|
+
# factbook-readers - turn thee world factbook country profile pages into open structured data e.g JSON
|
2
|
+
|
3
|
+
* home :: [github.com/factbook/factbook](https://github.com/factbook/factbook)
|
4
|
+
* bugs :: [github.com/factbook/factbook/issues](https://github.com/factbook/factbook/issues)
|
5
|
+
* gem :: [rubygems.org/gems/factbook-readers](https://rubygems.org/gems/factbook-readers)
|
6
|
+
* rdoc :: [rubydoc.info/gems/factbook-readers](http://rubydoc.info/gems/factbook-readers)
|
7
|
+
* forum :: [groups.google.com/group/openmundi](https://groups.google.com/group/openmundi)
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
## Usage
|
12
|
+
|
13
|
+
### Get country profile page as a hash (that is, structured data e.g. nested key/values)
|
14
|
+
|
15
|
+
```ruby
|
16
|
+
page = Factbook::Page.new( 'br' ) # br is the country code for Brazil
|
17
|
+
pp page.data # pretty print hash
|
18
|
+
```
|
19
|
+
|
20
|
+
resulting in:
|
21
|
+
|
22
|
+
```ruby
|
23
|
+
{"Introduction"=>
|
24
|
+
{"Background"=>
|
25
|
+
{"text"=>
|
26
|
+
"Following more than three centuries under Portuguese rule,
|
27
|
+
Brazil gained its independence in 1822, ..."}},
|
28
|
+
"Geography"=>
|
29
|
+
{"Location"=>{"text"=>"Eastern South America, bordering the Atlantic Ocean"},
|
30
|
+
"Geographic coordinates"=>{"text"=>"10 00 S, 55 00 W"},
|
31
|
+
"Map references"=>{"text"=>"South America"},
|
32
|
+
"Area"=>
|
33
|
+
{"total"=>{"text"=>"8,515,770 sq km"},
|
34
|
+
"land"=>{"text"=>"8,358,140 sq km"},
|
35
|
+
"water"=>{"text"=>"157,630 sq km"},
|
36
|
+
"note"=>
|
37
|
+
{"text"=>
|
38
|
+
"includes Arquipelago de Fernando de Noronha, Atol das Rocas, ..."}},
|
39
|
+
"Area - comparative"=>
|
40
|
+
{"text"=>"slightly smaller than the US"},
|
41
|
+
"Land boundaries"=>
|
42
|
+
{"total"=>{"text"=>"16,145 km"},
|
43
|
+
"border countries (10)"=>
|
44
|
+
{"text"=>
|
45
|
+
"Argentina 1,263 km, Bolivia 3,403 km, Colombia 1,790 km,
|
46
|
+
French Guiana 649 km, Guyana 1,308 km, Paraguay 1,371 km, Peru 2,659 km,
|
47
|
+
Suriname 515 km, Uruguay 1,050 km, Venezuela 2,137 km"}},
|
48
|
+
"Climate"=>{"text"=>"mostly tropical, but temperate in south"},
|
49
|
+
"Elevation extremes"=>
|
50
|
+
{"lowest point"=>{"text"=>"Atlantic Ocean 0 m"},
|
51
|
+
"highest point"=>{"text"=>"Pico da Neblina 2,994 m"}},
|
52
|
+
"Natural resources"=>
|
53
|
+
{"text"=>
|
54
|
+
"bauxite, gold, iron ore, manganese, nickel, phosphates, ..."},
|
55
|
+
...
|
56
|
+
```
|
57
|
+
|
58
|
+
### Use shortcut attribute accessors
|
59
|
+
|
60
|
+
```ruby
|
61
|
+
pp page.background ## same as page['Introduction']['Background']['text']
|
62
|
+
# => "Following more than three centuries..."
|
63
|
+
pp page.area ## same as page['Geography'][''Area']['total']['text']
|
64
|
+
# => "8,515,770 sq km"
|
65
|
+
pp page.area_land ## same as page['Geography'][''Area']['land']['text']
|
66
|
+
# => "8,358,140 sq km"
|
67
|
+
pp page.area_water ## same as page['Geography'][''Area']['water']['text']
|
68
|
+
# => "157,630 sq km"
|
69
|
+
pp page.area_note ## same as page['Geography'][''Area']['note']['text']
|
70
|
+
# => "includes Arquipelago de Fernando de Noronha, Atol das Rocas, ..."
|
71
|
+
pp page.area_comparative ## same as page['Geography']['Area - comparative']['text']
|
72
|
+
# => "slightly smaller than the US"
|
73
|
+
pp page.climate ## same as page['Geography']['Climate']['text']
|
74
|
+
# => "mostly tropical, but temperate in south"
|
75
|
+
pp page.terrain ## same as page['Geography']['Terrain']['text']
|
76
|
+
# => "mostly flat to rolling lowlands in north; ..."
|
77
|
+
pp page.elevation_lowest ## same as page['Geography']['Elevation extremes']['lowest point']['text']
|
78
|
+
# => "Atlantic Ocean 0 m"
|
79
|
+
pp page.elevation_highest ## same as page['Geography']['Elevation extremes']['highest point']['text']
|
80
|
+
# => "Pico da Neblina 2,994 m"
|
81
|
+
pp page.resources ## same as page['Geography'][Natural resources']['text']
|
82
|
+
# => "bauxite, gold, iron ore, manganese, nickel, phosphates, ..."
|
83
|
+
...
|
84
|
+
```
|
85
|
+
|
86
|
+
See [`data/attributes.yml`](data/attributes.yml) for the full listing of all built-in attribute shortcut accessors.
|
87
|
+
See [Attributes](ATTRIBUTES.md) for a quick reference listing.
|
88
|
+
|
89
|
+
|
90
|
+
### Save to disk as JSON
|
91
|
+
|
92
|
+
```ruby
|
93
|
+
page = Factbook::Page.new( 'br' )
|
94
|
+
File.open( 'br.json', 'w:utf-8') do |f|
|
95
|
+
f.write page.to_json
|
96
|
+
end
|
97
|
+
```
|
98
|
+
|
99
|
+
|
100
|
+
### List all codes
|
101
|
+
|
102
|
+
```ruby
|
103
|
+
Factbook.codes.each do |code|
|
104
|
+
pp code
|
105
|
+
end
|
106
|
+
```
|
107
|
+
|
108
|
+
resulting in:
|
109
|
+
|
110
|
+
```
|
111
|
+
#<struct Factbook::Codes::Code
|
112
|
+
code ="af",
|
113
|
+
name ="Afghanistan",
|
114
|
+
category="Countries",
|
115
|
+
region ="South Asia">
|
116
|
+
#<struct Factbook::Codes::Code
|
117
|
+
code ="al",
|
118
|
+
name ="Albania",
|
119
|
+
category="Countries",
|
120
|
+
region ="Europe">
|
121
|
+
#<struct Factbook::Codes::Code
|
122
|
+
code ="ag",
|
123
|
+
name ="Algeria",
|
124
|
+
category="Countries",
|
125
|
+
region ="Africa">
|
126
|
+
#<struct Factbook::Codes::Code
|
127
|
+
code ="an",
|
128
|
+
name ="Andorra",
|
129
|
+
category="Countries",
|
130
|
+
region ="Europe">
|
131
|
+
...
|
132
|
+
```
|
133
|
+
|
134
|
+
Note: You can filter codes by category e.g. Countries, Dependencies, Miscellaneous, Oceans, etc.
|
135
|
+
and/or by region e.g. Africa, Europe, South Asia, Central America and Caribbean, etc.
|
136
|
+
|
137
|
+
|
138
|
+
```ruby
|
139
|
+
|
140
|
+
assert_equal 261, Factbook.codes.size
|
141
|
+
|
142
|
+
## categories
|
143
|
+
assert_equal 195, Factbook.codes.countries.size
|
144
|
+
assert_equal 52, Factbook.codes.dependencies.size
|
145
|
+
assert_equal 5, Factbook.codes.oceans.size
|
146
|
+
assert_equal 1, Factbook.codes.world.size
|
147
|
+
assert_equal 2, Factbook.codes.others.size
|
148
|
+
assert_equal 6, Factbook.codes.misc.size
|
149
|
+
|
150
|
+
## regions
|
151
|
+
assert_equal 55, Factbook.codes.europe.size
|
152
|
+
assert_equal 9, Factbook.codes.south_asia.size
|
153
|
+
assert_equal 6, Factbook.codes.central_asia.size
|
154
|
+
assert_equal 22, Factbook.codes.east_n_souteast_asia.size
|
155
|
+
assert_equal 19, Factbook.codes.middle_east.size
|
156
|
+
assert_equal 56, Factbook.codes.africa.size
|
157
|
+
assert_equal 7, Factbook.codes.north_america.size
|
158
|
+
assert_equal 33, Factbook.codes.central_america_n_caribbean.size
|
159
|
+
assert_equal 14, Factbook.codes.south_america.size
|
160
|
+
assert_equal 30, Factbook.codes.australia_oceania.size
|
161
|
+
assert_equal 4, Factbook.codes.antartica.size
|
162
|
+
assert_equal 5, Factbook.codes.region('Oceans').size
|
163
|
+
assert_equal 1, Factbook.codes.region('World').size
|
164
|
+
|
165
|
+
## categories + regions
|
166
|
+
assert_equal 45, Factbook.codes.countries.europe.size
|
167
|
+
...
|
168
|
+
```
|
169
|
+
|
170
|
+
See [`data/codes.csv`](data/codes.csv) for the built-in listing of all codes with categories and regions.
|
171
|
+
|
172
|
+
|
173
|
+
|
174
|
+
|
175
|
+
## Install
|
176
|
+
|
177
|
+
Use
|
178
|
+
|
179
|
+
gem install factbook-readers
|
180
|
+
|
181
|
+
or add to your Gemfile
|
182
|
+
|
183
|
+
gem 'factbook-readers'
|
184
|
+
|
185
|
+
|
186
|
+
|
187
|
+
## License
|
188
|
+
|
189
|
+
The `factbook` scripts are dedicated to the public domain.
|
190
|
+
Use it as you please with no restrictions whatsoever.
|
191
|
+
|
192
|
+
|
193
|
+
## Questions? Comments?
|
194
|
+
|
195
|
+
Send them along to the [Open Mundi (world.db) Database Forum/Mailing List](http://groups.google.com/group/openmundi).
|
196
|
+
Thanks!
|
data/Rakefile
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
require 'hoe'
|
2
|
+
require './lib/factbook-readers/version.rb'
|
3
|
+
|
4
|
+
Hoe.spec 'factbook-readers' do
|
5
|
+
|
6
|
+
self.version = Factbook::Module::Readers::VERSION
|
7
|
+
|
8
|
+
self.summary = 'factbook-readers - turn thee world factbook country profile pages into open structured data e.g JSON'
|
9
|
+
self.description = summary
|
10
|
+
|
11
|
+
self.urls = { home: 'https://github.com/factbook/factbook' }
|
12
|
+
|
13
|
+
self.author = 'Gerald Bauer'
|
14
|
+
self.email = 'openmundi@googlegroups.com'
|
15
|
+
|
16
|
+
# switch extension to .markdown for gihub formatting
|
17
|
+
self.readme_file = 'README.md'
|
18
|
+
self.history_file = 'CHANGELOG.md'
|
19
|
+
|
20
|
+
self.extra_deps = [
|
21
|
+
['logutils' ],
|
22
|
+
['csvreader'],
|
23
|
+
['webget'],
|
24
|
+
['nokogiri'],
|
25
|
+
## ['activerecord'] # note: will include activesupport,etc.
|
26
|
+
]
|
27
|
+
|
28
|
+
self.licenses = ['Public Domain']
|
29
|
+
|
30
|
+
self.spec_extras = {
|
31
|
+
required_ruby_version: '>= 2.2.2'
|
32
|
+
}
|
33
|
+
|
34
|
+
end
|
data/data/attributes.yml
ADDED
@@ -0,0 +1,337 @@
|
|
1
|
+
############################
|
2
|
+
# attributes
|
3
|
+
|
4
|
+
Introduction:
|
5
|
+
Background: { name: background }
|
6
|
+
|
7
|
+
Geography:
|
8
|
+
Location: { name: location }
|
9
|
+
Geographic coordinates: { name: coords } ## use geo_coords - why, why not??
|
10
|
+
Map references: { name: map } ## use map_ref - why, why not??
|
11
|
+
Area:
|
12
|
+
total: { name: area }
|
13
|
+
land: { name: area_land }
|
14
|
+
water: { name: area_water }
|
15
|
+
note: { name: area_note }
|
16
|
+
Area - comparative: { name: area_comparative }
|
17
|
+
Land boundaries:
|
18
|
+
total: { name: border_land }
|
19
|
+
border countries: { name: border_countries } ## todo/fix: remove count from key e.g. border countries (8)
|
20
|
+
Coastline: { name: coastline } ## use border_water - why, why not??
|
21
|
+
Maritime claims:
|
22
|
+
territorial sea: { name: maritime_claims_territorial_sea }
|
23
|
+
contiguous zone: { name: maritime_claims_contiguous_zone }
|
24
|
+
exclusive economic zone: { name: maritime_claims_exclusive_economic_zone }
|
25
|
+
continental shelf: { name: maritime_claims_continental_shelf }
|
26
|
+
Climate: { name: climate }
|
27
|
+
Terrain: { name: terrain }
|
28
|
+
Elevation extremes:
|
29
|
+
lowest point: { name: elevation_lowest }
|
30
|
+
highest point: { name: elevation_highest }
|
31
|
+
Natural resources: { name: resources }
|
32
|
+
Land use:
|
33
|
+
agricultural land: { name: land_use_agriculture }
|
34
|
+
forest: { name: land_use_forest }
|
35
|
+
other: { name: land_use_other }
|
36
|
+
Irrigated land: { name: land_irrigated }
|
37
|
+
Total renewable water resources: { name: water_renewable }
|
38
|
+
Freshwater withdrawal (domestic/industrial/agricultural):
|
39
|
+
total: { name: water_withdrawal }
|
40
|
+
per capita: { name: water_withdrawal_capita }
|
41
|
+
Natural hazards:
|
42
|
+
name: natural_hazards ## note: "special" attribute case with "mixed" content
|
43
|
+
volcanism: { name: natural_hazards_volcanism }
|
44
|
+
Environment - current issues: { name: environment_issues }
|
45
|
+
Environment - international agreements:
|
46
|
+
party to: { name: environment_agreements }
|
47
|
+
"signed, but not ratified": { name: environment_agreements_note } ## use _ratified - why, why not??
|
48
|
+
Geography - note: { name: geography_note } ## use geo_note or geography - why, why not??
|
49
|
+
|
50
|
+
People and Society:
|
51
|
+
Nationality:
|
52
|
+
noun: { name: nationality }
|
53
|
+
adjective: { name: nationality_adjective }
|
54
|
+
Ethnic groups: { name: ethnic_groups }
|
55
|
+
Languages:
|
56
|
+
name: languages ## note: "special" attribute case with "mixed" content
|
57
|
+
note: { name: languages_note }
|
58
|
+
Religions: { name: religions }
|
59
|
+
Demographic profile: { name: demographic }
|
60
|
+
Population: { name: population }
|
61
|
+
Age structure:
|
62
|
+
0-14 years: { name: age_0_14yrs }
|
63
|
+
15-24 years: { name: age_15_24yrs }
|
64
|
+
25-54 years: { name: age_25_54yrs }
|
65
|
+
55-64 years: { name: age_55_64yrs }
|
66
|
+
65 years and over: { name: age_65yrs_plus }
|
67
|
+
Dependency ratios:
|
68
|
+
total: { name: dependency_ratio }
|
69
|
+
youth dependency ratio: { name: dependency_youth_ratio }
|
70
|
+
elderly dependency ratio: { name: dependency_elderly_ratio }
|
71
|
+
potential support ratio: { name: dependency_support_ratio }
|
72
|
+
Median age:
|
73
|
+
total: { name: median_age }
|
74
|
+
male: { name: median_age_male }
|
75
|
+
female: { name: median_age_female }
|
76
|
+
Population growth rate: { name: population_growth }
|
77
|
+
Birth rate: { name: birth_rate }
|
78
|
+
Death rate: { name: death_rate }
|
79
|
+
Net migration rate: { name: migration_rate }
|
80
|
+
Urbanization:
|
81
|
+
urban population: { name: urbanization }
|
82
|
+
rate of urbanization: { name: urbanization_growth } ## use _rate - why, why not??
|
83
|
+
Major urban areas - population: { name: major_cities }
|
84
|
+
Sex ratio:
|
85
|
+
at birth: { name: sex_ratio_birth }
|
86
|
+
0-14 years: { name: sex_ratio_0_14yrs }
|
87
|
+
15-24 years: { name: sex_ratio_15_24yrs }
|
88
|
+
25-54 years: { name: sex_ratio_25_54yrs }
|
89
|
+
55-64 years: { name: sex_ratio_55_64yrs }
|
90
|
+
65 years and over: { name: sex_ratio_65yrs_plus }
|
91
|
+
total population: { name: sex_ratio }
|
92
|
+
Infant mortality rate:
|
93
|
+
total: { name: infant_mortality } ## add _rate - why, why not??
|
94
|
+
male: { name: infant_mortality_male }
|
95
|
+
female: { name: infant_mortality_female }
|
96
|
+
Life expectancy at birth:
|
97
|
+
total population: { name: life_expectancy }
|
98
|
+
male: { name: life_expectancy_male }
|
99
|
+
female: { name: life_expectancy_female }
|
100
|
+
Total fertility rate: { name: fertility }
|
101
|
+
Contraceptive prevalence rate:
|
102
|
+
name: contraceptive_rate ## note: "special" attribute case with "mixed" content
|
103
|
+
note: { name: contraceptive_rate_note }
|
104
|
+
Health expenditures: { name: health_expenditures } ## todo: change to health ??
|
105
|
+
Physicians density: { name: density_physicians }
|
106
|
+
Hospital bed density: { name: density_hospital_bed }
|
107
|
+
Drinking water source:
|
108
|
+
improved: { name: drinking_water_improved } ## todo:split into urban/rural/total ??
|
109
|
+
unimproved: { name: drinking_water_unimproved }
|
110
|
+
Sanitation facility access:
|
111
|
+
improved: { name: sanitation_improved } ## todo:split into urban/rural/total ??
|
112
|
+
unimproved: { name: sanitation_unimproved }
|
113
|
+
HIV/AIDS - adult prevalence rate: { name: aids }
|
114
|
+
HIV/AIDS - people living with HIV/AIDS: { name: aids_people }
|
115
|
+
HIV/AIDS - deaths: { name: aids_deaths }
|
116
|
+
Obesity - adult prevalence rate: { name: obesity }
|
117
|
+
Children under the age of 5 years underweight: { name: underweight_children_under_5yrs }
|
118
|
+
Education expenditures: { name: education_expenditures } ## change to education ??
|
119
|
+
Literacy:
|
120
|
+
definition: { name: literacy_def }
|
121
|
+
total population: { name: literacy }
|
122
|
+
male: { name: literacy_male }
|
123
|
+
female: { name: literacy_female }
|
124
|
+
School life expectancy (primary to tertiary education):
|
125
|
+
total: { name: school_life }
|
126
|
+
male: { name: school_life_male }
|
127
|
+
female: { name: school_life_female }
|
128
|
+
Child labor - children ages 5-14:
|
129
|
+
total number: { name: child_labor }
|
130
|
+
percentage: { name: child_labor_rate }
|
131
|
+
note: { name: child_labor_note }
|
132
|
+
"Unemployment, youth ages 15-24":
|
133
|
+
total: { name: unemployment_youth }
|
134
|
+
male: { name: unemployment_youth_male }
|
135
|
+
female: { name: unemployment_youth_female }
|
136
|
+
|
137
|
+
Government:
|
138
|
+
Country name:
|
139
|
+
conventional long form: { name: name_long }
|
140
|
+
conventional short form: { name: name }
|
141
|
+
local long form: { name: name_long_local }
|
142
|
+
local short form: { name: name_local }
|
143
|
+
note: { name: name_note }
|
144
|
+
## add name_former ( see gm) ?? add abbreviations (see us)
|
145
|
+
Government type: { name: government_type }
|
146
|
+
Capital:
|
147
|
+
name: { name: capital }
|
148
|
+
geographic coordinates: { name: capital_coords }
|
149
|
+
time difference: { name: capital_time_diff }
|
150
|
+
daylight saving time: { name: capital_dst }
|
151
|
+
Administrative divisions: { name: admins }
|
152
|
+
Independence: { name: independence }
|
153
|
+
National holiday: { name: natinal_holiday }
|
154
|
+
Constitution: { name: constitution }
|
155
|
+
Legal system: { name: legal_system }
|
156
|
+
International law organization participation: { name: legal_intl_orgs }
|
157
|
+
Suffrage: { name: suffrage }
|
158
|
+
## note: skip Executive,Legislative,Judicial,... entries for now
|
159
|
+
International organization participation: { name: intl_orgs }
|
160
|
+
Flag description: { name: flag }
|
161
|
+
National symbol(s): { name: national_symbols }
|
162
|
+
National anthem:
|
163
|
+
name: { name: national_anthem}
|
164
|
+
lyrics/music: { name: national_anthem_by }
|
165
|
+
note: { name: national_anthem_note }
|
166
|
+
|
167
|
+
Economy:
|
168
|
+
Economy - overview: { name: economy_overview }
|
169
|
+
GDP (purchasing power parity):
|
170
|
+
name: gdp_ppp ## note: "special" attribute case with "mixed" content
|
171
|
+
note: { name: gdp_ppp_note }
|
172
|
+
GDP (official exchange rate): { name: gdp }
|
173
|
+
GDP - real growth rate: { name: gdp_growth }
|
174
|
+
GDP - per capita (PPP):
|
175
|
+
name: gdp_ppp_capita ## note: "special" attribute case with "mixed" content
|
176
|
+
note: { name: gdp_ppp_capita_note }
|
177
|
+
Gross national saving: { name: saving }
|
178
|
+
"GDP - composition, by end use":
|
179
|
+
household consumption: { name: consumption_household }
|
180
|
+
government consumption: { name: consumption_government }
|
181
|
+
investment in fixed capital: { name: investment_fixed }
|
182
|
+
investment in inventories: { name: investment_inventories }
|
183
|
+
exports of goods and services: { name: exports_gdp_rate }
|
184
|
+
imports of goods and services: { name: imports_gdb_rate }
|
185
|
+
"GDP - composition, by sector of origin":
|
186
|
+
agriculture: { name: agriculture_gdb_rate }
|
187
|
+
industry: { name: industry_gdb_rate }
|
188
|
+
services: { name: services_gdb_rate }
|
189
|
+
Agriculture - products: { name: agriculture_products }
|
190
|
+
Industries: { name: industries }
|
191
|
+
Industrial production growth rate: { name: industry_growth }
|
192
|
+
Labor force: { name: labor }
|
193
|
+
Labor force - by occupation:
|
194
|
+
agriculture: { name: labor_agriculture }
|
195
|
+
industry: { name: labor_industry }
|
196
|
+
services: { name: labor_services }
|
197
|
+
Unemployment rate: { name: unemployment }
|
198
|
+
Population below poverty line:
|
199
|
+
name: poverty ## note: "special" attribute case with "mixed" content
|
200
|
+
note: { name: poverty_note }
|
201
|
+
Household income or consumption by percentage share:
|
202
|
+
"lowest 10%": { name: household_income_lowest } ## use _poorest, _bottom ???
|
203
|
+
"highest 10%": { name: household_income_highest } ## use _richest, _top ???
|
204
|
+
Distribution of family income - Gini index: { name: gini }
|
205
|
+
Budget:
|
206
|
+
revenues: { name: budget_revenues }
|
207
|
+
expenditures: { name: budget_expenditures }
|
208
|
+
Taxes and other revenues: { name: taxes }
|
209
|
+
Budget surplus (+) or deficit (-): { name: budget_balance }
|
210
|
+
Public debt:
|
211
|
+
name: public_debt ## note: "special" attribute case with "mixed" content
|
212
|
+
note: { name: public_debt_note }
|
213
|
+
Fiscal year: { name: fiscal_year }
|
214
|
+
Inflation rate (consumer prices): { name: inflation }
|
215
|
+
Central bank discount rate: { name: central_bank_discount_rate } ## use discount_rate - why? why not??
|
216
|
+
Commercial bank prime lending rate: { name: prime_rate }
|
217
|
+
Stock of narrow money:
|
218
|
+
name: narrow_money ## note: "special" attribute case with "mixed" content
|
219
|
+
note: { name: narrow_money_note }
|
220
|
+
Stock of broad money: { name: broad_money }
|
221
|
+
Stock of domestic credit: { name: domestic_credit }
|
222
|
+
Market value of publicly traded shares: { name: shares_market_value }
|
223
|
+
Current account balance: { name: current_account_balance }
|
224
|
+
Exports: { name: exports }
|
225
|
+
Exports - commodities: { name: exports_commodities }
|
226
|
+
Exports - partners: { name: exports_partners }
|
227
|
+
Imports: { name: imports }
|
228
|
+
Imports - commodities: { name: imports_commodities }
|
229
|
+
Imports - partners: { name: imports_partners }
|
230
|
+
Reserves of foreign exchange and gold: { name: foreign_exchange_reserves }
|
231
|
+
Debt - external: { name: debt_external }
|
232
|
+
Stock of direct foreign investment - at home: { name: direct_foreign_investment_home }
|
233
|
+
Stock of direct foreign investment - abroad: { name: direct_foreign_investment_abroad }
|
234
|
+
Exchange rates: { name: exchange_rates }
|
235
|
+
|
236
|
+
Energy:
|
237
|
+
Electricity - production: { name: electricity_production }
|
238
|
+
Electricity - consumption: { name: electricity_consumption }
|
239
|
+
Electricity - exports: { name: electricity_exports }
|
240
|
+
Electricity - imports: { name: electricity_imports }
|
241
|
+
Electricity - installed generating capacity: { name: electricity_capacity }
|
242
|
+
Electricity - from fossil fuels: { name: electricity_fossil }
|
243
|
+
Electricity - from nuclear fuels: { name: electricity_nuclear }
|
244
|
+
Electricity - from hydroelectric plants: { name: electricity_hydro }
|
245
|
+
Electricity - from other renewable sources: { name: electricity_other }
|
246
|
+
Crude oil - production: { name: oil_production }
|
247
|
+
Crude oil - exports: { name: oil_exports }
|
248
|
+
Crude oil - imports: { name: oil_imports }
|
249
|
+
Crude oil - proved reserves: { name: oil_reserves }
|
250
|
+
Refined petroleum products - production: { name: petroleum_production }
|
251
|
+
Refined petroleum products - consumption: { name: petroleum_consumption }
|
252
|
+
Refined petroleum products - exports: { name: petroleum_exports }
|
253
|
+
Refined petroleum products - imports: { name: petroleum_imports }
|
254
|
+
Natural gas - production: { name: natural_gas_production }
|
255
|
+
Natural gas - consumption: { name: natural_gas_consumpiton }
|
256
|
+
Natural gas - exports: { name: natural_gas_exports }
|
257
|
+
Natural gas - imports: { name: natural_gas_imports }
|
258
|
+
Natural gas - proved reserves: { name: natural_gas_reserves }
|
259
|
+
Carbon dioxide emissions from consumption of energy: { name: carbon_dioxide }
|
260
|
+
|
261
|
+
Communications:
|
262
|
+
Telephones - fixed lines:
|
263
|
+
total subscriptions: { name: telephones }
|
264
|
+
subscriptions per 100 inhabitants: { name: telephones_subscriptions }
|
265
|
+
Telephones - mobile cellular:
|
266
|
+
total: { name: telephones_mobile }
|
267
|
+
subscriptions per 100 inhabitants: { name: telephones_mobile_subscriptions }
|
268
|
+
Telephone system:
|
269
|
+
general assessment: { name: telephone_system }
|
270
|
+
domestic: { name: telephone_system_domestic }
|
271
|
+
international: { name: telephone_system_intl }
|
272
|
+
Broadcast media: { name: broadcast_media }
|
273
|
+
Radio broadcast stations: { name: radio_broadcast_stations }
|
274
|
+
Television broadcast stations: { name: tv_broadcast_stations }
|
275
|
+
Internet country code: { name: internet }
|
276
|
+
Internet users:
|
277
|
+
total: { name: internet_users }
|
278
|
+
percent of population: { name: internet_users_rate }
|
279
|
+
|
280
|
+
Transportation:
|
281
|
+
Airports: { name: airports }
|
282
|
+
Airports - with paved runways:
|
283
|
+
total: { name: airports_paved }
|
284
|
+
"over 3,047 m": { name: airports_paved_over_10000ft }
|
285
|
+
"2,438 to 3,047 m": { name: airports_paved_8000_10000ft }
|
286
|
+
"1,524 to 2,437 m": { name: airports_paved_5000_8000ft }
|
287
|
+
"914 to 1,523 m": { name: airports_paved_3000_5000ft }
|
288
|
+
"under 914 m": { name: airports_paved_under_3000ft }
|
289
|
+
Airports - with unpaved runways:
|
290
|
+
total: { name: airports_unpaved }
|
291
|
+
"1,524 to 2,437 m": { name: airports_unpaved_5000_8000ft }
|
292
|
+
"914 to 1,523 m": { name: airports_unpaved_3000_5000ft }
|
293
|
+
"under 914 m": { name: airports_unpaved_under_3000ft }
|
294
|
+
Heliports: { name: heliports }
|
295
|
+
Pipelines: { name: pipelines }
|
296
|
+
Railways:
|
297
|
+
total: { name: railways }
|
298
|
+
standard gauge: { name: railways_standard_gauge }
|
299
|
+
narrow gauge: { name: railways_narrow_gauge }
|
300
|
+
broad gauge: { name: railways_broad_gauge }
|
301
|
+
dual gauge: { name: railways_dual_gauge }
|
302
|
+
Roadways:
|
303
|
+
total: { name: roadways }
|
304
|
+
paved: { name: roadways_paved }
|
305
|
+
unpaved: { name: roadways_unpaved }
|
306
|
+
note: { name: roadways_note }
|
307
|
+
Waterways: { name: waterways }
|
308
|
+
Merchant marine:
|
309
|
+
total: { name: merchant_marine }
|
310
|
+
by type: { name: merchant_marine_by_type }
|
311
|
+
foreign-owned: { name: merchant_marine_foreign }
|
312
|
+
registered in other countries: { name: merchant_marine_others }
|
313
|
+
Ports and terminals:
|
314
|
+
major seaport(s): { name: sea_ports }
|
315
|
+
river port(s): { name: river_ports }
|
316
|
+
|
317
|
+
Military:
|
318
|
+
Military branches: { name: military_branches }
|
319
|
+
Military service age and obligation: { name: military_age }
|
320
|
+
Manpower available for military service:
|
321
|
+
males age 16-49: { name: military_manpower_males }
|
322
|
+
females age 16-49: { name: military_manpower_females }
|
323
|
+
Manpower fit for military service:
|
324
|
+
males age 16-49: { name: military_manpower_males_fit }
|
325
|
+
females age 16-49: { name: military_manpower_females_fit }
|
326
|
+
Manpower reaching militarily significant age annually:
|
327
|
+
male: { name: military_manpower_male_annual }
|
328
|
+
female: { name: military_manpower_female_annual }
|
329
|
+
Military expenditures: { name: military_expenditures }
|
330
|
+
|
331
|
+
Transnational Issues:
|
332
|
+
Disputes - international: { name: disputes }
|
333
|
+
Refugees and internally displaced persons:
|
334
|
+
refugees (country of origin): { name: refugees }
|
335
|
+
IDPs: { name: refugees_idps }
|
336
|
+
stateless persons: { name: refugess_stateless }
|
337
|
+
Illicit drugs: { name: drugs }
|