geoblacklight 1.0.0.pre2 → 1.0.0.pre3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/geoblacklight/basemaps.js +6 -4
- data/app/assets/javascripts/geoblacklight/geoblacklight.js +1 -1
- data/app/assets/javascripts/geoblacklight/modules/util.js +11 -0
- data/app/assets/javascripts/geoblacklight/viewers/esri.js +1 -1
- data/app/assets/javascripts/geoblacklight/viewers/map.js +2 -8
- data/app/assets/javascripts/geoblacklight/viewers/wms.js +1 -1
- data/app/assets/stylesheets/geoblacklight/_geoblacklight.scss +2 -0
- data/app/assets/stylesheets/geoblacklight/modules/facets.scss +5 -0
- data/app/assets/stylesheets/geoblacklight/modules/twitter-typeahead.scss +11 -0
- data/app/helpers/geoblacklight_helper.rb +12 -0
- data/app/views/catalog/_icon_facet.html.erb +1 -6
- data/lib/generators/geoblacklight/install_generator.rb +1 -1
- data/lib/geoblacklight/version.rb +1 -1
- data/lib/tasks/configure_solr.rake +0 -4
- data/lib/tasks/geoblacklight.rake +15 -0
- data/schema/geoblacklight-schema.json +207 -0
- data/schema/geoblacklight-schema.md +37 -29
- data/schema/solr/conf/schema.xml +5 -2
- data/spec/features/esri_viewer_spec.rb +7 -7
- data/spec/features/home_page_spec.rb +1 -1
- data/spec/features/layer_opacity_spec.rb +1 -1
- data/spec/features/linkified_attribute_table_spec.rb +11 -0
- data/spec/fixtures/solr_documents/actual-papermap1.json +22 -24
- data/spec/fixtures/solr_documents/actual-point1.json +2 -4
- data/spec/fixtures/solr_documents/actual-polygon1.json +2 -4
- data/spec/fixtures/solr_documents/actual-raster1.json +36 -42
- data/spec/fixtures/solr_documents/esri-dynamic-layer-all-layers.json +3 -4
- data/spec/fixtures/solr_documents/esri-dynamic-layer-single-layer.json +28 -34
- data/spec/fixtures/solr_documents/esri-feature-layer.json +15 -21
- data/spec/fixtures/solr_documents/esri-image-map-layer.json +4 -5
- data/spec/fixtures/solr_documents/esri-tiled_map_layer.json +4 -5
- data/spec/fixtures/solr_documents/esri-wms-layer.json +32 -40
- data/spec/fixtures/solr_documents/harvard_raster.json +3 -6
- data/spec/fixtures/solr_documents/public_direct_download.json +2 -5
- data/spec/fixtures/solr_documents/public_iiif_princeton.json +2 -3
- data/spec/fixtures/solr_documents/public_polygon_mit.json +3 -6
- data/spec/fixtures/solr_documents/restricted-line.json +35 -41
- data/spec/javascripts/util_spec.js +12 -0
- metadata +10 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b33d53cff735001ba0c52280885f8adff16ff7bb
|
4
|
+
data.tar.gz: 4ed8c5b0e6d73e28af176ed1b75ef39d6b8ef9fc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5b0d6bff29b375c1886231d08589c46972acf95527671bdbfe65e588ae82099df8035613291b416245f9ffc799c33b53d6b0b0dabe91cbadd3c510d8619b5510
|
7
|
+
data.tar.gz: 7573eee1db39dd2cab79dfa8a880f0466e79d84986e28bcaa105580813619820843237cf40fe58edf06123a85611dc535b7bc50e7a086329165df14f55a1c740
|
@@ -2,19 +2,21 @@
|
|
2
2
|
|
3
3
|
GeoBlacklight.Basemaps = {
|
4
4
|
darkMatter: L.tileLayer(
|
5
|
-
'https://cartodb-basemaps-{s}.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png', {
|
5
|
+
'https://cartodb-basemaps-{s}.global.ssl.fastly.net/dark_all/{z}/{x}/{y}{retina}.png', {
|
6
6
|
attribution: '© <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, © <a href="http://cartodb.com/attributions">CartoDB</a>',
|
7
7
|
maxZoom: 18,
|
8
8
|
worldCopyJump: true,
|
9
|
-
|
9
|
+
retina: '@2x',
|
10
|
+
detectRetina: false
|
10
11
|
}
|
11
12
|
),
|
12
13
|
positron: L.tileLayer(
|
13
|
-
'https://cartodb-basemaps-{s}.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png', {
|
14
|
+
'https://cartodb-basemaps-{s}.global.ssl.fastly.net/light_all/{z}/{x}/{y}{retina}.png', {
|
14
15
|
attribution: '© <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, © <a href="http://cartodb.com/attributions">CartoDB</a>',
|
15
16
|
maxZoom: 18,
|
16
17
|
worldCopyJump: true,
|
17
|
-
|
18
|
+
retina: '@2x',
|
19
|
+
detectRetina: false
|
18
20
|
}
|
19
21
|
)
|
20
22
|
};
|
@@ -0,0 +1,11 @@
|
|
1
|
+
/*global GeoBlacklight */
|
2
|
+
|
3
|
+
'use strict';
|
4
|
+
|
5
|
+
GeoBlacklight.Util = {
|
6
|
+
// Regex taken from http://stackoverflow.com/questions/37684/how-to-replace-plain-urls-with-links
|
7
|
+
linkify: function(str) {
|
8
|
+
var urlRegEx = /((([A-Za-z]{3,9}:(?:\/\/)?)(?:[\-;:&=\+\$,\w]+@)?[A-Za-z0-9\.\-]+|(?:www\.|[\-;:&=\+\$,\w]+@)[A-Za-z0-9\.\-]+)((?:\/[\+~%\/\.\w\-]*)?\??(?:[\-\+=&;%@\.\w]*)#?(?:[\.\!\/\\\w]*))?)/g;
|
9
|
+
return str.toString().replace(urlRegEx, '<a href=\'$1\'>$1</a>');
|
10
|
+
}
|
11
|
+
};
|
@@ -72,7 +72,7 @@ GeoBlacklight.Viewer.Esri = GeoBlacklight.Viewer.Map.extend({
|
|
72
72
|
// step through properties and append to table
|
73
73
|
for (var property in feature.properties) {
|
74
74
|
html.append('<tr><td>' + property + '</td>'+
|
75
|
-
'<td>' + feature.properties[property] + '</tr>');
|
75
|
+
'<td>' + GeoBlacklight.Util.linkify(feature.properties[property]) + '</tr>');
|
76
76
|
}
|
77
77
|
$('.attribute-table-body').replaceWith(html);
|
78
78
|
}
|
@@ -51,16 +51,10 @@ GeoBlacklight.Viewer.Map = GeoBlacklight.Viewer.extend({
|
|
51
51
|
*/
|
52
52
|
selectBasemap: function() {
|
53
53
|
var _this = this;
|
54
|
-
var basemap;
|
55
|
-
|
56
54
|
if (_this.data.basemap) {
|
57
|
-
|
55
|
+
return GeoBlacklight.Basemaps[_this.data.basemap];
|
58
56
|
} else {
|
59
|
-
|
57
|
+
return GeoBlacklight.Basemaps.positron;
|
60
58
|
}
|
61
|
-
|
62
|
-
// Use value from app settings to set the detect retina option.
|
63
|
-
basemap.options.detectRetina = _this.detectRetina();
|
64
|
-
return basemap;
|
65
59
|
}
|
66
60
|
});
|
@@ -58,7 +58,7 @@ GeoBlacklight.Viewer.Wms = GeoBlacklight.Viewer.Map.extend({
|
|
58
58
|
}
|
59
59
|
var html = $('<tbody class="attribute-table-body"></tbody>');
|
60
60
|
$.each(data.values, function(i, val) {
|
61
|
-
html.append('<tr><td>' + val[0] + '</td><td>' + val[1] + '</tr>');
|
61
|
+
html.append('<tr><td>' + val[0] + '</td><td>' + GeoBlacklight.Util.linkify(val[1]) + '</tr>');
|
62
62
|
});
|
63
63
|
$('.attribute-table-body').replaceWith(html);
|
64
64
|
},
|
@@ -15,6 +15,7 @@
|
|
15
15
|
@import 'font-awesome';
|
16
16
|
@import 'geoblacklight/styles';
|
17
17
|
@import 'modules/coderay';
|
18
|
+
@import 'modules/facets';
|
18
19
|
@import 'modules/mixins';
|
19
20
|
@import 'modules/icon-customization';
|
20
21
|
@import 'modules/home';
|
@@ -26,3 +27,4 @@
|
|
26
27
|
@import 'modules/search_widgets';
|
27
28
|
@import 'modules/toolbar';
|
28
29
|
@import 'modules/web_services';
|
30
|
+
@import 'modules/twitter-typeahead';
|
@@ -140,4 +140,16 @@ module GeoblacklightHelper
|
|
140
140
|
def leaflet_options
|
141
141
|
Settings.LEAFLET
|
142
142
|
end
|
143
|
+
|
144
|
+
##
|
145
|
+
# Renders a facet item with an icon placed as the first child of
|
146
|
+
# `.facet-label`. This works with `render_facet_value` and
|
147
|
+
# `render_selected_facet_value`
|
148
|
+
# @return String
|
149
|
+
def render_facet_item_with_icon(field_name, item)
|
150
|
+
doc = Nokogiri::HTML.fragment(render_facet_item(field_name, item))
|
151
|
+
doc.at_css('.facet-label').children.first
|
152
|
+
.add_previous_sibling(geoblacklight_icon(item.value))
|
153
|
+
doc.to_html.html_safe
|
154
|
+
end
|
143
155
|
end
|
@@ -2,12 +2,7 @@
|
|
2
2
|
<% paginator = facet_paginator(facet_field, display_facet) %>
|
3
3
|
<% paginator.items.each do |item| -%>
|
4
4
|
<li>
|
5
|
-
<%=
|
6
|
-
<% if facet_in_params?( solr_field, item.value ) %>
|
7
|
-
<%= render_selected_facet_value(solr_field, item) %>
|
8
|
-
<% else %>
|
9
|
-
<%= render_facet_value(solr_field, item) %>
|
10
|
-
<% end -%>
|
5
|
+
<%= render_facet_item_with_icon(field_name, item) %>
|
11
6
|
</li>
|
12
7
|
<% end %>
|
13
8
|
</ul>
|
@@ -18,7 +18,7 @@ module Geoblacklight
|
|
18
18
|
def inject_geoblacklight_routes
|
19
19
|
route <<-EOF.strip_heredoc
|
20
20
|
concern :gbl_exportable, Geoblacklight::Routes::Exportable.new
|
21
|
-
resources :solr_documents, only: [:show], controller: 'catalog' do
|
21
|
+
resources :solr_documents, only: [:show], path: '/catalog', controller: 'catalog' do
|
22
22
|
concerns :gbl_exportable
|
23
23
|
end
|
24
24
|
|
@@ -20,8 +20,4 @@ namespace :geoblacklight do
|
|
20
20
|
FileUtils.cp File.join(root, item[:src]), "jetty/solr/blacklight-core/conf/#{item[:file]}", verbose: true
|
21
21
|
end
|
22
22
|
end
|
23
|
-
|
24
|
-
# Leaving this task in for backwards compatibility
|
25
|
-
desc 'Runs geoblacklight:configure_solr, you should just use geoblacklight:configure_solr'
|
26
|
-
task configure_jetty: :configure_solr
|
27
23
|
end
|
@@ -18,6 +18,21 @@ namespace :geoblacklight do
|
|
18
18
|
Blacklight.default_index.connection.commit
|
19
19
|
end
|
20
20
|
end
|
21
|
+
|
22
|
+
desc "Ingests a directory of geoblacklight.json files"
|
23
|
+
task :ingest, [:directory] => :environment do |_t, args|
|
24
|
+
args.with_default(directory: 'data')
|
25
|
+
Dir.glob(File.join(args[:directory], '**', 'geoblacklight.json')).each do |fn|
|
26
|
+
puts "Ingesting #{fn}"
|
27
|
+
begin
|
28
|
+
Blacklight.default_index.connection.add(JSON.parse(File.read(fn)))
|
29
|
+
rescue => e
|
30
|
+
puts "Failed to ingest #{fn}: #{e.inspect}"
|
31
|
+
end
|
32
|
+
end
|
33
|
+
puts "Committing changes to Solr"
|
34
|
+
Blacklight.default_index.connection.commit
|
35
|
+
end
|
21
36
|
end
|
22
37
|
namespace :downloads do
|
23
38
|
desc 'Delete all cached downloads'
|
@@ -0,0 +1,207 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
3
|
+
"description": "Schema for GeoBlacklight as implemented for Solr 4.10+. See http://journal.code4lib.org/articles/9710 for more details. Note that the Solr schema uses dynamic typing based on the suffix of the field name. For example, _s denotes a string where _sm denotes a multi-valued string (array of strings).",
|
4
|
+
"id": "http://geoblacklight.org/schema",
|
5
|
+
"title": "GeoBlacklight Schema",
|
6
|
+
"required": [
|
7
|
+
"dc_title_s",
|
8
|
+
"dc_description_s",
|
9
|
+
"dc_rights_s",
|
10
|
+
"dct_provenance_s",
|
11
|
+
"layer_id_s",
|
12
|
+
"layer_geom_type_s",
|
13
|
+
"layer_modified_dt",
|
14
|
+
"layer_slug_s",
|
15
|
+
"solr_geom"
|
16
|
+
],
|
17
|
+
"type": "array",
|
18
|
+
"properties": {
|
19
|
+
"layer": {
|
20
|
+
"title": "layer",
|
21
|
+
"description": "A GIS data layer. See [this example](https://github.com/OpenGeoMetadata/edu.stanford.purl/blob/master/bb/099/zb/1450/geoblacklight.json) metadata layer.",
|
22
|
+
"type": "object",
|
23
|
+
"properties": {
|
24
|
+
"uuid": {
|
25
|
+
"type": "string",
|
26
|
+
"description": "*DEPRECATED* (use `dc_identifier_s`): Unique identifier for layer that is globally unique.",
|
27
|
+
"example": "http://purl.stanford.edu/vr593vj7147"
|
28
|
+
},
|
29
|
+
"dc_identifier_s": {
|
30
|
+
"type": "string",
|
31
|
+
"description": "Unique identifier for layer as a URI. It should be globally unique across all institutions, assumed not to be end-user visible, and is usually of the form `http://institution/id`. See https://github.com/geoblacklight/geoblacklight/wiki/Schema for more detailed documentation.",
|
32
|
+
"example": "http://purl.stanford.edu/vr593vj7147"
|
33
|
+
},
|
34
|
+
"dc_title_s": {
|
35
|
+
"type": "string",
|
36
|
+
"description": "Title for the layer.",
|
37
|
+
"example": "My Title"
|
38
|
+
},
|
39
|
+
"dc_description_s": {
|
40
|
+
"type": "string",
|
41
|
+
"description": "Description for the layer.",
|
42
|
+
"example": "My Description"
|
43
|
+
},
|
44
|
+
"dc_rights_s": {
|
45
|
+
"type": "string",
|
46
|
+
"enum": [
|
47
|
+
"Public",
|
48
|
+
"Restricted"
|
49
|
+
],
|
50
|
+
"description": "Access rights for the layer."
|
51
|
+
},
|
52
|
+
"dct_provenance_s": {
|
53
|
+
"type": "string",
|
54
|
+
"description": "Institution who holds the layer.",
|
55
|
+
"example": "Stanford"
|
56
|
+
},
|
57
|
+
"dct_references_s": {
|
58
|
+
"type": "string",
|
59
|
+
"description": "External resources that are available for the layer. The value is a JSON hash where each key is a URI for the protocol or format, and the value is the URL to the external resource. See `dct_references_s` [detailed documentation](http://geoblacklight.org/tutorial/2015/02/09/geoblacklight-overview.html)",
|
60
|
+
"example": "{ ... }"
|
61
|
+
},
|
62
|
+
"georss_box_s": {
|
63
|
+
"type": "string",
|
64
|
+
"description": "*DEPRECATED* (use `solr_geom`): Bounding box for the layer, as maximum values for S W N E.",
|
65
|
+
"example": "12.6 -119.4 19.9 84.8"
|
66
|
+
},
|
67
|
+
"layer_id_s": {
|
68
|
+
"type": "string",
|
69
|
+
"description": "The complete identifier for the layer via WMS/WFS/WCS protocol.",
|
70
|
+
"example": "druid:vr593vj7147"
|
71
|
+
},
|
72
|
+
"layer_geom_type_s": {
|
73
|
+
"type": "string",
|
74
|
+
"enum": [
|
75
|
+
"Point",
|
76
|
+
"Line",
|
77
|
+
"Polygon",
|
78
|
+
"Raster",
|
79
|
+
"Scanned Map",
|
80
|
+
"Mixed"
|
81
|
+
],
|
82
|
+
"description": "Geometry type for layer data, using controlled vocabulary."
|
83
|
+
},
|
84
|
+
"layer_modified_dt": {
|
85
|
+
"type": "string",
|
86
|
+
"format": "date-time",
|
87
|
+
"description": "Last modification date for the metadata record, using XML Schema dateTime format (YYYY-MM-DDThh:mm:ssZ)."
|
88
|
+
},
|
89
|
+
"layer_slug_s": {
|
90
|
+
"type": "string",
|
91
|
+
"description": "Identifies a layer in human-readable keywords. Note this value is visible to the user, and used for Permalinks. The value should be alpha-numeric characters separated by dashes, and is typically of the form `institution-keyword1-keyword2`. It should also be globally unique across all institutions in *your* GeoBlacklight index. See https://github.com/geoblacklight/geoblacklight/wiki/Schema for more detailed documentation.",
|
92
|
+
"example": "stanford-andhra-pradesh-village-boundaries"
|
93
|
+
},
|
94
|
+
"solr_geom": {
|
95
|
+
"type": "string",
|
96
|
+
"pattern": "ENVELOPE(.*,.*,.*,.*)",
|
97
|
+
"description": "Bounding box of the layer as a ENVELOPE WKT (from the CQL standard) using coordinates in (West, East, North, South) order. Note that this field is indexed as a Solr spatial (RPT) field.",
|
98
|
+
"example": "ENVELOPE(76.76, 84.76, 19.91, 12.62)"
|
99
|
+
},
|
100
|
+
"solr_year_i": {
|
101
|
+
"type": "integer",
|
102
|
+
"description": "*DEPRECATED* (only used by the Blacklight range plugin, not core GeoBlacklight, and generally you want a multi-valued field here): *Derived from* `dct_temporal_sm`. Year for which layer is valid and only a single value. Note that this field is indexed as a Solr numeric field.",
|
103
|
+
"example": "1989"
|
104
|
+
},
|
105
|
+
"dc_creator_sm": {
|
106
|
+
"type": "array",
|
107
|
+
"items": {
|
108
|
+
"type": "string"
|
109
|
+
},
|
110
|
+
"description": "Author(s) of the layer. *Optional*",
|
111
|
+
"example": "George Washington, Thomas Jefferson"
|
112
|
+
},
|
113
|
+
"dc_format_s": {
|
114
|
+
"type": "string",
|
115
|
+
"enum": [
|
116
|
+
"Shapefile",
|
117
|
+
"GeoTIFF",
|
118
|
+
"ArcGRID"
|
119
|
+
],
|
120
|
+
"description": "File format for the layer, using a controlled vocabulary. *Optional*"
|
121
|
+
},
|
122
|
+
"dc_language_s": {
|
123
|
+
"type": "string",
|
124
|
+
"description": "Language for the layer. *Optional*. Note that future versions of the schema may make this a multi-valued field.",
|
125
|
+
"example": "English"
|
126
|
+
},
|
127
|
+
"dc_publisher_s": {
|
128
|
+
"type": "string",
|
129
|
+
"description": "Publisher of the layer. *Optional*",
|
130
|
+
"example": "ML InfoMap"
|
131
|
+
},
|
132
|
+
"dc_subject_sm": {
|
133
|
+
"type": "array",
|
134
|
+
"items": {
|
135
|
+
"type": "string"
|
136
|
+
},
|
137
|
+
"description": "Subjects for the layer, preferrably in a controlled vocabulary. *Optional*",
|
138
|
+
"example": "Census, Human settlements"
|
139
|
+
},
|
140
|
+
"dc_type_s": {
|
141
|
+
"type": "string",
|
142
|
+
"enum": [
|
143
|
+
"Dataset",
|
144
|
+
"Image",
|
145
|
+
"PhysicalObject"
|
146
|
+
],
|
147
|
+
"description": "Resource type of the layer, using DCMI Type Vocabulary, usually a `Dataset`. *Optional*"
|
148
|
+
},
|
149
|
+
"dct_spatial_sm": {
|
150
|
+
"type": "array",
|
151
|
+
"items": {
|
152
|
+
"type": "string"
|
153
|
+
},
|
154
|
+
"description": "Spatial coverage and place names for the layer, preferrably in a controlled vocabulary. *Optional*",
|
155
|
+
"example": "Paris, San Francisco"
|
156
|
+
},
|
157
|
+
"dct_temporal_sm": {
|
158
|
+
"type": "array",
|
159
|
+
"items": {
|
160
|
+
"type": "string"
|
161
|
+
},
|
162
|
+
"description": "Temporal coverage for the layer, typically years or dates. Note that this field is not in a specific date format. *Optional*",
|
163
|
+
"example": "1989, circa 2010, 2007-2009"
|
164
|
+
},
|
165
|
+
"dct_issued_dt": {
|
166
|
+
"type": "string",
|
167
|
+
"format": "date-time",
|
168
|
+
"description": "Issued date for the layer, using XML Schema dateTime format (YYYY-MM-DDThh:mm:ssZ). *Optional*"
|
169
|
+
},
|
170
|
+
"dct_isPartOf_sm": {
|
171
|
+
"type": "array",
|
172
|
+
"items": {
|
173
|
+
"type": "string"
|
174
|
+
},
|
175
|
+
"description": "Holding dataset for the layer, such as the name of a collection. *Optional*",
|
176
|
+
"example": "Village Maps of India"
|
177
|
+
},
|
178
|
+
"georss_point_s": {
|
179
|
+
"type": "string",
|
180
|
+
"description": "*DEPRECATED* (use `georss_box_s`): Point representation for layer as y, x - i.e., centroid",
|
181
|
+
"example": "12.6 -119.4"
|
182
|
+
},
|
183
|
+
"dc_relation_sm": {
|
184
|
+
"type": "array",
|
185
|
+
"items": {
|
186
|
+
"type": "string"
|
187
|
+
},
|
188
|
+
"description": "*DEPRECATED* (use `dct_isPartOf_sm`). A reference to a related resource for this layer. *Optional*",
|
189
|
+
"example": "http://purl.stanford.edu/vr593vj7147"
|
190
|
+
},
|
191
|
+
"dc_source_sm": {
|
192
|
+
"type": "array",
|
193
|
+
"items": {
|
194
|
+
"type": "string"
|
195
|
+
},
|
196
|
+
"description": "The identity of a layer from which this layer's data was derived. *Optional*",
|
197
|
+
"example": "stanford-vr593vj7147"
|
198
|
+
},
|
199
|
+
"geoblacklight_version": {
|
200
|
+
"type": "string",
|
201
|
+
"description": "The version of the GeoBlacklight Schema to which this metadata record conforms.",
|
202
|
+
"example": "1.0"
|
203
|
+
}
|
204
|
+
}
|
205
|
+
}
|
206
|
+
}
|
207
|
+
}
|
@@ -1,31 +1,39 @@
|
|
1
|
-
|
1
|
+
## <a name="resource-layer">layer</a>
|
2
|
+
|
3
|
+
|
4
|
+
A GIS data layer. See [this example](https://github.com/OpenGeoMetadata/edu.stanford.purl/blob/master/bb/099/zb/1450/geoblacklight.json) metadata layer.
|
5
|
+
|
6
|
+
### Attributes
|
7
|
+
|
8
|
+
| Name | Type | Description | Example |
|
9
|
+
| ------- | ------- | ------- | ------- |
|
10
|
+
| **dc_creator_sm** | *array* | Author(s) of the layer. *Optional* | `"George Washington, Thomas Jefferson"` |
|
11
|
+
| **dc_description_s** | *string* | Description for the layer. | `"My Description"` |
|
12
|
+
| **dc_format_s** | *string* | File format for the layer, using a controlled vocabulary. *Optional*<br/> **one of:**`"Shapefile"` or `"GeoTIFF"` or `"ArcGRID"` | `"Shapefile"` |
|
13
|
+
| **dc_identifier_s** | *string* | Unique identifier for layer as a URI. It should be globally unique across all institutions, assumed not to be end-user visible, and is usually of the form `http://institution/id`. See https://github.com/geoblacklight/geoblacklight/wiki/Schema for more detailed documentation. | `"http://purl.stanford.edu/vr593vj7147"` |
|
14
|
+
| **dc_language_s** | *string* | Language for the layer. *Optional*. Note that future versions of the schema may make this a multi-valued field. | `"English"` |
|
15
|
+
| **dc_publisher_s** | *string* | Publisher of the layer. *Optional* | `"ML InfoMap"` |
|
16
|
+
| **dc_relation_sm** | *array* | *DEPRECATED* (use `dct_isPartOf_sm`). A reference to a related resource for this layer. *Optional* | `"http://purl.stanford.edu/vr593vj7147"` |
|
17
|
+
| **dc_rights_s** | *string* | Access rights for the layer.<br/> **one of:**`"Public"` or `"Restricted"` | `"Public"` |
|
18
|
+
| **dc_source_sm** | *array* | The identity of a layer from which this layer's data was derived. *Optional* | `"stanford-vr593vj7147"` |
|
19
|
+
| **dc_subject_sm** | *array* | Subjects for the layer, preferrably in a controlled vocabulary. *Optional* | `"Census, Human settlements"` |
|
20
|
+
| **dc_title_s** | *string* | Title for the layer. | `"My Title"` |
|
21
|
+
| **dc_type_s** | *string* | Resource type of the layer, using DCMI Type Vocabulary, usually a `Dataset`. *Optional*<br/> **one of:**`"Dataset"` or `"Image"` or `"PhysicalObject"` | `"Dataset"` |
|
22
|
+
| **dct_isPartOf_sm** | *array* | Holding dataset for the layer, such as the name of a collection. *Optional* | `"Village Maps of India"` |
|
23
|
+
| **dct_issued_dt** | *date-time* | Issued date for the layer, using XML Schema dateTime format (YYYY-MM-DDThh:mm:ssZ). *Optional* | `"2015-01-01T12:00:00Z"` |
|
24
|
+
| **dct_provenance_s** | *string* | Institution who holds the layer. | `"Stanford"` |
|
25
|
+
| **dct_references_s** | *string* | External resources that are available for the layer. The value is a JSON hash where each key is a URI for the protocol or format, and the value is the URL to the external resource. See `dct_references_s` [detailed documentation](http://geoblacklight.org/tutorial/2015/02/09/geoblacklight-overview.html) | `"{ ... }"` |
|
26
|
+
| **dct_spatial_sm** | *array* | Spatial coverage and place names for the layer, preferrably in a controlled vocabulary. *Optional* | `"Paris, San Francisco"` |
|
27
|
+
| **dct_temporal_sm** | *array* | Temporal coverage for the layer, typically years or dates. Note that this field is not in a specific date format. *Optional* | `"1989, circa 2010, 2007-2009"` |
|
28
|
+
| **geoblacklight_version** | *string* | The version of the GeoBlacklight Schema to which this metadata record conforms. | `"1.0"` |
|
29
|
+
| **georss_box_s** | *string* | *DEPRECATED* (use `solr_geom`): Bounding box for the layer, as maximum values for S W N E. | `"12.6 -119.4 19.9 84.8"` |
|
30
|
+
| **georss_point_s** | *string* | *DEPRECATED* (use `georss_box_s`): Point representation for layer as y, x - i.e., centroid | `"12.6 -119.4"` |
|
31
|
+
| **layer_geom_type_s** | *string* | Geometry type for layer data, using controlled vocabulary.<br/> **one of:**`"Point"` or `"Line"` or `"Polygon"` or `"Raster"` or `"Scanned Map"` or `"Mixed"` | `"Point"` |
|
32
|
+
| **layer_id_s** | *string* | The complete identifier for the layer via WMS/WFS/WCS protocol. | `"druid:vr593vj7147"` |
|
33
|
+
| **layer_modified_dt** | *date-time* | Last modification date for the metadata record, using XML Schema dateTime format (YYYY-MM-DDThh:mm:ssZ). | `"2015-01-01T12:00:00Z"` |
|
34
|
+
| **layer_slug_s** | *string* | Identifies a layer in human-readable keywords. Note this value is visible to the user, and used for Permalinks. The value should be alpha-numeric characters separated by dashes, and is typically of the form `institution-keyword1-keyword2`. It should also be globally unique across all institutions in *your* GeoBlacklight index. See https://github.com/geoblacklight/geoblacklight/wiki/Schema for more detailed documentation. | `"stanford-andhra-pradesh-village-boundaries"` |
|
35
|
+
| **solr_geom** | *string* | Bounding box of the layer as a ENVELOPE WKT (from the CQL standard) using coordinates in (West, East, North, South) order. Note that this field is indexed as a Solr spatial (RPT) field.<br/> **pattern:** `ENVELOPE(.*,.*,.*,.*)` | `"ENVELOPE(76.76, 84.76, 19.91, 12.62)"` |
|
36
|
+
| **solr_year_i** | *integer* | *DEPRECATED* (only used by the Blacklight range plugin, not core GeoBlacklight, and generally you want a multi-valued field here): *Derived from* `dct_temporal_sm`. Year for which layer is valid and only a single value. Note that this field is indexed as a Solr numeric field. | `"1989"` |
|
37
|
+
| **uuid** | *string* | *DEPRECATED* (use `dc_identifier_s`): Unique identifier for layer that is globally unique. | `"http://purl.stanford.edu/vr593vj7147"` |
|
2
38
|
|
3
|
-
Table View
|
4
39
|
|
5
|
-
Properties | Type | Controlled Values | Description
|
6
|
-
---------- | ---- | ------------ |-----------
|
7
|
-
**uuid** | string || Unique identifier for layer that is globally unique.
|
8
|
-
**dc\_identifier\_s** | string || Unique identifier for layer. May be same as UUID but may be an alternate identifier.
|
9
|
-
**dc\_title\_s** | string || Title for the layer.
|
10
|
-
**dc\_description\_s** | string || Description for the layer.
|
11
|
-
**dc\_rights\_s**| string | "Public", "Restricted" | Access rights for the layer.
|
12
|
-
**dct\_provenance\_s** | string || Institution who holds the layer.
|
13
|
-
**dct\_references\_s** | string || JSON hash for external resources, where each key is a URI for the protocol or format and the value is the URL to the resource.
|
14
|
-
**georss\_box\_s** | string || Bounding box as maximum values for S W N E. Example: 12.6 -119.4 19.9 84.8.
|
15
|
-
**layer\_id\_s** | string || The complete identifier for the layer via WMS/WFS/WCS protocol. Example: druid:vr593vj7147.
|
16
|
-
**layer\_geom\_type\_s** | string | "Point", "Line", "Polygon", "Raster", "Scanned Map", "Mixed" | Geometry type for layer data, using controlled vocabulary.
|
17
|
-
**layer\_modified\_dt** | string | date-time | Last modification date for the metadata record, using XML Schema dateTime format (YYYY-MM-DDThh:mm:ssZ).
|
18
|
-
**layer\_slug\_s** | string || Unique identifier visible to the user, used for Permalinks. Example: stanford-vr593vj7147.
|
19
|
-
**solr\_geom** | string | /ENVELOPE(.\*,.\*,.\*,.\*)/ | **Derived** from georss\_polygon\_s or georss\_box\_s. Shape of the layer as a ENVELOPE WKT using W E N S. Example: ENVELOPE(76.76, 84.76, 19.91, 12.62). Note that this field is indexed as a Solr spatial (RPT) field.
|
20
|
-
**solr\_year\_i** | integer || **Derived** from dct\_temporal\_sm. Year for which layer is valid and only a single value. Example: 1989. Note that this field is indexed as a Solr numeric field.
|
21
|
-
dc\_creator\_sm | multivalued string || Author(s). Example: George Washington, Thomas Jefferson.
|
22
|
-
dc\_format\_s | string | Shapefile, GeoTIFF, ArcGRID | File format for the layer, using a controlled vocabulary.
|
23
|
-
dc\_language\_s | string || Language for the layer. Example: English.
|
24
|
-
dc\_publisher\_s | string || Publisher. Example: ML InfoMap.
|
25
|
-
dc\_subject\_sm | multivalued string || Subjects, preferrably in a controlled vocabulary. Examples: Census, Human settlements.
|
26
|
-
dc\_type\_s | string | "Dataset", "Image", "PhysicalObject" | Resource type, using DCMI Type Vocabulary.
|
27
|
-
dct\_spatial\_sm | multivalued string || Spatial coverage and place names, perferrably in a controlled vocabulary. Example: "Paris, France".
|
28
|
-
dct\_temporal\_sm | multivalued string || Temporal coverage, typically years or dates. Example: 1989, circa 2010, 2007-2009. Note that this field is not in a specific date format.
|
29
|
-
dct\_issued\_dt | string | date-time | Issued date for the layer, using XML Schema dateTime format (YYYY-MM-DDThh:mm:ssZ).
|
30
|
-
dct\_isPartOf\_sm | multivalued string || Holding dataset for the layer, such as the name of a collection. Example: Village Maps of India.
|
31
|
-
georss\_point\_s | string || Point representation for layer as y, x - i.e., centroid. Example: 12.6 -119.4.
|