Skip to content
This repository has been archived by the owner on Jan 25, 2018. It is now read-only.

Commit

Permalink
initial version of JSON Schema. Fixes #25
Browse files Browse the repository at this point in the history
  • Loading branch information
Darren Hardy committed Jan 21, 2015
1 parent 37ea6e6 commit 6592a24
Showing 1 changed file with 173 additions and 0 deletions.
173 changes: 173 additions & 0 deletions geoblacklight-schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,173 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Schema for GeoBlacklight as implemented for Solr 4.7+. 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).",
"id": "http://geoblacklight.org/schema",
"title": "GeoBlacklight Schema",
"required": [
"uuid",
"dc_identifier_s",
"dc_title_s",
"dc_description_s",
"dc_rights_s",
"dct_provenance_s",
"dct_references_s",
"georss_box_s",
"layer_id_s",
"layer_geom_type_s",
"layer_modified_dt",
"layer_slug_s",
"solr_bbox",
"solr_geom",
"solr_year_i"
],
"type": "object",
"properties": {
"uuid": {
"type": "string",
"description": " Unique identifier for layer that is globally unique."

},
"dc_identifier_s": {
"type": "string",
"description": " Unique identifier for layer. May be same as UUID but may be an alternate identifier."
},
"dc_title_s": {
"type": "string",
"description": " Title for the layer."

},
"dc_description_s": {
"type": "string",
"description": " Description for the layer."

},
"dc_rights_s": {
"type": "string",
"enum": ["Public", "Restricted"],
"description": " Access rights for the layer. Must be Public or Restricted."

},
"dct_provenance_s": {
"type": "string",
"description": " Institution who holds the layer."

},
"dct_references_s": {
"type": "string",
"description": " 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."

},
"georss_box_s": {
"type": "string",
"description": " Bounding box as maximum values for S W N E. Example: 12.6 -119.4 19.9 84.8."

},
"layer_id_s": {
"type": "string",
"description": " The complete identifier for the layer via WMS/WFS/WCS protocol. Example: druid:vr593vj7147."

},
"layer_geom_type_s": {
"type": "string",
"enum": ["Point", "Line", "Polygon", "Raster", "Scanned Map", "Paper Map", "Mixed"],
"description": " Geometry type for layer data."

},
"layer_modified_dt": {
"type": "string",
"description": " Last modification date for the metadata record in the Solr date/time format. Example: 2014-04-30T13:48:51Z. Note that this field is indexed as a Solr date-time field."

},
"layer_slug_s": {
"type": "string",
"description": " Unique identifier visible to the user, used for Permalinks. Example: stanford-vr593vj7147."

},
"solr_bbox": {
"type": "string",
"description": "Derived from georss_box_s. Bounding box as maximum values for W S E N. Example: 76.76 12.62 84.76 19.91. Note that this field is indexed as a Solr spatial field."

},
"solr_geom": {
"type": "string",
"description": "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 field."

},
"solr_year_i": {
"type": "integer",
"description": "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."

},
"dc_creator_sm": {
"type": "array",
"items": {
"type": "string"
},
"description": "Author(s). Example: George Washington, Thomas Jefferson."

},
"dc_format_s": {
"type": "string",
"description": "File format for the layer. Examples: Shapefile, GeoTIFF, ArcGRID."

},
"dc_language_s": {
"type": "string",
"description": "Language for the layer. Example: English."

},
"dc_publisher_s": {
"type": "string",
"description": "Publisher. Example: ML InfoMap."

},
"dc_subject_sm": {
"type": "array",
"items": {
"type": "string"
},
"description": "Subjects, preferrably in a controlled vocabulary. Examples: Census, Human settlements."

},
"dc_type_s": {
"type": "string",
"enum": ["Dataset", "Image", "PhysicalObject"],
"description": "Resource type."

},
"dct_spatial_sm": {
"type": "array",
"items": {
"type": "string"
},
"description": "Spatial coverage and place names. Example: Paris, France."

},
"dct_temporal_sm": {
"type": "array",
"items": {
"type": "string"
},
"description": "Temporal coverage, typically years or dates. Example: 1989, 2010."

},
"dct_issued_dt": {
"type": "string",
"description": "Issued date for the layer."

},
"dct_isPartOf_sm": {
"type": "array",
"items": {
"type": "string"
},
"description": "Holding dataset for the layer, such as the name of a collection. Example: Village Maps of India."

},
"georss_point_s": {
"type": "string",
"description": "Point representation for layer as y, x - i.e., centroid. Example: 12.6 -119.4."

}
}
}

0 comments on commit 6592a24

Please sign in to comment.