geoblacklight 0.3.4 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitmodules +0 -5
- data/.travis.yml +3 -0
- data/README.md +24 -76
- data/Rakefile +2 -3
- data/app/assets/javascripts/geoblacklight/downloaders.js +1 -0
- data/app/assets/javascripts/geoblacklight/downloaders/downloader.js +51 -0
- data/app/assets/javascripts/geoblacklight/downloaders/hgl_downloader.js +32 -0
- data/app/assets/javascripts/geoblacklight/modules/download.js +7 -41
- data/app/controllers/download_controller.rb +19 -1
- data/app/controllers/wms_controller.rb +1 -1
- data/app/views/catalog/_show_sidebar.html.erb +25 -13
- data/app/views/download/hgl.html.erb +25 -0
- data/config/locales/geoblacklight.en.yml +1 -0
- data/lib/generators/geoblacklight/install_generator.rb +3 -2
- data/lib/generators/geoblacklight/templates/geoblacklight.js +1 -0
- data/lib/geoblacklight.rb +2 -0
- data/lib/geoblacklight/constants.rb +2 -1
- data/lib/geoblacklight/download/hgl_download.rb +17 -0
- data/lib/geoblacklight/engine.rb +1 -0
- data/lib/geoblacklight/solr_document.rb +4 -0
- data/lib/geoblacklight/version.rb +1 -1
- data/lib/geoblacklight/wms_layer.rb +31 -31
- data/lib/geoblacklight/wms_layer/feature_info_response.rb +26 -24
- data/lib/tasks/geoblacklight.rake +2 -2
- data/spec/controllers/download_controller_spec.rb +13 -2
- data/spec/features/download_layer_spec.rb +18 -3
- data/spec/features/home_page_spec.rb +3 -3
- data/spec/features/layer_preview_spec.rb +3 -3
- data/spec/features/split_view.html.erb_spec.rb +2 -4
- data/spec/fixtures/solr_documents/actual-papermap1.json +26 -0
- data/spec/fixtures/solr_documents/actual-point1.json +27 -0
- data/spec/fixtures/solr_documents/actual-polygon1.json +26 -0
- data/spec/fixtures/solr_documents/actual-raster1.json +44 -0
- data/spec/fixtures/{test-dct-references6.json → solr_documents/harvard_raster.json} +2 -6
- data/spec/fixtures/solr_documents/public_iiif_princeton.json +38 -0
- data/spec/fixtures/solr_documents/public_polygon_mit.json +47 -0
- data/spec/fixtures/solr_documents/restricted-line.json +43 -0
- data/spec/lib/geoblacklight/download/hgl_download_spec.rb +14 -0
- data/spec/lib/geoblacklight/solr_document_spec.rb +20 -0
- data/spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb +5 -5
- data/spec/lib/geoblacklight/wms_layer_spec.rb +4 -4
- metadata +25 -22
- data/spec/features/dct_references_spec.rb +0 -77
- data/spec/fixtures/test-dct-references1.json +0 -38
- data/spec/fixtures/test-dct-references2.json +0 -41
- data/spec/fixtures/test-dct-references3.json +0 -45
- data/spec/fixtures/test-dct-references4.json +0 -60
- data/spec/fixtures/test-dct-references5.json +0 -57
- data/spec/fixtures/test-dct-references7.json +0 -42
- data/spec/fixtures/test-dct-references8.json +0 -46
- data/spec/support/dct_references_generate.rb +0 -100
@@ -28,8 +28,8 @@ module Geoblacklight
|
|
28
28
|
end
|
29
29
|
|
30
30
|
def fixtures
|
31
|
-
FileUtils.mkdir_p 'spec/fixtures/
|
32
|
-
|
31
|
+
FileUtils.mkdir_p 'spec/fixtures/solr_documents'
|
32
|
+
directory 'solr_documents', 'spec/fixtures/solr_documents'
|
33
33
|
end
|
34
34
|
|
35
35
|
def add_unique_key
|
@@ -42,6 +42,7 @@ module Geoblacklight
|
|
42
42
|
route 'post "wms/handle"'
|
43
43
|
route 'resources :download, only: [:show, :file]'
|
44
44
|
route "get 'download/file/:id' => 'download#file', as: :download_file"
|
45
|
+
route "get 'download/hgl/:id' => 'download#hgl', as: :download_hgl"
|
45
46
|
end
|
46
47
|
|
47
48
|
def create_downloads_directory
|
data/lib/geoblacklight.rb
CHANGED
@@ -9,11 +9,13 @@ module Geoblacklight
|
|
9
9
|
require 'geoblacklight/item_viewer'
|
10
10
|
require 'geoblacklight/solr_document'
|
11
11
|
require 'geoblacklight/wms_layer'
|
12
|
+
require 'geoblacklight/wms_layer/feature_info_response'
|
12
13
|
require 'geoblacklight/download'
|
13
14
|
require 'geoblacklight/download/geojson_download'
|
14
15
|
require 'geoblacklight/download/geotiff_download'
|
15
16
|
require 'geoblacklight/download/kmz_download'
|
16
17
|
require 'geoblacklight/download/shapefile_download'
|
18
|
+
require 'geoblacklight/download/hgl_download'
|
17
19
|
require 'geoblacklight/reference'
|
18
20
|
require 'geoblacklight/references'
|
19
21
|
def self.inject!
|
@@ -13,7 +13,8 @@ module Geoblacklight
|
|
13
13
|
url: 'http://schema.org/url',
|
14
14
|
wcs: 'http://www.opengis.net/def/serviceType/ogc/wcs',
|
15
15
|
wfs: 'http://www.opengis.net/def/serviceType/ogc/wfs',
|
16
|
-
wms: 'http://www.opengis.net/def/serviceType/ogc/wms'
|
16
|
+
wms: 'http://www.opengis.net/def/serviceType/ogc/wms',
|
17
|
+
hgl: 'http://schema.org/DownloadAction'
|
17
18
|
}
|
18
19
|
end
|
19
20
|
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
class HglDownload < Download
|
2
|
+
def initialize(document, email)
|
3
|
+
|
4
|
+
request_params = {
|
5
|
+
"LayerName" => document[:layer_id_s].sub(/^cite:/, ''),
|
6
|
+
"UserEmail" => email
|
7
|
+
}
|
8
|
+
super(document, {
|
9
|
+
request_params: request_params,
|
10
|
+
service_type: 'hgl'
|
11
|
+
})
|
12
|
+
end
|
13
|
+
|
14
|
+
def get
|
15
|
+
initiate_download
|
16
|
+
end
|
17
|
+
end
|
data/lib/geoblacklight/engine.rb
CHANGED
@@ -35,6 +35,10 @@ module Geoblacklight
|
|
35
35
|
return references.download.to_hash unless references.download.blank?
|
36
36
|
end
|
37
37
|
|
38
|
+
def hgl_download
|
39
|
+
return references.hgl.to_hash unless references.hgl.blank?
|
40
|
+
end
|
41
|
+
|
38
42
|
def same_institution?
|
39
43
|
get(:dct_provenance_s).downcase == Settings.INSTITUTION.downcase
|
40
44
|
end
|
@@ -1,40 +1,40 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
class WmsLayer
|
1
|
+
module Geoblacklight
|
2
|
+
class WmsLayer
|
4
3
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
4
|
+
def initialize(params)
|
5
|
+
@params = params.merge(Settings.WMS_PARAMS)
|
6
|
+
@response = Geoblacklight::FeatureInfoResponse.new(request_response)
|
7
|
+
end
|
9
8
|
|
10
|
-
|
11
|
-
|
12
|
-
|
9
|
+
def url
|
10
|
+
@params['URL']
|
11
|
+
end
|
13
12
|
|
14
|
-
|
15
|
-
|
16
|
-
|
13
|
+
def search_params
|
14
|
+
@params.except('URL')
|
15
|
+
end
|
17
16
|
|
18
|
-
|
19
|
-
|
20
|
-
|
17
|
+
def get_feature_info
|
18
|
+
@response.check
|
19
|
+
end
|
21
20
|
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
21
|
+
def request_response
|
22
|
+
begin
|
23
|
+
conn = Faraday.new(url: url)
|
24
|
+
conn.get do |request|
|
25
|
+
request.params = search_params
|
26
|
+
request.options = {
|
27
|
+
timeout: Settings.TIMEOUT_WMS,
|
28
|
+
open_timeout: Settings.TIMEOUT_WMS
|
29
|
+
}
|
30
|
+
end
|
31
|
+
rescue Faraday::Error::ConnectionFailed => error
|
32
|
+
Geoblacklight.logger.error error.inspect
|
33
|
+
{ error: error.inspect }
|
34
|
+
rescue Faraday::Error::TimeoutError => error
|
35
|
+
Geoblacklight.logger.error error.inspect
|
36
|
+
{ error: error.inspect }
|
31
37
|
end
|
32
|
-
rescue Faraday::Error::ConnectionFailed => error
|
33
|
-
Geoblacklight.logger.error error.inspect
|
34
|
-
{ error: error.inspect }
|
35
|
-
rescue Faraday::Error::TimeoutError => error
|
36
|
-
Geoblacklight.logger.error error.inspect
|
37
|
-
{ error: error.inspect }
|
38
38
|
end
|
39
39
|
end
|
40
40
|
end
|
@@ -1,30 +1,32 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
def check
|
7
|
-
if error?
|
8
|
-
@response
|
9
|
-
else
|
10
|
-
format
|
1
|
+
module Geoblacklight
|
2
|
+
class FeatureInfoResponse
|
3
|
+
def initialize(response)
|
4
|
+
@response = response
|
11
5
|
end
|
12
|
-
end
|
13
6
|
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
7
|
+
def check
|
8
|
+
if error?
|
9
|
+
@response
|
10
|
+
else
|
11
|
+
format
|
12
|
+
end
|
19
13
|
end
|
20
|
-
|
21
|
-
|
14
|
+
|
15
|
+
def format
|
16
|
+
page = Nokogiri::HTML(@response.body)
|
17
|
+
table_values = { values: [] }
|
18
|
+
page.css('th').each do |th|
|
19
|
+
table_values[:values].push([th.text])
|
20
|
+
end
|
21
|
+
page.css('td').each_with_index do |td, index|
|
22
|
+
table_values[:values][index].push(td.text)
|
23
|
+
end
|
24
|
+
table_values
|
22
25
|
end
|
23
|
-
table_values
|
24
|
-
end
|
25
26
|
|
26
|
-
|
27
|
-
|
28
|
-
|
27
|
+
def error?
|
28
|
+
@response[:error] ||
|
29
|
+
@response.headers['content-type'].slice(0, 9) == 'text/xml'
|
30
|
+
end
|
29
31
|
end
|
30
|
-
end
|
32
|
+
end
|
@@ -5,11 +5,11 @@ namespace :geoblacklight do
|
|
5
5
|
namespace :solr do
|
6
6
|
desc "Put sample data into solr"
|
7
7
|
task :seed => :environment do
|
8
|
-
docs = JSON
|
8
|
+
docs = Dir['spec/fixtures/solr_documents/*.json'].map { |f| JSON.parse File.read(f) }.flatten
|
9
9
|
Blacklight.solr.add docs
|
10
10
|
Blacklight.solr.commit
|
11
11
|
end
|
12
|
-
|
12
|
+
|
13
13
|
desc "Ingests a GeoHydra transformed.json"
|
14
14
|
task :ingest_all => :environment do
|
15
15
|
docs = JSON::parse(File.read("#{Rails.root}/tmp/transformed.json"))
|
@@ -4,7 +4,7 @@ describe Geoblacklight::DownloadController, type: :controller do
|
|
4
4
|
describe '#file' do
|
5
5
|
describe 'restricted file' do
|
6
6
|
it 'should redirect to login for authentication' do
|
7
|
-
get :file, id: 'stanford-
|
7
|
+
get :file, id: 'stanford-cg357zz0321-shapefile', format: 'zip'
|
8
8
|
expect(response.status).to eq 401
|
9
9
|
end
|
10
10
|
end
|
@@ -20,7 +20,7 @@ describe Geoblacklight::DownloadController, type: :controller do
|
|
20
20
|
describe '#show' do
|
21
21
|
describe 'restricted file' do
|
22
22
|
it 'should redirect to login for authentication' do
|
23
|
-
get 'show', id: 'stanford-
|
23
|
+
get 'show', id: 'stanford-cg357zz0321', format: 'json'
|
24
24
|
expect(response.status).to eq 401
|
25
25
|
end
|
26
26
|
end
|
@@ -31,4 +31,15 @@ describe Geoblacklight::DownloadController, type: :controller do
|
|
31
31
|
end
|
32
32
|
end
|
33
33
|
end
|
34
|
+
describe '#hgl' do
|
35
|
+
it 'should request file' do
|
36
|
+
expect_any_instance_of(HglDownload).to receive(:get).and_return('success')
|
37
|
+
get :hgl, id: 'harvard-g7064-s2-1834-k3', email: 'foo@example.com'
|
38
|
+
expect(response.status).to eq 200
|
39
|
+
end
|
40
|
+
it 'should render form' do
|
41
|
+
get :hgl, id: 'harvard-g7064-s2-1834-k3'
|
42
|
+
expect(response).to render_template('hgl')
|
43
|
+
end
|
44
|
+
end
|
34
45
|
end
|
@@ -21,20 +21,20 @@ feature 'Download layer' do
|
|
21
21
|
expect(page).to have_css('li a', text: 'Download KMZ')
|
22
22
|
end
|
23
23
|
scenario 'restricted layer should not have download available to non logged in user' do
|
24
|
-
visit catalog_path('stanford-
|
24
|
+
visit catalog_path('stanford-cg357zz0321')
|
25
25
|
expect(page).to have_css 'a', text: 'Login to view and download'
|
26
26
|
expect(page).to_not have_css 'button', text: 'Download Shapefile'
|
27
27
|
end
|
28
28
|
scenario 'restricted layer should have download available to logged in user' do
|
29
29
|
sign_in
|
30
|
-
visit catalog_path('stanford-
|
30
|
+
visit catalog_path('stanford-cg357zz0321')
|
31
31
|
expect(page).to_not have_css 'a', text: 'Login to view and download'
|
32
32
|
expect(page).to have_css 'a', text: 'Download Shapefile'
|
33
33
|
expect(page).to have_css 'button.download-dropdown-toggle'
|
34
34
|
end
|
35
35
|
scenario 'layer with direct download and wms/wfs should include all download types' do
|
36
36
|
sign_in
|
37
|
-
visit catalog_path('stanford-
|
37
|
+
visit catalog_path('stanford-cg357zz0321')
|
38
38
|
expect(page).to have_css 'a', text: 'Download Shapefile'
|
39
39
|
find('button.download-dropdown-toggle').click
|
40
40
|
expect(page).to have_css 'li.dropdown-header', text: 'Original'
|
@@ -42,4 +42,19 @@ feature 'Download layer' do
|
|
42
42
|
expect(page).to have_css 'li a', text: 'Download Shapefile'
|
43
43
|
expect(page).to have_css 'li a', text: 'Download KMZ'
|
44
44
|
end
|
45
|
+
scenario 'clicking GeoTIFF button for Harvard layer should show email form', js: true do
|
46
|
+
visit catalog_path('harvard-g7064-s2-1834-k3')
|
47
|
+
find('a', text: 'Download GeoTIFF').click
|
48
|
+
expect(page).to have_css('#hglRequest')
|
49
|
+
end
|
50
|
+
scenario 'submitting email form should trigger HGL request', js: true do
|
51
|
+
expect_any_instance_of(HglDownload).to receive(:get).and_return('success')
|
52
|
+
visit catalog_path('harvard-g7064-s2-1834-k3')
|
53
|
+
find('a', text: 'Download GeoTIFF').click
|
54
|
+
within '#hglRequest' do
|
55
|
+
fill_in('Email', with: 'foo@example.com')
|
56
|
+
click_button('Request')
|
57
|
+
end
|
58
|
+
expect(page).to have_content('You should receive an email when your download is ready')
|
59
|
+
end
|
45
60
|
end
|
@@ -14,11 +14,11 @@ feature 'Home page', js: true do # use js: true for tests which require js, but
|
|
14
14
|
end
|
15
15
|
scenario 'find by category' do
|
16
16
|
expect(page).to have_css '.category-block', count: 4
|
17
|
-
expect(page).to have_css '.home-facet-link', count:
|
17
|
+
expect(page).to have_css '.home-facet-link', count: 29
|
18
18
|
expect(page).to have_css 'a.more_facets_link', count: 4
|
19
|
-
click_link '
|
19
|
+
click_link 'Elevation'
|
20
20
|
expect(page).to have_css '.filterName', text: 'Subject'
|
21
|
-
expect(page).to have_css '.filterValue', text: '
|
21
|
+
expect(page).to have_css '.filterValue', text: 'Elevation'
|
22
22
|
end
|
23
23
|
scenario 'map should be visible' do
|
24
24
|
within '#main-container' do
|
@@ -2,10 +2,10 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
feature 'Layer preview', js: true do
|
4
4
|
scenario 'Restricted layer should show bounding box' do
|
5
|
-
visit catalog_path('
|
5
|
+
visit catalog_path('stanford-cg357zz0321')
|
6
6
|
expect(Nokogiri::HTML.parse(page.body).css('path').length).to eq 1
|
7
7
|
end
|
8
|
-
|
8
|
+
|
9
9
|
scenario 'Public layer should show wms layer not bounding box' do
|
10
10
|
visit catalog_path('mit-us-ma-e25zcta5dct-2000')
|
11
11
|
expect(Nokogiri::HTML.parse(page.body).css('path').length).to eq 0
|
@@ -13,4 +13,4 @@ feature 'Layer preview', js: true do
|
|
13
13
|
expect(page).to have_css('.leaflet-layer', count: 2)
|
14
14
|
end
|
15
15
|
end
|
16
|
-
end
|
16
|
+
end
|
@@ -24,10 +24,8 @@ feature 'Index view', js: true do
|
|
24
24
|
expect(page).to have_css('div.panel.facet_limit', text: 'Format')
|
25
25
|
end
|
26
26
|
click_link 'Institution'
|
27
|
-
expect(page).to have_css('a.facet_select', text: 'Harvard', visible: true)
|
28
27
|
expect(page).to have_css('a.facet_select', text: 'Tufts', visible: true)
|
29
28
|
expect(page).to have_css('a.facet_select', text: 'MIT', visible: true)
|
30
|
-
expect(page).to have_css('a.facet_select', text: 'MassGIS', visible: true)
|
31
29
|
expect(page).to have_css('a.facet_select', text: 'Stanford', visible: true)
|
32
30
|
end
|
33
31
|
|
@@ -48,9 +46,9 @@ feature 'Index view', js: true do
|
|
48
46
|
end
|
49
47
|
|
50
48
|
scenario 'spatial search should reset to page one' do
|
51
|
-
visit '/?
|
49
|
+
visit '/?per_page=5&q=%2A&page=2'
|
52
50
|
find("#map").double_click
|
53
|
-
expect(find('.page_entries')).to have_content('1 -
|
51
|
+
expect(find('.page_entries')).to have_content('1 - 2 of 2')
|
54
52
|
end
|
55
53
|
|
56
54
|
scenario 'clicking map search should retain current search parameters' do
|
@@ -0,0 +1,26 @@
|
|
1
|
+
{
|
2
|
+
"uuid": "urn:arrowsmith.mit.edu:MIT.001145244",
|
3
|
+
"dc_description_s": "Panel title. Depths shown by isolines. \"Geological map [copyright] NERC 1996.\" Also available on flat sheet. \"Sheet 1\"--on panel. Includes text, notes, organizations' logos, and ancillary map of \"Orogenic terranes of Britain, Ireland and surrounding seas.\"",
|
4
|
+
"dc_format_s": "Paper",
|
5
|
+
"dc_identifier_s": "urn:arrowsmith.mit.edu:MIT.001145244",
|
6
|
+
"dc_language_s": "English",
|
7
|
+
"dc_publisher_s": "British Geological Survey",
|
8
|
+
"dc_rights_s": "Public",
|
9
|
+
"dc_title_s": "1:1 500 000 series [cartographic material] : tectonic map of Britain, Ireland and adjacent areas / British Geological Survey ; Geological Survey of Ireland ; Geological Survey of Northern Ireland.",
|
10
|
+
"dc_type_s": "Dataset",
|
11
|
+
"dct_references_s": "{\"http://schema.org/url\":\"http://library.mit.edu/item/001145244\",\"http://www.opengis.net/cat/csw/csdgm\":\"http://opengeometadata.stanford.edu/metadata/org.opengeoportal/MIT:001145244/fgdc.xml\",\"http://www.w3.org/1999/xhtml\":\"http://opengeometadata.stanford.edu/metadata/org.opengeoportal/MIT:001145244/fgdc.html\"}",
|
12
|
+
"dct_temporal_sm": [
|
13
|
+
"1996"
|
14
|
+
],
|
15
|
+
"dct_issued_s": "2000",
|
16
|
+
"dct_provenance_s": "MIT",
|
17
|
+
"georss_box_s": "49.0 -13.0 62.0 4.0",
|
18
|
+
"georss_polygon_s": "62.0 -13.0 62.0 4.0 49.0 4.0 49.0 -13.0 62.0 -13.0",
|
19
|
+
"layer_slug_s": "mit-001145244",
|
20
|
+
"layer_id_s": "MIT:001145244",
|
21
|
+
"layer_geom_type_s": "Paper Map",
|
22
|
+
"layer_modified_dt": "2014-12-04T21:32:59Z",
|
23
|
+
"solr_bbox": "-13.0 49.0 4.0 62.0",
|
24
|
+
"solr_geom": "ENVELOPE(-13.0, 4.0, 62.0, 49.0)",
|
25
|
+
"solr_year_i": 1996
|
26
|
+
}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
{
|
2
|
+
"uuid": "urn:columbia.edu:Columbia.landinfo_global_aet",
|
3
|
+
"dc_description_s": "Actual Evapotrans is a point theme representing the sum of evaporation and plant transpiration to the atmosphere from throughout the world. Measurements are represented by points at every.5 degrees and provided for every month of the year. This dataset is a part of the Global Climate Database from the Global Change Department National Institute of Public Health and Environmental Protection.",
|
4
|
+
"dc_format_s": "Shapefile",
|
5
|
+
"dc_identifier_s": "urn:columbia.edu:Columbia.landinfo_global_aet",
|
6
|
+
"dc_language_s": "English",
|
7
|
+
"dc_rights_s": "Public",
|
8
|
+
"dc_title_s": "Actual Evapotrans",
|
9
|
+
"dc_type_s": "Dataset",
|
10
|
+
"dct_references_s": "{\"http://www.opengis.net/cat/csw/csdgm\":\"http://opengeometadata.stanford.edu/metadata/org.opengeoportal/Columbia:Columbia.landinfo_global_aet/fgdc.xml\",\"http://www.w3.org/1999/xhtml\":\"http://opengeometadata.stanford.edu/metadata/org.opengeoportal/Columbia:Columbia.landinfo_global_aet/fgdc.html\"}",
|
11
|
+
"dct_spatial_sm": [
|
12
|
+
"World"
|
13
|
+
],
|
14
|
+
"dct_temporal_sm": [
|
15
|
+
"1996"
|
16
|
+
],
|
17
|
+
"dct_provenance_s": "Columbia",
|
18
|
+
"georss_box_s": "-56.0 -179.5 83.0 180.0",
|
19
|
+
"georss_polygon_s": "83.0 -179.5 83.0 180.0 -56.0 180.0 -56.0 -179.5 83.0 -179.5",
|
20
|
+
"layer_slug_s": "columbia-columbia-landinfo-global-aet",
|
21
|
+
"layer_id_s": "Columbia:Columbia.landinfo_global_aet",
|
22
|
+
"layer_geom_type_s": "Point",
|
23
|
+
"layer_modified_dt": "2014-12-12T19:54:57Z",
|
24
|
+
"solr_bbox": "-179.5 -56.0 180.0 83.0",
|
25
|
+
"solr_geom": "ENVELOPE(-179.5, 180.0, 83.0, -56.0)",
|
26
|
+
"solr_year_i": 1996
|
27
|
+
}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
{
|
2
|
+
"uuid": "urn:geodata.tufts.edu:Tufts.CambridgeGrid100_04",
|
3
|
+
"dc_description_s": "This polygon dataset is a 100 foot grid overlay for Cambridge, MA.",
|
4
|
+
"dc_format_s": "Shapefile",
|
5
|
+
"dc_identifier_s": "urn:geodata.tufts.edu:Tufts.CambridgeGrid100_04",
|
6
|
+
"dc_language_s": "English",
|
7
|
+
"dc_publisher_s": "Cambridge (Mass.) Geographic Information Systems",
|
8
|
+
"dc_rights_s": "Public",
|
9
|
+
"dc_title_s": "100 Foot Grid Cambridge MA 2004",
|
10
|
+
"dc_type_s": "Dataset",
|
11
|
+
"dct_references_s": "{\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"http://geoserver01.uit.tufts.edu/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"http://geoserver01.uit.tufts.edu/wms\",\"http://www.opengis.net/cat/csw/csdgm\":\"http://opengeometadata.stanford.edu/metadata/org.opengeoportal/sde:GISPORTAL.GISOWNER01.CAMBRIDGEGRID100_04/fgdc.xml\",\"http://www.w3.org/1999/xhtml\":\"http://opengeometadata.stanford.edu/metadata/org.opengeoportal/sde:GISPORTAL.GISOWNER01.CAMBRIDGEGRID100_04/fgdc.html\"}",
|
12
|
+
"dct_temporal_sm": [
|
13
|
+
"2004"
|
14
|
+
],
|
15
|
+
"dct_issued_s": "2005",
|
16
|
+
"dct_provenance_s": "Tufts",
|
17
|
+
"georss_box_s": "42.34757 -71.163984 42.408316 -71.052581",
|
18
|
+
"georss_polygon_s": "42.408316 -71.163984 42.408316 -71.052581 42.34757 -71.052581 42.34757 -71.163984 42.408316 -71.163984",
|
19
|
+
"layer_slug_s": "tufts-cambridgegrid100-04",
|
20
|
+
"layer_id_s": "sde:GISPORTAL.GISOWNER01.CAMBRIDGEGRID100_04",
|
21
|
+
"layer_geom_type_s": "Polygon",
|
22
|
+
"layer_modified_dt": "2014-12-04T21:33:07Z",
|
23
|
+
"solr_bbox": "-71.163984 42.34757 -71.052581 42.408316",
|
24
|
+
"solr_geom": "ENVELOPE(-71.163984, -71.052581, 42.408316, 42.34757)",
|
25
|
+
"solr_year_i": 2004
|
26
|
+
}
|