json_schema: {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "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).",
      "id": "http://geoblacklight.org/schema",
      "properties": {
          "dc_creator_sm": {
              "description": "Author(s). Example: George Washington, Thomas Jefferson.",
              "items": {
                  "type": "string"
              },
              "type": "array"
          },
          "dc_description_s": {
              "description": "Description for the layer.",
              "type": "string"
          },
          "dc_format_s": {
              "description": "File format for the layer, using a controlled vocabulary.",
              "enum": [
                  "Shapefile",
                  "GeoTIFF",
                  "ArcGRID",
                  "GeoJSON",
                  "AAIGrid",
                  "USGSDEM",
                  "JPEG",
                  "TIFF"
              ],
              "type": "string"
          },
          "dc_identifier_s": {
              "description": "Unique identifier for layer. May be same as UUID but may be an alternate identifier.",
              "type": "string"
          },
          "dc_language_s": {
              "description": "Language for the layer. Example: English.",
              "type": "string"
          },
          "dc_publisher_s": {
              "description": "Publisher. Example: ML InfoMap.",
              "type": "string"
          },
          "dc_rights_s": {
              "description": "Access rights for the layer.",
              "enum": [
                  "Public",
                  "Restricted"
              ],
              "type": "string"
          },
          "dc_subject_sm": {
              "description": "Subjects, preferrably in a controlled vocabulary. Examples: Census, Human settlements.",
              "items": {
                  "type": "string"
              },
              "type": "array"
          },
          "dc_title_s": {
              "description": "Title for the layer.",
              "type": "string"
          },
          "dc_type_s": {
              "description": "Resource type, using DCMI Type Vocabulary.",
              "enum": [
                  "Dataset",
                  "Image",
                  "PhysicalObject"
              ],
              "type": "string"
          },
          "dct_isPartOf_sm": {
              "description": "Holding dataset for the layer, such as the name of a collection. Example: Village Maps of India.",
              "items": {
                  "type": "string"
              },
              "type": "array"
          },
          "dct_issued_dt": {
              "_format": "date-time",
              "description": "Issued date for the layer, using XML Schema dateTime format (YYYY-MM-DDThh:mm:ssZ).",
              "type": "string"
          },
          "dct_provenance_s": {
              "description": "Institution who holds the layer.",
              "type": "string"
          },
          "dct_references_s": {
              "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.",
              "type": "string"
          },
          "dct_spatial_sm": {
              "description": "Spatial coverage and place names, preferrably in a controlled vocabulary. Example: 'Paris, France'.",
              "items": {
                  "type": "string"
              },
              "type": "array"
          },
          "dct_temporal_sm": {
              "description": "Temporal coverage, typically years or dates. Example: 1989, circa 2010, 2007-2009. Note that this field is not in a specific date format.",
              "items": {
                  "type": "string"
              },
              "type": "array"
          },
          "georss_box_s": {
              "description": "Bounding box as maximum values for S W N E. Example: 12.6 -119.4 19.9 84.8.",
              "type": "string"
          },
          "georss_point_s": {
              "description": "Point representation for layer as y, x - i.e., centroid. Example: 12.6 -119.4.",
              "type": "string"
          },
          "layer_geom_type_s": {
              "description": "Geometry type for layer data, using controlled vocabulary.",
              "enum": [
                  "Point",
                  "Line",
                  "Polygon",
                  "Raster",
                  "Scanned Map",
                  "Mixed"
              ],
              "type": "string"
          },
          "layer_id_s": {
              "description": "The complete identifier for the layer via WMS/WFS/WCS protocol. Example: druid:vr593vj7147.",
              "type": "string"
          },
          "layer_modified_dt": {
              "_format": "date-time",
              "description": "Last modification date for the metadata record, using XML Schema dateTime format (YYYY-MM-DDThh:mm:ssZ).",
              "type": "string"
          },
          "layer_slug_s": {
              "description": "Unique identifier visible to the user, used for Permalinks. Example: stanford-vr593vj7147.",
              "type": "string"
          },
          "solr_geom": {
              "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 (RPT) field.",
              "pattern": "ENVELOPE(.*,.*,.*,.*)",
              "type": "string"
          },
          "solr_year_i": {
              "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.",
              "type": "integer"
          },
          "uuid": {
              "description": "Unique identifier for layer that is globally unique.",
              "type": "string"
          }
      },
      "required": [
          "uuid",
          "dc_identifier_s",
          "dc_title_s",
          "dc_description_s",
          "dc_rights_s",
          "dct_provenance_s",
          "georss_box_s",
          "layer_id_s",
          "layer_geom_type_s",
          "layer_modified_dt",
          "layer_slug_s",
          "solr_geom",
          "solr_year_i"
      ],
      "title": "GeoBlacklight Schema",
      "type": "object"
  }