diff --git a/.gitignore b/.gitignore index 3f49f8a5..14c4bda1 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,7 @@ # Ignore assets /public/assets/* + +# Ignore Vagrant +/.vagrant +/sdr.box diff --git a/Gemfile b/Gemfile index 80dfa904..2419022e 100644 --- a/Gemfile +++ b/Gemfile @@ -15,20 +15,15 @@ gem 'twitter-typeahead-rails', '0.11.1.pre.corejavascript' # Figs for var management gem 'figs' -# MySQL for Rails backend dbter -gem 'mysql2', '~> 0.3.20' - # Loads NYU Libaries omniauth strategy gem 'omniauth-nyulibraries', github: 'NYULibraries/omniauth-nyulibraries', tag: 'v2.1.2' gem 'devise', '>= 3.4.1' gem 'rsolr' -gem 'solr_wrapper' +gem 'solr_wrapper', '~> 2.0' # Bundle edge Rails instead: gem 'rails', github: 'rails/rails' gem 'rails', '>= 5.0.0' -# Use sqlite3 as the database for Active Record -gem 'sqlite3' # Use SCSS for stylesheets gem 'sass-rails', '~> 5.0' # Use Uglifier as compressor for JavaScript assets @@ -59,6 +54,13 @@ gem 'sdoc', '~> 0.4.0', group: :doc group :development, :test do # Call 'byebug' anywhere in the code to stop execution and get a debugger console gem 'byebug' + gem 'capybara' + gem 'selenium-webdriver' + gem 'chromedriver-helper' + gem 'database_cleaner' + gem 'rspec-rails', '~> 3.5' + gem 'spring' + gem 'sqlite3' end group :development do @@ -67,3 +69,8 @@ group :development do # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring gem 'spring' end + +group :production do + # MySQL for Rails backend dbter + gem 'mysql2', '~> 0.3.20' +end diff --git a/Gemfile.lock b/Gemfile.lock index 236e86b9..8059a50e 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -48,6 +48,8 @@ GEM tzinfo (~> 1.1) addressable (2.5.2) public_suffix (>= 2.0.2, < 4.0) + archive-zip (0.11.0) + io-like (~> 0.3.0) arel (7.1.4) autoprefixer-rails (8.4.1) execjs @@ -69,6 +71,19 @@ GEM sass (>= 3.3.4) builder (3.2.3) byebug (10.0.2) + capybara (3.12.0) + addressable + mini_mime (>= 0.1.3) + nokogiri (~> 1.8) + rack (>= 1.6.0) + rack-test (>= 0.6.3) + regexp_parser (~> 1.2) + xpath (~> 3.2) + childprocess (0.9.0) + ffi (~> 1.0, >= 1.0.11) + chromedriver-helper (2.1.0) + archive-zip (~> 0.10) + nokogiri (~> 1.8) coderay (1.1.2) coffee-rails (4.1.1) coffee-script (>= 2.2.0) @@ -83,6 +98,7 @@ GEM deep_merge (~> 1.2.1) dry-validation (>= 0.10.4) crass (1.0.4) + database_cleaner (1.7.0) debug_inspector (0.0.3) deep_merge (1.2.1) deprecation (1.0.0) @@ -93,6 +109,7 @@ GEM railties (>= 4.1.0, < 6.0) responders warden (~> 1.2.3) + diff-lcs (1.3) dry-configurable (0.7.0) concurrent-ruby (~> 1.0) dry-container (0.6.0) @@ -164,6 +181,7 @@ GEM i18n (1.0.1) concurrent-ruby (~> 1.0) inflecto (0.0.2) + io-like (0.3.0) jbuilder (2.7.0) activesupport (>= 4.2.0) multi_json (>= 1.2) @@ -256,15 +274,33 @@ GEM rb-inotify (0.9.10) ffi (>= 0.5.0, < 2) rdoc (4.3.0) + regexp_parser (1.3.0) responders (2.4.0) actionpack (>= 4.2.0, < 5.3) railties (>= 4.2.0, < 5.3) - retriable (3.1.1) + retriable (3.1.2) rsolr (2.2.0) builder (>= 2.1.2) faraday (>= 0.9.0) - ruby-progressbar (1.9.0) - rubyzip (1.2.1) + rspec-core (3.8.0) + rspec-support (~> 3.8.0) + rspec-expectations (3.8.2) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.8.0) + rspec-mocks (3.8.0) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.8.0) + rspec-rails (3.8.1) + actionpack (>= 3.0) + activesupport (>= 3.0) + railties (>= 3.0) + rspec-core (~> 3.8.0) + rspec-expectations (~> 3.8.0) + rspec-mocks (~> 3.8.0) + rspec-support (~> 3.8.0) + rspec-support (3.8.0) + ruby-progressbar (1.10.0) + rubyzip (1.2.2) sanitize (4.6.4) crass (~> 1.0.2) nokogiri (>= 1.4.4) @@ -283,7 +319,10 @@ GEM sdoc (0.4.2) json (~> 1.7, >= 1.7.7) rdoc (~> 4.0) - solr_wrapper (1.2.0) + selenium-webdriver (3.141.0) + childprocess (~> 0.5) + rubyzip (~> 1.2, >= 1.2.2) + solr_wrapper (2.0.0) faraday retriable ruby-progressbar @@ -322,6 +361,8 @@ GEM websocket-driver (0.6.5) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.3) + xpath (3.2.0) + nokogiri (~> 1.8) PLATFORMS ruby @@ -329,7 +370,10 @@ PLATFORMS DEPENDENCIES blacklight byebug + capybara + chromedriver-helper coffee-rails (~> 4.1.0) + database_cleaner devise (>= 3.4.1) figs geoblacklight (~> 1.8.0) @@ -339,9 +383,11 @@ DEPENDENCIES omniauth-nyulibraries! rails (>= 5.0.0) rsolr + rspec-rails (~> 3.5) sass-rails (~> 5.0) sdoc (~> 0.4.0) - solr_wrapper + selenium-webdriver + solr_wrapper (~> 2.0) spring sqlite3 turbolinks @@ -350,4 +396,4 @@ DEPENDENCIES web-console (~> 2.0) BUNDLED WITH - 1.16.1 + 1.16.6 diff --git a/README.md b/README.md index 012eb807..c82a9ea6 100644 --- a/README.md +++ b/README.md @@ -3,3 +3,34 @@ This tracks the implementation of GeoBlacklight used to power the front-end of our [Spatial Data Repository](https://geo.nyu.edu) Check out the [wiki](https://github.com/NYULibraries/spatial_data_repository/wiki) for details about local modifications, as well as a detailed overview of the service architecture. + +## Development + +### Vagrant / Virtualbox + +* Install Vagrant: https://www.vagrantup.com/downloads.html +* Install VirtualBox: https://www.virtualbox.org/wiki/Downloads + +#### Run app via these commands + +```bash + +cd +vagrant up +vagrant ssh +cd /vagrant/sdr + +# FIGS - Set Dev/Test ENV variables +cp config/vars.yml.example config/vars.yml + +# Init database +bundle exec rake db:schema:load + +# Run Solr and Rails App server +bundle exec rake sdr:server +``` + +Application should now be running. + +* Solr admin panel at: http://localhost:8983/ +* Rails app at: http://localhost:3000 diff --git a/Vagrantfile b/Vagrantfile new file mode 100644 index 00000000..b745d71c --- /dev/null +++ b/Vagrantfile @@ -0,0 +1,79 @@ +# frozen_string_literal: true + +# -*- mode: ruby -*- +# vi: set ft=ruby : + +# All Vagrant configuration is done below. The "2" in Vagrant.configure +# configures the configuration version (we support older styles for +# backwards compatibility). Please don't change it unless you know what +# you're doing. +Vagrant.configure(2) do |config| + # The most common configuration options are documented and commented below. + # For a complete reference, please see the online documentation at + # https://docs.vagrantup.com. + + # Every Vagrant development environment requires a box. You can search for + # boxes at https://atlas.hashicorp.com/search. + config.vm.box = "bento/centos-7.1" + config.vm.hostname = "sdr-geoblacklight" + config.vm.synced_folder ".", "/vagrant/sdr" + + # Disable automatic box update checking. If you disable this, then + # boxes will only be checked for updates when the user runs + # `vagrant box outdated`. This is not recommended. + # config.vm.box_check_update = false + + # Create a forwarded port mapping which allows access to a specific port + # within the machine from a port on the host machine. In the example below, + # accessing "localhost:8080" will access port 80 on the guest machine. + # config.vm.network "forwarded_port", guest: 80, host: 8080 + config.vm.network "forwarded_port", guest: 8983, host: 8983, auto_correct: true + config.vm.network "forwarded_port", guest: 3000, host: 3000, auto_correct: true + + # Create a private network, which allows host-only access to the machine + # using a specific IP. + # config.vm.network "private_network", ip: "192.168.33.10" + + # Create a public network, which generally matched to bridged network. + # Bridged networks make the machine appear as another physical device on + # your network. + # config.vm.network "public_network" + + # Share an additional folder to the guest VM. The first argument is + # the path on the host to the actual folder. The second argument is + # the path on the guest to mount the folder. And the optional third + # argument is a set of non-required options. + # config.vm.synced_folder "../data", "/vagrant_data" + + # Provider-specific configuration so you can fine-tune various + # backing providers for Vagrant. These expose provider-specific options. + # Example for VirtualBox: + # + # config.vm.provider "virtualbox" do |vb| + # # Display the VirtualBox GUI when booting the machine + # vb.gui = true + # + # # Customize the amount of memory on the VM: + # vb.memory = "1024" + # end + # + # View the documentation for the provider you are using for more + # information on available options. + + # Define a Vagrant Push strategy for pushing to Atlas. Other push strategies + # such as FTP and Heroku are also available. See the documentation at + # https://docs.vagrantup.com/v2/push/atlas.html for more information. + # config.push.define "atlas" do |push| + # push.app = "YOUR_ATLAS_USERNAME/YOUR_APPLICATION_NAME" + # end + + # Enable provisioning with a shell script. Additional provisioners such as + # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the + # documentation for more information about their specific syntax and use. + # config.vm.provision "shell", inline: <<-SHELL + # sudo apt-get update + # sudo apt-get install -y apache2 + # SHELL + + config.vm.provision "shell", path: "provision.sh" +end diff --git a/app/controllers/users/omniauth_callbacks_controller.rb b/app/controllers/users/omniauth_callbacks_controller.rb index 303481df..bff2b61a 100644 --- a/app/controllers/users/omniauth_callbacks_controller.rb +++ b/app/controllers/users/omniauth_callbacks_controller.rb @@ -1,5 +1,6 @@ class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController - before_filter :require_valid_omniauth, only: :nyulibraries + before_action :require_valid_omniauth, only: :nyulibraries + def nyulibraries # Find existing or initialize new user, # and save new attributes each time @@ -34,7 +35,7 @@ def require_valid_omniauth def valid_omniauth? omniauth.present? && omniauth.provider.to_s == 'nyulibraries' && !omniauth_aleph_identity.blank? # Only accept users with an Aleph ID, authenticated via nyulibraries - end + end def omniauth @omniauth ||= request.env["omniauth.auth"] @@ -98,4 +99,4 @@ def failure redirect_to root_path end -end \ No newline at end of file +end diff --git a/config/application.rb b/config/application.rb index f7046dee..cb27e474 100644 --- a/config/application.rb +++ b/config/application.rb @@ -23,8 +23,5 @@ class Application < Rails::Application # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded. # config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s] # config.i18n.default_locale = :de - - # Do not swallow errors in after_commit/after_rollback callbacks. - config.active_record.raise_in_transactional_callbacks = true end end diff --git a/config/blacklight.yml b/config/blacklight.yml index b4519b48..e295fe90 100644 --- a/config/blacklight.yml +++ b/config/blacklight.yml @@ -2,20 +2,20 @@ # each environment can have a jetty_path with absolute or relative # (to app root) path to a jetty/solr install. This is used # by the rake tasks that start up solr automatically for testing -# and by rake solr:marc:index. +# and by rake solr:marc:index. # # jetty_path is not used by a running Blacklight application # at all. In general you do NOT need to deploy solr in Jetty, you can deploy it -# however you want. +# however you want. # jetty_path is only required for rake tasks that need to know -# how to start up solr, generally for automated testing. +# how to start up solr, generally for automated testing. development: adapter: solr url: <%= ENV['SOLR_URL'] %> test: &test adapter: solr - url: <%= "http://127.0.0.1:#{ENV['TEST_JETTY_PORT'] || 8888}/solr/blacklight-core" %> + url: <%= ENV['SOLR_URL'] %> staging: adapter: solr url: <%= ENV['SOLR_URL'] %> diff --git a/config/database.yml b/config/database.yml index 7b4fa971..8e460987 100644 --- a/config/database.yml +++ b/config/database.yml @@ -9,9 +9,10 @@ default: &default password: <%= ENV['SQL_PASS'] %> development: - <<: *default + adapter: sqlite3 pool: 5 timeout: 5000 + database: db/development.sqlite3 staging: <<: *default diff --git a/config/environments/test.rb b/config/environments/test.rb index 1c19f08b..740d1383 100644 --- a/config/environments/test.rb +++ b/config/environments/test.rb @@ -13,8 +13,8 @@ config.eager_load = false # Configure static file server for tests with Cache-Control for performance. - config.serve_static_files = true - config.static_cache_control = 'public, max-age=3600' + config.public_file_server.enabled = true + config.public_file_server.headers = { 'Cache-Control' => 'public, max-age=3600' } # Show full error reports and disable caching. config.consider_all_requests_local = true diff --git a/config/vars.yml.example b/config/vars.yml.example new file mode 100644 index 00000000..01075931 --- /dev/null +++ b/config/vars.yml.example @@ -0,0 +1,13 @@ +development: + SECRET_KEY_BASE: 6c51f19b57fdebd3dfd2a3cf8b69fab7f41a529b6bfbf8bff4a85815934066cbe22ddf7fa6083f227288c04e4eeb6c28f0fd90e31fc02314aaceb135dacecc07 + + DEVISE_SECRET_TOKEN: 2c847492b6d434c808e63a93ff16a7a897aa4c09943edaaf7aa498a29649048113cf55731282e39a82ae7ce3fb9f1087586d474fc483ad6f63806986a5a02a6c + + SOLR_URL: http://127.0.0.1:8983/solr/sdr-core-development + +test: + SECRET_KEY_BASE: 6c51f19b57fdebd3dfd2a3cf8b69fab7f41a529b6bfbf8bff4a85815934066cbe22ddf7fa6083f227288c04e4eeb6c28f0fd90e31fc02314aaceb135dacecc07 + + DEVISE_SECRET_TOKEN: bfbd360e6b465662c331578b3598323559980c73fde2dea24a8253089a5efa8f27775e9ba60838128e9f3feaec643c67397d8bd5f7c6f67a4b06114b32cc617c + + SOLR_URL: http://127.0.0.1:8985/solr/sdr-core-test diff --git a/lib/tasks/sdr.rake b/lib/tasks/sdr.rake new file mode 100644 index 00000000..c45010f2 --- /dev/null +++ b/lib/tasks/sdr.rake @@ -0,0 +1,72 @@ +desc 'Run test suite' +task :ci do + shared_solr_opts = { managed: true, verbose: true, persist: false, download_dir: 'tmp' } + shared_solr_opts[:version] = ENV['SOLR_VERSION'] if ENV['SOLR_VERSION'] + + SolrWrapper.wrap(shared_solr_opts.merge(port: 8985, instance_dir: 'tmp/sdr-core-test')) do |solr| + solr.with_collection(name: "sdr-core-test", dir: Rails.root.join("solr", "conf").to_s) do + system 'RAILS_ENV=test rake geoblacklight:index:seed' + Rake::Task['spec'].invoke + end + end +end + +namespace :sdr do + + desc 'Run Solr and GeoBlacklight for interactive development' + task :server, [:rails_server_args] do |_t, args| + require 'solr_wrapper' + SolrWrapper.wrap(managed: true, verbose: true, port: 8983, instance_dir: 'tmp/sdr-core-development', persist: false, download_dir: 'tmp') do |solr| + solr.with_collection(name: "sdr-core-development", dir: Rails.root.join("solr", "conf").to_s) do + puts "Solr running at http://localhost:8983/solr/sdr-core-development/, ^C to exit" + puts ' ' + begin + Rake::Task['geoblacklight:solr:seed'].invoke + system "bundle exec rails s -b 0.0.0.0" + sleep + rescue Interrupt + puts "\nShutting down..." + end + end + end + end + + desc "Start solr server for testing." + task :test do + if Rails.env.test? + shared_solr_opts = { managed: true, verbose: true, persist: false, download_dir: 'tmp' } + shared_solr_opts[:version] = ENV['SOLR_VERSION'] if ENV['SOLR_VERSION'] + + SolrWrapper.wrap(shared_solr_opts.merge(port: 8985, instance_dir: 'tmp/sdr-core-test')) do |solr| + solr.with_collection(name: "sdr-core-test", dir: Rails.root.join("solr", "conf").to_s) do + puts "Solr running at http://localhost:8985/solr/sdr-core-test/, ^C to exit" + begin + Rake::Task['geoblacklight:solr:seed'].invoke + sleep + rescue Interrupt + puts "\nShutting down..." + end + end + end + else + system('rake sdr:test RAILS_ENV=test') + end + end + + desc "Start solr server for development." + task :development do + shared_solr_opts = { managed: true, verbose: true, persist: false, download_dir: 'tmp' } + SolrWrapper.wrap(shared_solr_opts.merge(port: 8983, instance_dir: 'tmp/sdr-core-development')) do |solr| + solr.with_collection(name: "sdr-core-development", dir: Rails.root.join("solr", "conf").to_s) do + puts "Solr running at http://localhost:8983/solr/sdr-core-development/, ^C to exit" + begin + Rake::Task['geoblacklight:solr:seed'].invoke + sleep + rescue Interrupt + puts "\nShutting down..." + end + end + end + end + +end diff --git a/provision.sh b/provision.sh new file mode 100644 index 00000000..abb7215c --- /dev/null +++ b/provision.sh @@ -0,0 +1,33 @@ +#!/usr/bin/env bash + +# This script is used by the Vagrant file to provision the box + +# Install server dependencies +sudo yum install -y epel-release +sudo yum install -y curl git java-1.8.0-openjdk-devel nodejs yum-utils gcc bzip2 kernel-devel dkms mysql mysql-devel + +# Install RVM and Ruby +su - vagrant -c 'gpg --keyserver hkp://keys.gnupg.net:80 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB' +su - vagrant -c 'curl -sSL https://get.rvm.io | bash -s stable' +su - vagrant -c 'rvm 2.5.3 --install --default' + +# Install bundler gem and bundle install +su - vagrant -c 'gem install bundler' +su - vagrant -c 'cd /vagrant/sdr && bundle install' + +# Create the test application +# su - vagrant -c 'cd /home/vagrant/sync && rake engine_cart:generate' + +# Output some instructions on what to do next +echo " +Now start Solr and run GeoBlacklight via the following from within vagrant: + +vagrant ssh +cd /vagrant/sdr +bundle exec rake sdr:server + +Now you can view: +* application: http://localhost:3000/ +* solr admin panel: http://localhost:8983/solr/#/sdr-core-development/query + +" diff --git a/solr/conf/protwords.txt b/solr/conf/protwords.txt new file mode 100644 index 00000000..1dfc0abe --- /dev/null +++ b/solr/conf/protwords.txt @@ -0,0 +1,21 @@ +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +#----------------------------------------------------------------------- +# Use a protected word file to protect against the stemmer reducing two +# unrelated words to the same base word. + +# Some non-words that normally won't be encountered, +# just to test that they won't be stemmed. +dontstems +zwhacky + diff --git a/solr/conf/schema.xml b/solr/conf/schema.xml new file mode 100644 index 00000000..81c69d7f --- /dev/null +++ b/solr/conf/schema.xml @@ -0,0 +1,190 @@ + + + layer_slug_s + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solr/conf/solrconfig.xml b/solr/conf/solrconfig.xml new file mode 100644 index 00000000..28a750e1 --- /dev/null +++ b/solr/conf/solrconfig.xml @@ -0,0 +1,214 @@ + + + + + 5.5 + ${solr.data.dir:} + + + + + ${solr.lock.type:native} + + + + + + ${solr.ulog.dir:} + + + 15000 + false + + + + + + 1024 + + + + true + 20 + 200 + + + stanford + polygon + + + + + + static firstSearcher warming in solrconfig.xml + + + + false + 2 + + + + + + + + + + + + 0 + 10 + json + 2 + edismax + all + 6<-1 6<90% + 1 + 0 + 0.01 + *,score + score desc, dc_title_sort asc + *:* + + text^1 + dc_description_ti^2 + dc_creator_tmi^3 + dc_publisher_ti^3 + dct_isPartOf_tmi^4 + dc_subject_tmi^5 + dct_spatial_tmi^5 + dct_temporal_tmi^5 + dc_title_ti^6 + dc_rights_ti^7 + dct_provenance_ti^8 + layer_geom_type_ti^9 + layer_slug_ti^10 + dc_identifier_ti^10 + + + text^1 + dc_description_ti^2 + dc_creator_tmi^3 + dc_publisher_ti^3 + dct_isPartOf_tmi^4 + dc_subject_tmi^5 + dct_spatial_tmi^5 + dct_temporal_tmi^5 + dc_title_ti^6 + dc_rights_ti^7 + dct_provenance_ti^8 + layer_geom_type_ti^9 + layer_slug_ti^10 + dc_identifier_ti^10 + + true + 1 + 10 + dct_isPartOf_sm + dct_provenance_s + dct_spatial_sm + dc_creator_sm + dc_format_s + dc_language_s + dc_publisher_s + dc_rights_s + dc_subject_sm + layer_geom_type_s + solr_year_i + + true + + + + spellcheck + + + + + + + solrpingquery + + + all + + + server-enabled.txt + + + + + + + + default + spell + solr.DirectSolrSpellChecker + + internal + + 0.5 + + 2 + + 1 + + 5 + + 4 + + 0.01 + + + + + + + mySuggester + FuzzyLookupFactory + textSuggest + true + suggest + + + + + + true + 5 + mySuggester + + + suggest + + + diff --git a/solr/conf/stopwords.txt b/solr/conf/stopwords.txt new file mode 100644 index 00000000..995cefcb --- /dev/null +++ b/solr/conf/stopwords.txt @@ -0,0 +1,34 @@ +# Standard english stop words taken from Lucene's StopAnalyzer +a +an +and +are +as +at +be +but +by +for +if +in +into +is +it +no +not +of +on +or +such +that +the +their +then +there +these +they +this +to +was +will +with diff --git a/solr/conf/stopwords_en.txt b/solr/conf/stopwords_en.txt new file mode 100644 index 00000000..995cefcb --- /dev/null +++ b/solr/conf/stopwords_en.txt @@ -0,0 +1,34 @@ +# Standard english stop words taken from Lucene's StopAnalyzer +a +an +and +are +as +at +be +but +by +for +if +in +into +is +it +no +not +of +on +or +such +that +the +their +then +there +these +they +this +to +was +will +with diff --git a/solr/conf/synonyms.txt b/solr/conf/synonyms.txt new file mode 100644 index 00000000..f00294b0 --- /dev/null +++ b/solr/conf/synonyms.txt @@ -0,0 +1,29 @@ +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +#----------------------------------------------------------------------- +#some test synonym mappings unlikely to appear in real input text +aaafoo => aaabar +bbbfoo => bbbfoo bbbbar +cccfoo => cccbar cccbaz +fooaaa,baraaa,bazaaa + +# Some synonym groups specific to this example +GB,gib,gigabyte,gigabytes +MB,mib,megabyte,megabytes +Television, Televisions, TV, TVs +#notice we use "gib" instead of "GiB" so any WordDelimiterFilter coming +#after us won't split it into two words. + +# Synonym mappings can be used for spelling correction too +pixima => pixma + diff --git a/spec/features/homepage_spec.rb b/spec/features/homepage_spec.rb new file mode 100644 index 00000000..3d461e22 --- /dev/null +++ b/spec/features/homepage_spec.rb @@ -0,0 +1,17 @@ +require 'rails_helper' + +describe 'Homepage' do + describe 'DOM' do + it 'has Featured Collections' do + visit root_path + expect(page).to have_content 'Featured Collections' + expect(page).to have_selector '.curated-collections' + end + + it 'has Featured Maps' do + visit root_path + expect(page).to have_content 'Featured Maps' + expect(page).to have_selector '.curated-maps' + end + end +end diff --git a/spec/features/search_spec.rb b/spec/features/search_spec.rb new file mode 100644 index 00000000..6033739f --- /dev/null +++ b/spec/features/search_spec.rb @@ -0,0 +1,12 @@ +require 'rails_helper' + +describe 'Search' do + describe 'Spelling suggestions' do + it 'are turned on' do + visit root_path + fill_in 'q', with: 'prince' + click_button 'search' + expect(page).to have_content 'Did you mean to type:' + end + end +end diff --git a/spec/features/show_page_spec.rb b/spec/features/show_page_spec.rb new file mode 100644 index 00000000..f99c6b87 --- /dev/null +++ b/spec/features/show_page_spec.rb @@ -0,0 +1,66 @@ +require 'rails_helper' + +describe 'Show page' do + context 'Restricted NYU result - nyu-2451-34626' do + it 'the displays warning message' do + visit solr_document_path 'nyu-2451-34626' + expect(page).to have_content 'This dataset is only available to members of the New York University community' + end + end + + context 'Suppressed download - nyu-2451-38684' do + it 'includes warning' do + visit solr_document_path 'nyu-2451-38684' + expect(page).to have_selector 'div.alert.alert-warning' + end + + it 'includes survey link' do + visit solr_document_path 'nyu-2451-38684' + expect(page).to have_link( + "this brief survey", href: "https://nyu.qualtrics.com/jfe/form/SV_42ddIXjT0CtaqAR" + ) + end + + it 'does not display download' do + visit solr_document_path 'nyu-2451-38684' + expect(page).to_not have_content 'Download' + end + + it 'includes DOI for citation' do + visit solr_document_path 'nyu-2451-38684' + expect(page).to have_content 'Please cite this study using the DOI' + end + end + + context 'Multiple downloads - nyu-2451-38645' do + it 'includes six download links' do + visit solr_document_path 'nyu-2451-38645' + expect(page).to have_content 'All Downloads' + expect(page).to have_link( + 'LAZ (Point-cloud)', href: 'https://archive.nyu.edu/retrieve/80003/nyu_2451_38645_pc_F_150326_120403.zip' + ) + expect(page).to have_link( + 'LAS (Full-waveform)', href: 'https://archive.nyu.edu/retrieve/80002/nyu_2451_38645_fwf_las_F_150326_120403.zip' + ) + expect(page).to have_link( + 'Pulsewaves (Full-waveform)', href: 'https://archive.nyu.edu/retrieve/80005/nyu_2451_38645_fwf_plswvs_F_150326_120403.zip' + ) + expect(page).to have_link( + 'GeoTIFF (Geo-referenced RGB)', href: 'https://archive.nyu.edu/retrieve/80240/nyu_2451_38645_rgb_F_150326_120403.zip' + ) + expect(page).to have_link( + 'GeoTIFF (Geo-referenced CIR)', href: 'https://archive.nyu.edu/retrieve/80001/nyu_2451_38645_cir_F_150326_120403.zip' + ) + end + end + +=begin + context 'Parent/Child relationships - nyu-2451-34666' do + it 'to inlude relation links' do + visit solr_document_path 'nyu-2451-34666' + expect(page).to have_content("Data Relations") + expect(page).to have_content("Source Datasets") + end + end +=end +end diff --git a/spec/fixtures/solr_documents/actual-papermap1.json b/spec/fixtures/solr_documents/actual-papermap1.json new file mode 100644 index 00000000..740e752c --- /dev/null +++ b/spec/fixtures/solr_documents/actual-papermap1.json @@ -0,0 +1,23 @@ +{ + "geoblacklight_version": "1.0", + "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.\"", + "dc_format_s": "Paper", + "dc_identifier_s": "urn:arrowsmith.mit.edu:MIT.001145244", + "dc_language_s": "English", + "dc_publisher_s": "British Geological Survey", + "dc_rights_s": "Public", + "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.", + "dc_type_s": "Dataset", + "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\"}", + "dct_temporal_sm": [ + "1996" + ], + "dct_issued_s": "2000", + "dct_provenance_s": "MIT", + "layer_slug_s": "mit-001145244", + "layer_id_s": "MIT:001145244", + "layer_geom_type_s": "Paper Map", + "layer_modified_dt": "2014-12-04T21:32:59Z", + "solr_geom": "ENVELOPE(-13.0, 4.0, 62.0, 49.0)", + "solr_year_i": 1996 +} \ No newline at end of file diff --git a/spec/fixtures/solr_documents/actual-point1.json b/spec/fixtures/solr_documents/actual-point1.json new file mode 100644 index 00000000..63b54b27 --- /dev/null +++ b/spec/fixtures/solr_documents/actual-point1.json @@ -0,0 +1,24 @@ +{ + "geoblacklight_version": "1.0", + "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.", + "dc_format_s": "Shapefile", + "dc_identifier_s": "urn:columbia.edu:Columbia.landinfo_global_aet", + "dc_language_s": "English", + "dc_rights_s": "Public", + "dc_title_s": "Actual Evapotrans", + "dc_type_s": "Dataset", + "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\"}", + "dct_spatial_sm": [ + "World" + ], + "dct_temporal_sm": [ + "1996" + ], + "dct_provenance_s": "Columbia", + "layer_slug_s": "columbia-columbia-landinfo-global-aet", + "layer_id_s": "Columbia:Columbia.landinfo_global_aet", + "layer_geom_type_s": "Point", + "layer_modified_dt": "2014-12-12T19:54:57Z", + "solr_geom": "ENVELOPE(-179.5, 180.0, 83.0, -56.0)", + "solr_year_i": 1996 +} diff --git a/spec/fixtures/solr_documents/actual-polygon1.json b/spec/fixtures/solr_documents/actual-polygon1.json new file mode 100644 index 00000000..9e4f4301 --- /dev/null +++ b/spec/fixtures/solr_documents/actual-polygon1.json @@ -0,0 +1,23 @@ +{ + "geoblacklight_version": "1.0", + "dc_description_s": "This polygon dataset is a 100 foot grid overlay for Cambridge, MA.", + "dc_format_s": "Shapefile", + "dc_identifier_s": "urn:geodata.tufts.edu:Tufts.CambridgeGrid100_04", + "dc_language_s": "English", + "dc_publisher_s": "Cambridge (Mass.) Geographic Information Systems", + "dc_rights_s": "Public", + "dc_title_s": "100 Foot Grid Cambridge MA 2004", + "dc_type_s": "Dataset", + "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\":\"https://raw.githubusercontent.com/OpenGeoMetadata/edu.tufts/master/165/242/110/132/fgdc.xml\",\"http://www.w3.org/1999/xhtml\":\"http://opengeometadata.stanford.edu/metadata/org.opengeoportal/sde:GISPORTAL.GISOWNER01.CAMBRIDGEGRID100_04/fgdc.html\"}", + "dct_temporal_sm": [ + "2004" + ], + "dct_issued_s": "2005", + "dct_provenance_s": "Tufts", + "layer_slug_s": "tufts-cambridgegrid100-04", + "layer_id_s": "sde:GISPORTAL.GISOWNER01.CAMBRIDGEGRID100_04", + "layer_geom_type_s": "Polygon", + "layer_modified_dt": "2014-12-04T21:33:07Z", + "solr_geom": "ENVELOPE(-71.163984, -71.052581, 42.408316, 42.34757)", + "solr_year_i": 2004 +} \ No newline at end of file diff --git a/spec/fixtures/solr_documents/actual-raster1.json b/spec/fixtures/solr_documents/actual-raster1.json new file mode 100644 index 00000000..c891a07f --- /dev/null +++ b/spec/fixtures/solr_documents/actual-raster1.json @@ -0,0 +1,43 @@ +{ + "uuid": "http://purl.stanford.edu/dp018hs9766", + "dc_identifier_s": "http://purl.stanford.edu/dp018hs9766", + "dc_title_s": "1-Meter Shaded Relief Multibeam Bathymetry Image (Color): Elkhorn Slough, California, 2005", + "dc_description_s": "This layer is a 10-color shaded relief GeoTIFF that contains high-resolution bathymetric data collected from the Elkhorn Slough region of Monterey Bay, California. The survey for Elkhorn Slough was conducted 8/12/2005 - 8/15/2005. Elkhorn Slough, one of the largest remaining coastal wetlands in California, has been directly subjected to tidal scour since the opening of Moss Landing Harbor in 1946. This erosion endangers the habitat of several rare and endangered species and disrupts the wetland ecosystem as a whole. In 2003, the Seafloor Mapping Lab of California State University, Monterey Bay created the most detailed bathymetry model of the Slough to date using a combination of multi-beam sonar, single-beam sonar and aerial photography. This layer was created as part of the California Seafloor Mapping Project.This project was conducted to determine changes in the pattern of erosion and deposition in Elkhorn Slough since surveys conducted in 1993, 2001 and 2003. Marine data offered here represent the efforts of a comprehensive state waters mapping program for California launched by the California State Coastal Conservancy, Ocean Protection Council, Department of Fish and Game, and the NOAA National Marine Sanctuary Program. The ultimate goal is the creation of a high-resolution 1:24,000 scale geologic and habitat base map series covering all of California's 14,500 km2 state waters out to the 3 mile limit, and support of the state's Marine Life Protection Act Initiative (MLPA) goal to create a statewide network of Marine Protected Areas (MPAs). This statewide project requires, involves and leverages expertise from industry, resource management agencies and academia. The tiered mapping campaign involves the use of state-of-the-art sonar, LIDAR (aerial laser) and video seafloor mapping technologies; computer aided classification and visualization; expert geologic and habitat interpretations codified into strip maps spanning California's land/sea boundary; and the creation of an online, publicly accessible data repository for the dissemination of all mapping products.\n", + "dc_rights_s": "Restricted", + "dct_provenance_s": "Stanford", + "dct_references_s": "{\"http://schema.org/url\":\"http://purl.stanford.edu/dp018hs9766\",\"http://schema.org/downloadUrl\":\"http://stacks.stanford.edu/file/druid:dp018hs9766/data.zip\",\"http://www.loc.gov/mods/v3\":\"http://purl.stanford.edu/dp018hs9766.mods\",\"http://www.isotc211.org/schemas/2005/gmd/\":\"https://raw.githubusercontent.com/OpenGeoMetadata/edu.stanford.purl/master/dp/018/hs/9766/iso19139.xml\",\"http://www.w3.org/1999/xhtml\":\"http://opengeometadata.stanford.edu/metadata/edu.stanford.purl/druid:dp018hs9766/default.html\",\"http://www.opengis.net/def/serviceType/ogc/wcs\":\"http://kurma-podd1.stanford.edu/geoserver/wcs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"http://kurma-podd1.stanford.edu/geoserver/wms\"}", + "layer_id_s": "druid:dp018hs9766", + "layer_slug_s": "stanford-dp018hs9766", + "layer_geom_type_s": "Raster", + "layer_modified_dt": "2014-12-03T02:15:20Z", + "dc_format_s": "GeoTIFF", + "dc_language_s": "English", + "dc_type_s": "Dataset", + "dc_publisher_s": "Seafloor Mapping Lab", + "dc_creator_sm": [ + "Seafloor Mapping Lab" + ], + "dc_subject_sm": [ + "Continental margins", + "Multibeam mapping", + "Elevation", + "Imagery and Base Maps", + "Inland Waters" + ], + "dct_issued_s": "2006", + "dct_temporal_sm": [ + "2005" + ], + "dct_spatial_sm": [ + "Elkhorn Slough (Calif.)", + "Monterey Bay (Calif.)" + ], + "dc_relation_sm": [ + "http://sws.geonames.org/5346182/about.rdf", + "http://sws.geonames.org/5374363/about.rdf" + ], + "georss_box_s": "36.8085911 -121.7948738 36.8606925 -121.7389503", + "georss_polygon_s": "36.8085911 -121.7948738 36.8606925 -121.7948738 36.8606925 -121.7389503 36.8085911 -121.7389503 36.8085911 -121.7948738", + "solr_geom": "ENVELOPE(-121.7948738, -121.7389503, 36.8606925, 36.8085911)", + "solr_year_i": 2005 + } \ No newline at end of file diff --git a/spec/fixtures/solr_documents/baruch-collection.json b/spec/fixtures/solr_documents/baruch-collection.json new file mode 100644 index 00000000..4942c5b4 --- /dev/null +++ b/spec/fixtures/solr_documents/baruch-collection.json @@ -0,0 +1,36 @@ +{ + "dc_identifier_s": "http://hdl.handle.net/2451/34548", + "dc_title_s": "2016 New York City Election Districts (Clipped to Shoreline)", + "dc_description_s": "This polygon shapefile layer represents the Election District boundaries for the City of New York. These district boundaries represent the redistricting as of the US Census 2010. This file was generated from the 16A release of the Department of City Planning's LION file. ", + "dc_rights_s": "Public", + "dct_provenance_s": "NYU", + "dct_references_s": "{\"http://schema.org/url\":\"http://hdl.handle.net/2451/34548\",\"http://schema.org/downloadUrl\":\"https://archive.nyu.edu/retrieve/74530/nyu_2451_34548.zip\",\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"https://maps-public.geo.nyu.edu/geoserver/sdr/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://maps-public.geo.nyu.edu/geoserver/sdr/wms\"}", + "layer_id_s": "sdr:nyu_2451_34548", + "layer_slug_s": "nyu_2451_34548", + "layer_geom_type_s": "Polygon", + "layer_modified_dt": "2016-04-20T21:31:17Z", + "dc_format_s": "Shapefile", + "dc_language_s": "English", + "dc_type_s": "Dataset", + "dc_publisher_s": "New York (City). Department of City Planning", + "dc_subject_sm": [ + "Election districts", + "Administrative and political divisions", + "Boundaries", + "Elections", + "Voting" + ], + "dct_isPartOf_sm": [ + "Bytes of the Big Apple" + ], + "dct_issued_s": "2016", + "dct_temporal_sm": [ + "2016" + ], + "dct_spatial_sm": [ + "New York, New York, United States" + ], + "solr_geom": "ENVELOPE(-74.2555913638125, -73.7000090638712, 40.9155327760001, 40.4961153952116)", + "solr_year_i": 2016, + "geoblacklight_version": "1.0" +} diff --git a/spec/fixtures/solr_documents/baruch_ancestor1.json b/spec/fixtures/solr_documents/baruch_ancestor1.json new file mode 100644 index 00000000..04615f12 --- /dev/null +++ b/spec/fixtures/solr_documents/baruch_ancestor1.json @@ -0,0 +1,46 @@ +{ + "dc_identifier_s": "http://hdl.handle.net/2451/34635", + "dc_title_s": "2016 NYC Geodatabase, Open Source Version (jan2016)", + "dc_description_s": "The NYC Geodatabase (nyc_gdb) is a resource designed for basic geographic analysis and thematic mapping within the five boroughs of New York City. It contains geographic features and data compiled from several public sources. Subsets of large features like water, greenspace, and public facilities were created and Census geographies like tracts, ZCTAs, and PUMAs were geoprocessed to create land-based boundaries. Census data from the 2010 Census, American Community Survey (ACS), and ZIP Code Business Patterns are stored in tables that can be easily related to geographic features. Transit and public facility point data were gathered from several city agencies and transformed into spatial data that can be used for reference or analysis for measuring distance, drawing buffers, or counting features within areas. The data is provided in SQLite format.", + "dc_rights_s": "Public", + "dct_provenance_s": "Baruch CUNY", + "dct_references_s": "{\"http://schema.org/url\":\"http://hdl.handle.net/2451/34635\",\"http://schema.org/downloadUrl\":\"https://archive.nyu.edu/retrieve/74854/nyu_2451_34635.zip\",\"http://lccn.loc.gov/sh85035852\":\"https://archive.nyu.edu/retrieve/74855/nyu_2451_34635_doc.zip\"}", + "layer_id_s": "sdr:nyu_2451_34635", + "layer_slug_s": "nyu_2451_34635", + "layer_geom_type_s": "Mixed", + "layer_modified_dt": "2016-5-2T18:21:7Z", + "dc_format_s": "SQLite Database", + "dc_language_s": "English", + "dc_type_s": "Dataset", + "dc_publisher_s": [ + "Newman Library (Bernard M. Baruch College)" + ], + "dc_creator_sm": "GIS Lab, Newman Library, Baruch CUNY", + "dc_subject_sm": [ + "Boroughs", + "Boundaries", + "Counties" + ], + "dct_isPartOf_sm": "NYC Geodatabase (version jan2016)", + "dct_issued_s": "1/15/2016", + "dct_temporal_sm": [ + "2010", + "2016" + ], + "dct_spatial_sm": [ + "New York, New York, United States", + "Bronx County, New York, United States", + "Kings County, New York, United States", + "New York County, New York, United States", + "Queens County, New York, United States", + "Richmond County, New York, United States", + "Borough of Bronx, New York, United States", + "Borough of Brooklyn, New York, United States", + "Borough of Manhattan, New York, United States", + "Borough of Queens, New York, United States", + "Borough of Staten Island, New York, United States" + ], + "solr_geom": "ENVELOPE(-74.255895, -73.700272, 40.9152819999998, 40.4959289999998)", + "solr_year_i": 2016, + "geoblacklight_version": "1.0" +} \ No newline at end of file diff --git a/spec/fixtures/solr_documents/baruch_ancestor2.json b/spec/fixtures/solr_documents/baruch_ancestor2.json new file mode 100644 index 00000000..fb07a058 --- /dev/null +++ b/spec/fixtures/solr_documents/baruch_ancestor2.json @@ -0,0 +1,46 @@ +{ + "dc_identifier_s": "http://hdl.handle.net/2451/34636", + "dc_title_s": "2016 NYC Geodatabase, ArcGIS Version (jan2016)", + "dc_description_s": "The NYC Geodatabase (nyc_gdb) is a resource designed for basic geographic analysis and thematic mapping within the five boroughs of New York City. It contains geographic features and data compiled from several public sources. Subsets of large features like water, greenspace, and public facilities were created and Census geographies like tracts, ZCTAs, and PUMAs were geoprocessed to create land-based boundaries. Census data from the 2010 Census, American Community Survey (ACS), and ZIP Code Business Patterns are stored in tables that can be easily related to geographic features. Transit and public facility point data were gathered from several city agencies and transformed into spatial data that can be used for reference or analysis for measuring distance, drawing buffers, or counting features within areas. The data is provided in ESRI Geodatabase format.", + "dc_rights_s": "Public", + "dct_provenance_s": "Baruch CUNY", + "dct_references_s": "{\"http://schema.org/url\":\"http://hdl.handle.net/2451/34636\",\"http://schema.org/downloadUrl\":\"https://archive.nyu.edu/retrieve/74856/nyu_2451_34636.zip\",\"http://lccn.loc.gov/sh85035852\":\"https://archive.nyu.edu/retrieve/74857/nyu_2451_34636_doc.zip\"}", + "layer_id_s": "sdr:nyu_2451_34636", + "layer_slug_s": "nyu_2451_34636", + "layer_geom_type_s": "Mixed", + "layer_modified_dt": "2016-5-2T18:21:7Z", + "dc_format_s": "ESRI Geodatabase", + "dc_language_s": "English", + "dc_type_s": "Dataset", + "dc_publisher_s": [ + "Newman Library (Bernard M. Baruch College)" + ], + "dc_creator_sm": "GIS Lab, Newman Library, Baruch CUNY", + "dc_subject_sm": [ + "Boroughs", + "Boundaries", + "Counties" + ], + "dct_isPartOf_sm": "NYC Geodatabase (version jan2016)", + "dct_issued_s": "1/15/2016", + "dct_temporal_sm": [ + "2010", + "2016" + ], + "dct_spatial_sm": [ + "New York, New York, United States", + "Bronx County, New York, United States", + "Kings County, New York, United States", + "New York County, New York, United States", + "Queens County, New York, United States", + "Richmond County, New York, United States", + "Borough of Bronx, New York, United States", + "Borough of Brooklyn, New York, United States", + "Borough of Manhattan, New York, United States", + "Borough of Queens, New York, United States", + "Borough of Staten Island, New York, United States" + ], + "solr_geom": "ENVELOPE(-74.255895, -73.700272, 40.9152819999998, 40.4959289999998)", + "solr_year_i": 2016, + "geoblacklight_version": "1.0" +} \ No newline at end of file diff --git a/spec/fixtures/solr_documents/baruch_documentation_download.json b/spec/fixtures/solr_documents/baruch_documentation_download.json new file mode 100644 index 00000000..a40146a4 --- /dev/null +++ b/spec/fixtures/solr_documents/baruch_documentation_download.json @@ -0,0 +1,49 @@ +{ + "dc_identifier_s": "http://hdl.handle.net/2451/34502", + "dc_title_s": "2015 New York City Subway Complexes and Ridership", + "dc_description_s": "The subway complexes layer was created to represent ridership data for the NYC subway system (Metropolitan Transportation Authority, or MTA). This layer is a subset of the subway stations layer (nyu_2451_34503) that has been combined with MTA statistics on ridership; it was originally created in August 2012 and has been updated annually. Ridership data is not available for each individual subway station, as many stations are linked via common entrances and passageways where transfers are free, and because ridership data is not collected for the Staten Island Railway stations. This layer was created by choosing an individual station from nyu_2451_34503 to represent the entire complex, and modifying the station name and train fields appropriately. It should be used for mapping ridership data or for analysis that requires this data, and not for specifying actual station locations or measuring distances. There are 421 complexes, and the field station_ct indicates how many stations are part of a complex. Annual, average weekday, and average weekend ridership is provided for 2007 to 2014. The unique ID is complex_id, which was created by alphabetizing the complexes by borough and station name and assigning a sequential number to a borough prefix. This layer does not include the new 34th St - 11 Av station on the 7 line; it will be updated in summer 2016 once ridership data becomes available. This layer was created as part of the NYC Geodatabase (NYC GDB) project, a resource designed for basic geographic analysis and thematic mapping within the five boroughs of New York City.", + "dc_rights_s": "Public", + "dct_provenance_s": "Baruch CUNY", + "dct_references_s": "{\"http://schema.org/url\":\"http://hdl.handle.net/2451/34502\",\"http://schema.org/downloadUrl\":\"https://archive.nyu.edu/retrieve/74701/nyu_2451_34502.zip\",\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"https://maps-public.geo.nyu.edu/geoserver/sdr/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://maps-public.geo.nyu.edu/geoserver/sdr/wms\",\"http://www.isotc211.org/schemas/2005/gmd/\":\"http://metadata.geo.nyu.edu/records/edu.nyu/handle/2451/34502/iso19139.xml\",\"http://lccn.loc.gov/sh85035852\":\"https://archive.nyu.edu/retrieve/74755/nyu_2451_34502_doc.zip\"}", + "layer_id_s": "sdr:nyu_2451_34502", + "layer_slug_s": "nyu_2451_34502", + "layer_geom_type_s": "Point", + "layer_modified_dt": "2016-5-2T18:21:5Z", + "dc_format_s": "Shapefile", + "dc_language_s": "English", + "dc_type_s": "Dataset", + "dc_publisher_s": [ + "Newman Library (Bernard M. Baruch College)" + ], + "dc_creator_sm": "GIS Lab, Newman Library, Baruch CUNY", + "dc_subject_sm": [ + "Subway stations", + "Transportation", + "Urban transportation", + "Local transit", + "Commuting" + ], + "dct_isPartOf_sm": "NYC Geodatabase (version jan2016)", + "dct_issued_s": "1/15/2016", + "dct_temporal_sm": [ + "2015" + ], + "dct_spatial_sm": [ + "New York, New York, United States", + "Bronx County, New York, United States", + "Kings County, New York, United States", + "New York County, New York, United States", + "Queens County, New York, United States", + "Borough of Bronx, New York, United States", + "Borough of Brooklyn, New York, United States", + "Borough of Manhattan, New York, United States", + "Borough of Queens, New York, United States" + ], + "solr_geom": "ENVELOPE(-74.030876, -73.755405, 40.9031249999998, 40.5761269999998)", + "solr_year_i": 2015, + "dc_source_sm": [ + "nyu_2451_34635", + "nyu_2451_34636" + ], + "geoblacklight_version": "1.0" +} diff --git a/spec/fixtures/solr_documents/bbox-spans-180.json b/spec/fixtures/solr_documents/bbox-spans-180.json new file mode 100644 index 00000000..8f9f9a4d --- /dev/null +++ b/spec/fixtures/solr_documents/bbox-spans-180.json @@ -0,0 +1,20 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "ark:/88435/sx61dn82p", + "layer_slug_s": "princeton-sx61dn82p", + "dc_title_s": "East Asia and Oceania", + "solr_geom": "ENVELOPE(-124.73333333333333, 68.0, 62.45, -53.233333333333334)", + "dct_provenance_s": "Princeton", + "dc_rights_s": "Public", + "dc_description_s": "United States. Central Intelligence Agency. Map no. 802861 (A04678) 4-02.", + "dc_language_s": "eng", + "dc_publisher_s": "[Washington, D.C.] : [Central Intelligence Agency], 2002.", + "dc_subject_sm": [ + "Asia, east — Maps" + ], + "layer_modified_dt": "2018-06-07T06:03:16Z", + "layer_id_s": "public-figgy:a990e1b4-7f0e-44b8-ae2a-de7e93cdd74a", + "dct_references_s": "{\"http://schema.org/url\":\"https://catalog.princeton.edu/catalog/6829320\",\"http://schema.org/downloadUrl\":\"https://figgy.princeton.edu/downloads/a990e1b4-7f0e-44b8-ae2a-de7e93cdd74a/file/36a2274c-e0c6-4901-a14f-7c422d15e194\",\"http://schema.org/thumbnailUrl\":\"https://figgy.princeton.edu/downloads/a990e1b4-7f0e-44b8-ae2a-de7e93cdd74a/file/726bf9ce-7f57-48bc-9e9f-45fc5b93c6f0\",\"http://iiif.io/api/image\":\"https://libimages1.princeton.edu/loris/figgy_prod/2e%2Fa9%2F43%2F2ea943b0bd4348fc9954b299f1b359f6%2Fintermediate_file.jp2/info.json\",\"http://iiif.io/api/presentation#manifest\":\"https://figgy.princeton.edu/concern/scanned_maps/0c2e1053-22ef-409e-ad9a-7a4709a5efcb/manifest\"}", + "layer_geom_type_s": "Image", + "dc_format_s": "TIFF" +} diff --git a/spec/fixtures/solr_documents/child-1.json b/spec/fixtures/solr_documents/child-1.json new file mode 100644 index 00000000..eac9973d --- /dev/null +++ b/spec/fixtures/solr_documents/child-1.json @@ -0,0 +1,30 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "ark:/88435/n009w382v", + "layer_slug_s": "princeton-n009w382v", + "uuid": "princeton-n009w382v", + "dc_title_s": "Fire Insurance Map of Princeton, New Jersey (Sheet 1) (1885)", + "solr_geom": "ENVELOPE(-74.68, -74.63, 40.37, 40.33)", + "dct_provenance_s": "Princeton", + "dc_rights_s": "Public", + "dc_description_s": "\"Feb. 1885.\" Oriented with the north to the upper left. Includes location map and key. Title taken from sheet 1 of 1927 map.", + "dc_creator_sm": [ + "Sanborn Map Company" + ], + "dc_language_s": "English", + "dc_publisher_s": "New York : Sanborn Map & Publishing Co., Limited, 1885.", + "dc_subject_sm": [ + "Real property—New Jersey—Princeton—Maps", + "Princeton (N.J.)—Maps" + ], + "layer_modified_dt": "2018-02-23T23:53:39Z", + "layer_id_s": "public-figgy:b6ba3091-fcf4-4d2d-9d6a-df7df5c8c588", + "dct_references_s": "{\"http://schema.org/url\":\"https://catalog.princeton.edu/catalog/4266648\",\"http://schema.org/downloadUrl\":\"https://figgy.princeton.edu/downloads/b6ba3091-fcf4-4d2d-9d6a-df7df5c8c588/file/ff89fcc8-e61b-4b27-938f-a03e63d4f5f1\",\"http://schema.org/thumbnailUrl\":\"https://figgy.princeton.edu/downloads/b6ba3091-fcf4-4d2d-9d6a-df7df5c8c588/file/0cb6b6c7-bce2-46a8-8c79-2864c7ec5459\",\"http://iiif.io/api/image\":\"https://libimages1.princeton.edu/loris/figgy_prod/5a%2F20%2F58%2F5a20585db50d44959fe5ae44821fd174%2Fintermediate_file.jp2/info.json\",\"http://iiif.io/api/presentation#manifest\":\"https://figgy.princeton.edu/concern/scanned_maps/2806e4cf-effc-4827-b116-952dfe776d14/manifest\"}", + "layer_geom_type_s": "Image", + "dc_format_s": "TIFF", + "suppressed_b": true, + "dct_source_sm": [ + "princeton-1r66j405w" + ], + "call_number_s": "HMC04 (Princeton)" +} diff --git a/spec/fixtures/solr_documents/child-2.json b/spec/fixtures/solr_documents/child-2.json new file mode 100644 index 00000000..1d061f2e --- /dev/null +++ b/spec/fixtures/solr_documents/child-2.json @@ -0,0 +1,30 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "ark:/88435/jq085m62x", + "layer_slug_s": "princeton-jq085m62x", + "uuid": "princeton-jq085m62x", + "dc_title_s": "Fire Insurance Map of Princeton, New Jersey (Sheet 2) (1885)", + "solr_geom": "ENVELOPE(-74.68, -74.63, 40.37, 40.33)", + "dct_provenance_s": "Princeton", + "dc_rights_s": "Public", + "dc_description_s": "\"Feb. 1885.\" Oriented with the north to the upper left. Includes location map and key. Title taken from sheet 1 of 1927 map.", + "dc_creator_sm": [ + "Sanborn Map Company" + ], + "dc_language_s": "English", + "dc_publisher_s": "New York : Sanborn Map & Publishing Co., Limited, 1885.", + "dc_subject_sm": [ + "Real property—New Jersey—Princeton—Maps", + "Princeton (N.J.)—Maps" + ], + "layer_modified_dt": "2018-02-23T23:53:41Z", + "layer_id_s": "public-figgy:db890be9-02bf-43c1-85c8-69c0684e25f6", + "dct_references_s": "{\"http://schema.org/url\":\"https://catalog.princeton.edu/catalog/4266648\",\"http://schema.org/downloadUrl\":\"https://figgy.princeton.edu/downloads/db890be9-02bf-43c1-85c8-69c0684e25f6/file/dc08e083-5044-4949-bdd1-9d16a1fef818\",\"http://schema.org/thumbnailUrl\":\"https://figgy.princeton.edu/downloads/db890be9-02bf-43c1-85c8-69c0684e25f6/file/342e2f50-c9ff-4f86-9317-f5ce331e766e\",\"http://iiif.io/api/image\":\"https://libimages1.princeton.edu/loris/figgy_prod/a6%2Fb9%2Ff9%2Fa6b9f96251724546ae37ea3fa37a5e57%2Fintermediate_file.jp2/info.json\",\"http://iiif.io/api/presentation#manifest\":\"https://figgy.princeton.edu/concern/scanned_maps/68e90289-74ce-4f21-89e5-852f3e96ce35/manifest\"}", + "layer_geom_type_s": "Image", + "dc_format_s": "TIFF", + "suppressed_b": true, + "dct_source_sm": [ + "princeton-1r66j405w" + ], + "call_number_s": "HMC04 (Princeton)" +} diff --git a/spec/fixtures/solr_documents/child-3.json b/spec/fixtures/solr_documents/child-3.json new file mode 100644 index 00000000..8a200b1a --- /dev/null +++ b/spec/fixtures/solr_documents/child-3.json @@ -0,0 +1,30 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "ark:/88435/7d278v492", + "layer_slug_s": "princeton-7d278v492", + "uuid": "princeton-7d278v492", + "dc_title_s": "Fire Insurance Map of Princeton, New Jersey (Sheet 3) (1885)", + "solr_geom": "ENVELOPE(-74.68, -74.63, 40.37, 40.33)", + "dct_provenance_s": "Princeton", + "dc_rights_s": "Public", + "dc_description_s": "\"Feb. 1885.\" Oriented with the north to the upper left. Includes location map and key. Title taken from sheet 1 of 1927 map.", + "dc_creator_sm": [ + "Sanborn Map Company" + ], + "dc_language_s": "English", + "dc_publisher_s": "New York : Sanborn Map & Publishing Co., Limited, 1885.", + "dc_subject_sm": [ + "Real property—New Jersey—Princeton—Maps", + "Princeton (N.J.)—Maps" + ], + "layer_modified_dt": "2018-02-23T23:53:44Z", + "layer_id_s": "public-figgy:0219c7ac-4ecd-417b-adf0-cc5762fb094d", + "dct_references_s": "{\"http://schema.org/url\":\"https://catalog.princeton.edu/catalog/4266648\",\"http://schema.org/downloadUrl\":\"https://figgy.princeton.edu/downloads/0219c7ac-4ecd-417b-adf0-cc5762fb094d/file/47669d52-05c8-473e-a271-8ecaa9cfed5a\",\"http://schema.org/thumbnailUrl\":\"https://figgy.princeton.edu/downloads/0219c7ac-4ecd-417b-adf0-cc5762fb094d/file/ae304b19-32c8-407f-9405-e86bf591a15a\",\"http://iiif.io/api/image\":\"https://libimages1.princeton.edu/loris/figgy_prod/50%2Fc2%2F8b%2F50c28bc7c1b142c6bfbc700416915cdd%2Fintermediate_file.jp2/info.json\",\"http://iiif.io/api/presentation#manifest\":\"https://figgy.princeton.edu/concern/scanned_maps/9a65ca4a-0eb8-466f-9f80-40f8f9f1cd09/manifest\"}", + "layer_geom_type_s": "Image", + "dc_format_s": "TIFF", + "suppressed_b": true, + "dct_source_sm": [ + "princeton-1r66j405w" + ], + "call_number_s": "HMC04 (Princeton)" +} diff --git a/spec/fixtures/solr_documents/child-4.json b/spec/fixtures/solr_documents/child-4.json new file mode 100644 index 00000000..a73243f4 --- /dev/null +++ b/spec/fixtures/solr_documents/child-4.json @@ -0,0 +1,30 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "ark:/88435/5425kc10m", + "layer_slug_s": "princeton-5425kc10m", + "uuid": "princeton-5425kc10m", + "dc_title_s": "Fire Insurance Map of Princeton, New Jersey (Sheet 4) (1895)", + "solr_geom": "ENVELOPE(-74.68, -74.63, 40.37, 40.33)", + "dct_provenance_s": "Princeton", + "dc_rights_s": "Public", + "dc_description_s": "Title taken from sheet 1 of 1927 map. Oriented with the north to the upper right. Includes location map, key, streets and specials index, and text. \"Nov. 1896.\"", + "dc_creator_sm": [ + "Sanborn Map Company" + ], + "dc_language_s": "English", + "dc_publisher_s": "New York : Sanborn-Perris Map Co. Limited, 1895.", + "dc_subject_sm": [ + "Real property—New Jersey—Princeton—Maps", + "Princeton (N.J.)—Maps" + ], + "layer_modified_dt": "2018-02-23T23:37:50Z", + "layer_id_s": "public-figgy:f7074845-f1c4-4993-95cc-1ac34b2d07de", + "dct_references_s": "{\"http://schema.org/url\":\"https://catalog.princeton.edu/catalog/4266648\",\"http://schema.org/downloadUrl\":\"https://figgy.princeton.edu/downloads/f7074845-f1c4-4993-95cc-1ac34b2d07de/file/dc07f19e-806b-49e0-8f3e-d93e795220cf\",\"http://schema.org/thumbnailUrl\":\"https://figgy.princeton.edu/downloads/f7074845-f1c4-4993-95cc-1ac34b2d07de/file/8604e132-4d77-4346-ac76-ed303656bbcc\",\"http://iiif.io/api/image\":\"https://libimages1.princeton.edu/loris/figgy_prod/46%2F2a%2Fc0%2F462ac078bf2c4b99a3c247841d23195f%2Fintermediate_file.jp2/info.json\",\"http://iiif.io/api/presentation#manifest\":\"https://figgy.princeton.edu/concern/scanned_maps/4bf7b087-3675-4791-bc3d-3fcbf5c1ba5e/manifest\"}", + "layer_geom_type_s": "Image", + "dc_format_s": "TIFF", + "suppressed_b": true, + "dct_source_sm": [ + "princeton-1r66j405w" + ], + "call_number_s": "HMC04 (Princeton)" +} diff --git a/spec/fixtures/solr_documents/cornell_html_metadata.json b/spec/fixtures/solr_documents/cornell_html_metadata.json new file mode 100644 index 00000000..4fd4b4fb --- /dev/null +++ b/spec/fixtures/solr_documents/cornell_html_metadata.json @@ -0,0 +1,42 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "https://cugir.library.cornell.edu/catalog/cugir-007741", + "dc_title_s": "Air Monitoring Stations, Adirondack Park, 2000", + "dc_description_s": " This dataset shows the location of each ambient air quality monitoring station currently being operated by the Bureau of Air Quality Surveillance (BAQS), Division of Air Resources, New York State Department of Environmental Conservation.", + "dc_rights_s": "Public", + "dct_provenance_s": "Cornell", + "dct_references_s": "{\"http://schema.org/downloadUrl\":\"https://s3.amazonaws.com/cugir-data/00/77/41/cugir-007741.zip\",\"http://www.opengis.net/cat/csw/csdgm\":\"https://s3.amazonaws.com/cugir-data/00/77/41/fgdc.xml\",\"http://www.w3.org/1999/xhtml\":\"https://s3.amazonaws.com/cugir-data/00/77/41/fgdc.html\",\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"https://cugir.library.cornell.edu/geoserver/cugir/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://cugir.library.cornell.edu/geoserver/cugir/wms\"}", + "cugir_addl_downloads_s": "{}", + "layer_id_s": "cugir007741", + "layer_slug_s": "cugir-007741", + "dc_type_s": "Dataset", + "dc_format_s": "Shapefile", + "cugir_filesize_s": "0.07 MB", + "layer_geom_type_s": "Point", + "layer_modified_dt": "2017-10-05T00:00:00Z", + "dc_creator_sm": [ + "New York State Department of Energy Conservation Bureau of Air Quality Surveillance" + ], + "dc_publisher_sm": [ + "Geographic Data Presentation Form: Map" + ], + "dc_subject_sm": [ + "environment", + "Air quality monitoring stations", + "Air quality management", + "Air--Pollution--Measurement", + "New York State--Dept Energy Conservation" + ], + "cugir_category_sm": [ + "environment", + "climate" + ], + "dct_spatial_sm": [ + "New York" + ], + "dct_issued_s": "2000-06-00", + "dct_temporal_sm": [ + "-Pres" + ], + "solr_geom": "ENVELOPE(-74.989258, -73.858335, 44.67778, 43.452994)" +} diff --git a/spec/fixtures/solr_documents/esri-dynamic-layer-all-layers.json b/spec/fixtures/solr_documents/esri-dynamic-layer-all-layers.json new file mode 100644 index 00000000..13acde5d --- /dev/null +++ b/spec/fixtures/solr_documents/esri-dynamic-layer-all-layers.json @@ -0,0 +1,36 @@ +{ + "geoblacklight_version": "1.0", + "layer_geom_type_s": "Polygon", + "dc_identifier_s": "urn-90f14ff4-1359-4beb-b931-5cb41d20ab90", + "dc_title_s": "Glacial Boundaries: Illinois, 1997", + "dc_description_s": "This is an SDE feature class containing glacial boundary polygons representing the extent of glaciation for major glacial episodes in Illinois. Data are originally from the Quaternary Deposits in Illinois (1:500,000) map by Lineback (1979). Data have been subsequently modified to conform with the reclassification by Hansel and Johnson, ISGS Bulletin 104 (1996). Glacial episode is identified for each polygon. The data include the Wisconsin, Illinois and the Pre-Illinois episodes. Areas not glaciated are also identified. The nominal scale is 1:500,000.", + "dc_rights_s": "Public", + "dct_provenance_s": "Minnesota", + "layer_id_s": "urn:f14ff4-1359-4beb-b931-5cb41d20ab90", + "layer_slug_s": "minnesota-f14ff4-1359-4beb-b931-5cb41d20ab90", + "layer_modified_dt": "2016-01-12T16:10:41Z", + "dc_creator_sm": [ + "Illinois State Geological Survey" + ], + "dc_publisher_sm": [ + "Illinois State Geological Survey" + ], + "dc_format_s": "Shapefile", + "dc_type_s": "Dataset", + "dc_subject_sm": [ + "Geoscientific Information", + "Boundaries", + "Glacier", + "Glacial", + "Geology", + "Glaciation" + ], + "dct_spatial_sm": [ + "Illinois" + ], + "dct_issued_s": "1997-12-13", + "dct_temporal_sm": "1996", + "solr_geom": "ENVELOPE(-91.513518, -87.495214, 42.508348, 36.969972)", + "solr_year_i": 1997, + "dct_references_s": "{\"urn:x-esri:serviceType:ArcGIS#DynamicMapLayer\":\"http://data.isgs.illinois.edu/arcgis/rest/services/Geology/Glacial_Boundaries/MapServer\",\"http://schema.org/url\":\"https://clearinghouse.isgs.illinois.edu/data/geology/glacial-boundaries\",\"http://schema.org/downloadUrl\":\"https://clearinghouse.isgs.illinois.edu/sites/clearinghouse.isgs/files/Clearinghouse/data/ISGS/Geology/zips/IL_Glacial_Bndys_Py.zip\"}" +} diff --git a/spec/fixtures/solr_documents/esri-dynamic-layer-single-layer.json b/spec/fixtures/solr_documents/esri-dynamic-layer-single-layer.json new file mode 100644 index 00000000..5c2b6f44 --- /dev/null +++ b/spec/fixtures/solr_documents/esri-dynamic-layer-single-layer.json @@ -0,0 +1,40 @@ +{ + "dc_identifier_s": "4669301e-b4b2-4c8b-bf40-01b968a2865b", + "dc_title_s": "Abandoned Quarries: Indiana", + "dc_description_s": "QUARRIES_ABANDONED_IN was derived from a comma-delimited text file named \"QUALOC.TXT\" contained on the following CD-ROM publication: Hasenmueller, W.A., and Ault, C.H., 2001, Abandoned Industrial Minerals Quarries in Indiana, 2nd Edition, Digital Version, Computer Database 2, Indiana Geological Survey. The field named \"QUANUM\" can be used to link this data to the following tables available in the publication cited above: bibliography (QUAREF.TXT), history of operation (QUAHIS.TXT), and stratigraphy (QUASTR.TXT). It contains all abandoned quarry locations within QUALOC.TXT that have locational information that is adequate to determine UTM coordinate values.", + "dc_rights_s": "Public", + "dc_format_s": "Shapefile", + "dc_language_sm": "English", + "dc_type_sm": [ + "Dataset", + "Service" + ], + "dc_publisher_sm": [ + "Indiana Geological Survey" + ], + "dc_creator_sm": [ + "Indiana Geological Survey" + ], + "dc_subject_sm": [ + "Geoscientific Information", + "Geology" + ], + "dct_provenance_s": "Purdue", + "dct_references_s": "{\"http://schema.org/url\":\"http://maps.indiana.edu/previewMaps/Geology/Industrial_Minerals_Quarries_Abandoned.html\",\"http://schema.org/downloadUrl\":\"http://maps.indiana.edu/download/Geology/Industrial_Minerals_Quarries_Abandoned.zip\",\"http://schema.org/image\":\"http://maps.indiana.edu/images/Geology/Industrial_Minerals_Quarries_Abandoned.png\",\"urn:x-esri:serviceType:ArcGIS#DynamicMapLayer\":\"https://maps.indiana.edu/arcgis/rest/services/Geology/Industrial_Minerals_Quarries_Abandoned/MapServer/0\",\"http://www.opengis.net/cat/csw/csdgm\":\"http://maps.indiana.edu/metadata/Geology/Industrial_Minerals_Quarries_Abandoned.xml\"}", + "dct_isPartOf_sm": [ + "IndianaMAP" + ], + "dct_issued_s": "2003-05-30", + "dct_temporal_sm": [ + "2003" + ], + "dct_spatial_sm": [ + "Indiana, United States" + ], + "layer_slug_s": "4669301e-b4b2-4c8b-bf40-01b968a2865b", + "layer_geom_type_s": "Point", + "layer_modified_dt": "2018-08-02T17:05:54Z", + "solr_geom": "ENVELOPE(-87.9324, -86.2569, 39.8521, 37.8626)", + "solr_year_i": 2003, + "geoblacklight_version": "1.0" +} diff --git a/spec/fixtures/solr_documents/esri-feature-layer.json b/spec/fixtures/solr_documents/esri-feature-layer.json new file mode 100644 index 00000000..e60e6468 --- /dev/null +++ b/spec/fixtures/solr_documents/esri-feature-layer.json @@ -0,0 +1,33 @@ +{ + "geoblacklight_version": "1.0", + "layer_geom_type_s": "Polygon", + "layer_modified_dt": "2016-07-11T09:15:37Z", + "solr_geom": "ENVELOPE(-93.3291083642602, -93.1896159986687, 45.0512462600492, 44.8901520021226)", + "dct_references_s": "{\"http://schema.org/downloadUrl\":\"http://opendata.minneapolismn.gov/datasets/772ebcaf2ec0405ea1b156b5937593e7_0.zip\",\"urn:x-esri:serviceType:ArcGIS#FeatureLayer\":\"https://services.arcgis.com/afSMGVsC7QlRK1kZ/arcgis/rest/services/Fire_Station_Areas/FeatureServer/0\",\"http://schema.org/url\":\"http://opendata.minneapolismn.gov/datasets/772ebcaf2ec0405ea1b156b5937593e7_0\",\"http://schema.org/thumbnailUrl\":\"http://exampleserver/thumbnail.png\"}", + "dc_rights_s": "Public", + "dct_provenance_s": "Minnesota", + "dc_subject_sm": [ + "utilitiesCommunications", + "fire" + ], + "dct_temporal_sm": "2015", + "dc_description_s": "Map service showing the Fire Station service areas for the Minneapolis Fire Department.", + "dct_issued_s": "2012-04-25T19:32:02.000ZZ", + "dc_format_s": "Shapefile", + "dc_creator_sm": [ + "MapIT Minneapolis" + ], + "dc_type_s": "Dataset", + "dc_identifier_s": "e2f33b52-4039-4bbb-9095-b5cdc0175943", + "solr_year_i": 2012, + "dct_spatial_sm": [ + "City of Minneapolis, Minnesota", + "Minneapolis" + ], + "dc_publisher_sm": [ + "MapIT Minneapolis" + ], + "layer_id_s": "urn:e2f33b52-4039-4bbb-9095-b5cdc0175943", + "dc_title_s": "Fire Station Areas: Minneapolis, Minnesota", + "layer_slug_s": "minnesota-e2f33b52-4039-4bbb-9095-b5cdc0175943" +} diff --git a/spec/fixtures/solr_documents/esri-image-map-layer.json b/spec/fixtures/solr_documents/esri-image-map-layer.json new file mode 100644 index 00000000..3c9b5997 --- /dev/null +++ b/spec/fixtures/solr_documents/esri-image-map-layer.json @@ -0,0 +1,21 @@ +{ + "geoblacklight_version": "1.0", + "dc_description_s": "A Web Mercator mosaic derived from half-meter resolution color Digital Orthophoto Quadrangles (DOQ) of the entire state of Oregon from the summer of 2011 for multiple state agencies in Oregon. The original content was produced utilizing the scanned aerial film acquired during peak agriculture growing seasons under the National Agriculture Imagery Program (NAIP) under contract for the United States Department of Agriculture (USDA) for the Farm Service Agency's (FSA) Compliance Program. A DOQ is a raster image in which displacement in the image caused by sensor orientation and terrain relief has been removed. A DOQ combines the image characteristics of a photograph with the geometric qualities of a map. The geographic extent of the DOQ is a full 7.5-minute map (latitude and longitude) with a nominal buffer. The horizontal accuracy is within 5 meters of reference ortho imagery (1992 USGS DOQs.) The 1992 USGS DOQ imagery met National Map Accuracy Standards at 1:24,000 scale for 7.5-minute quadrangles. Translated to the ground, the 0.5 mm error distance at 1:24,000 scale is 39.4 ft (12 meters), making the absolute accuracy for the 2011 Oregon DOQs +/- 17 meters. The process of reprojecting and mosaicing the images may have added a potential shift of +/-0.75 meters, making the cumulative accuracy +/-17.75 meters. The original images were projected into a GCS_WGS_1984_Web_Mercator(Auxiliary Sphere) for compatibility with other generic web map services.", + "dc_format_s": "GeoTIFF", + "dc_identifier_s": "oregon-naip-2011", + "dc_language_s": "English", + "dc_rights_s": "Public", + "dc_title_s": "2011 One Meter Color IR NAIP Orthoimagery", + "dc_type_s": "Dataset", + "dct_references_s": "{\"urn:x-esri:serviceType:ArcGIS#ImageMapLayer\": \"http://imagery.oregonexplorer.info/arcgis/rest/services/NAIP_2011/NAIP_2011_Dynamic/ImageServer\"}", + "dct_temporal_sm": [ + "2011" + ], + "dct_provenance_s": "Princeton", + "layer_slug_s": "princeton-test-oregon-naip-2011", + "layer_id_s": "oregon-naip-2011", + "layer_geom_type_s": "Raster", + "layer_modified_dt": "2015-07-15T00:41:49Z", + "solr_geom": "ENVELOPE(-124.88, -116.41, 46.34, 41.91)", + "solr_year_i": 2008 +} \ No newline at end of file diff --git a/spec/fixtures/solr_documents/esri-tiled_map_layer.json b/spec/fixtures/solr_documents/esri-tiled_map_layer.json new file mode 100644 index 00000000..78719467 --- /dev/null +++ b/spec/fixtures/solr_documents/esri-tiled_map_layer.json @@ -0,0 +1,22 @@ +{ + "geoblacklight_version": "1.0", + "dc_description_s": "This map shows the Soil Survey Geographic (SSURGO) by the United States Department of Agriculture's Natural Resources Conservation Service. It also shows data that was developed by the National Cooperative Soil Survey and supersedes the State Soil Geographic (STATSGO) dataset published in 1994. SSURGO digitizing duplicates the original soil survey maps. This level of mapping is designed for use by landowners, townships, and county natural resource planning and management. The user should be knowledgeable of soils data and their characteristics. The smallest scale map shows the Global Soil Regions map by the United States Department of Agriculture’s Natural Resources Conservation Service.", + "dc_format_s": "GeoTIFF", + "dc_identifier_s": "test-soil-survey-map", + "dc_language_s": "English", + "dc_publisher_s": "United States Department of Agriculture, Natural Resources Conservation Service", + "dc_rights_s": "Public", + "dc_title_s": "Soil Survey Geographic (SSURGO)", + "dc_type_s": "Dataset", + "dct_references_s": "{\"urn:x-esri:serviceType:ArcGIS#TiledMapLayer\": \"http://services.arcgisonline.com/arcgis/rest/services/Specialty/Soil_Survey_Map/MapServer\"}", + "dct_temporal_sm": [ + "2010" + ], + "dct_provenance_s": "NYU", + "layer_slug_s": "nyu-test-soil-survey-map", + "layer_id_s": "test-soil-survey_map", + "layer_geom_type_s": "Raster", + "layer_modified_dt": "2015-06-16T00:59:49Z", + "solr_geom": "ENVELOPE(-129.4956, -64.4393, 48.6336, 21.8079)", + "solr_year_i": 2010 +} diff --git a/spec/fixtures/solr_documents/esri-wms-layer.json b/spec/fixtures/solr_documents/esri-wms-layer.json new file mode 100644 index 00000000..852abdc5 --- /dev/null +++ b/spec/fixtures/solr_documents/esri-wms-layer.json @@ -0,0 +1,33 @@ +{ + "geoblacklight_version": "1.0", + "dc_creator_sm": [ + "(creation): U.S. Geological Survey", + "(selection/conversion): Bernardin, Lochmueller and Associates" + ], + "dc_description_s": "USGS National Atlas metadata states NThis data set portrays the National Agricultural Statistics Service, U.S. Department of Agriculture's 1997 Census data for the United States, presented by county. There are 25 categories of data which include information about farms, crops, livestock, values of products, and farm operator characteristics.N", + "dc_format_s": "Shapefile", + "dc_identifier_s": "urn-f082acb1-b01e-4a08-9126-fd62a23fd9aa", + "dc_publisher_sm": [ + "Bernardin, Lochmueller and Associates" + ], + "dc_rights_s": "Public", + "dc_subject_sm": [ + "farming", + "agriculture" + ], + "dc_title_s": "Agriculture Census: Indiana, 1997", + "dc_type_s": "Dataset", + "dct_issued_s": "2003-01-28", + "dct_provenance_s": "Purdue", + "dct_references_s": "{\"http://schema.org/downloadUrl\":\"http://maps.indiana.edu/download/Environment/Agriculture_Census.zip\",\"http://schema.org/url\":\"http://indianamap.org/\",\"http://www.isotc211.org/schemas/2005/gmd/\":\"https://opengeometadata.github.io/edu.purdue/f0/82/ac/b1b01e4a089126fd62a23fd9aa/iso19139.xml\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://maps.indiana.edu/arcgis/services/Environment/Agriculture_Census/MapServer/WMSServer\",\"urn:x-esri:serviceType:ArcGIS#DynamicMapLayer\":\"https://maps.indiana.edu/arcgis/rest/services/Environment/Agriculture_Census/MapServer\"}", + "dct_spatial_sm": [ + "Indiana" + ], + "dct_temporal_sm": "1972-1997", + "layer_geom_type_s": "Mixed", + "layer_id_s": "0", + "layer_modified_dt": "2016-06-20T16:17:36Z", + "layer_slug_s": "purdue-urn-f082acb1-b01e-4a08-9126-fd62a23fd9aa", + "solr_geom": "ENVELOPE(-88.1607, -84.6882, 41.7753, 37.7554)", + "solr_year_i": 1972 +} diff --git a/spec/fixtures/solr_documents/figgy-image-work.json b/spec/fixtures/solr_documents/figgy-image-work.json new file mode 100644 index 00000000..9e9acf1e --- /dev/null +++ b/spec/fixtures/solr_documents/figgy-image-work.json @@ -0,0 +1,23 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "ark:/88435/cv43nz62s", + "layer_slug_s": "princeton-cv43nz62s", + "uuid": "princeton-cv43nz62s", + "dc_title_s": "Carte geologique de la France a1/80,000; Sierck-Sarreguemines", + "solr_geom": "ENVELOPE(6.2819, 7.1915, 49.4037, 49.0756)", + "dct_provenance_s": "Princeton", + "dc_rights_s": "Public", + "dc_description_s": "West Decimal Degree 6.2819 North Decimal Degree 49.4037 East Decimal Degree 7.1915 Explanatory text: 1 sheet in MC folder. South Decimal Degree 49.0756", + "dc_language_s": "French", + "dc_publisher_s": "Orléans : Bureau de recherches géogiques et minières, 1957.", + "dc_subject_sm": [ + "Geology", + "Mines and mineral resources", + "France—Maps" + ], + "layer_modified_dt": "2018-02-24T00:18:36Z", + "layer_id_s": "public-figgy:e5bf2360-6533-4f5d-b306-cf7a4ed461a6", + "dct_references_s": "{\"http://schema.org/url\":\"https://figgy.princeton.edu/concern/scanned_maps/32146ff6-c93d-4b14-b198-6fb518b44042\",\"http://schema.org/downloadUrl\":\"https://figgy.princeton.edu/downloads/e5bf2360-6533-4f5d-b306-cf7a4ed461a6/file/f7eebaac-7cab-446e-8466-194a44e0e718\",\"http://schema.org/thumbnailUrl\":\"https://figgy.princeton.edu/downloads/e5bf2360-6533-4f5d-b306-cf7a4ed461a6/file/2c4f5a95-6ade-49d8-9e49-3cc8378f7ed0\",\"http://iiif.io/api/image\":\"https://libimages1.princeton.edu/loris/figgy_prod/bf%2F5d%2F7f%2Fbf5d7fc1dcbc48118dfc5831a3e08861%2Fintermediate_file.jp2/info.json\",\"http://iiif.io/api/presentation#manifest\":\"https://figgy.princeton.edu/concern/scanned_maps/32146ff6-c93d-4b14-b198-6fb518b44042/manifest\"}", + "layer_geom_type_s": "Image", + "dc_format_s": "TIFF" +} diff --git a/spec/fixtures/solr_documents/harvard_raster.json b/spec/fixtures/solr_documents/harvard_raster.json new file mode 100644 index 00000000..171f9f81 --- /dev/null +++ b/spec/fixtures/solr_documents/harvard_raster.json @@ -0,0 +1,44 @@ +{ + "geoblacklight_version": "1.0", + "dc_description_s": "This layer is a georeferenced raster image of the historic paper map entitled: [Karta mesta zanimaemago Sanktpeterburgom : v tom vide v kakom onoe nakhodilos' za god do osnovaniia goroda; sostavlena dlia panoramy S. Peterburga, 1834]. It was published in 1834. Scale [ca. 1:76,000]. Covers Saint Petersburg Region, Russia. Map in Russian and Swedish.\n\nThe image inside the map neatline is georeferenced to the surface of the earth and fit to the 'Pulkovo 1995 Gauss Kruger Zone 6N' coordinate system. All map collar and inset information is also available as part of the raster image, including any inset maps, profiles, statistical tables, directories, text, illustrations, index maps, legends, or other information associated with the principal map.\n\nThis map shows features such as roads, drainage, built-up areas and selected buildings, ground cover, and more. Relief is shown by hachures. Depths shown by soundings. Includes insets: [Retusari island] -- [Sluselberg]. \n\nThis layer is part of a selection of digitally scanned and georeferenced historic maps from The Harvard Map Collection as part of the Imaging the Urban Environment project. Maps selected for this project represent major urban areas and cities of the world, at various time periods. These maps typically portray both natural and manmade features at a large scale. The selection represents a range of regions, originators, ground condition dates, scales, and purposes.", + "dc_format_s": "GeoTIFF", + "dc_identifier_s": "urn:hul.harvard.edu:HARVARD.SDE2.G7064_S2_1834_K3", + "dc_language_s": "English", + "dc_publisher_s": "Harvard Map Collection, Harvard College Library", + "dc_rights_s": "Public", + "dc_subject_sm": [ + "Maps", + "Human", + "settlements", + "Cities", + "and", + "towns", + "Land", + "use", + "Landforms", + "Infrastructure", + "(Economics)", + "Transportation", + "Bodies", + "of", + "water", + "imageryBaseMapsEarthCover" + ], + "dc_title_s": "Saint Petersburg Region, Russia, 1834 (Raster Image)", + "dc_type_s": "Dataset", + "dct_references_s": "{\"http://schema.org/DownloadAction\":\"http://pelham.lib.harvard.edu:8080/HGL/HGLOpenDelivery\",\"http://www.opengis.net/def/serviceType/ogc/wcs\":\"http://pelham.lib.harvard.edu:8090/geoserver/wcs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"http://pelham.lib.harvard.edu:8090/geoserver/wms\",\"http://www.opengis.net/cat/csw/csdgm\":\"https://raw.githubusercontent.com/OpenGeoMetadata/edu.harvard/master/217/121/227/77/fgdc.xml\"}", + "dct_spatial_sm": [ + "Russia Saint Petersburg" + ], + "dct_temporal_sm": [ + "1834" + ], + "dct_issued_s": "2000", + "dct_provenance_s": "Harvard", + "layer_slug_s": "harvard-g7064-s2-1834-k3", + "layer_id_s": "cite:G7064_S2_1834_K3", + "layer_geom_type_s": "Raster", + "layer_modified_dt": "2014-05-27T18:09:36Z", + "solr_geom": "ENVELOPE(30.013108, 30.875309, 60.041712, 59.669749)", + "solr_year_i": 1834 +} \ No newline at end of file diff --git a/spec/fixtures/solr_documents/iiif-eastern-hemisphere.json b/spec/fixtures/solr_documents/iiif-eastern-hemisphere.json new file mode 100644 index 00000000..5ea14b89 --- /dev/null +++ b/spec/fixtures/solr_documents/iiif-eastern-hemisphere.json @@ -0,0 +1,30 @@ +{ + "dc_identifier_s": "57f0f116-b64e-4773-8684-96ba09afb549", + "dc_title_s": "A new & accurate map of Asia: drawn from actual surveys, and otherwise collected from journals; assisted by the most approved modern maps & charts. the whole being regulated by astron. observations", + "dc_description_s": "Cartographic Details: Scale [1:26,000,000]. Numbered \"N⁰52.\" Decorative title cartouche with palm tree. Shows boundaries, rivers, islands and principal settlements. Relief shown pictorially. London meridian. 35 x 43 cm", + "dc_rights_s": "Public", + "dc_format_s": "TIFF", + "dc_language_sm": [ + "English" + ], + "dc_type_sm": [ + "Image" + ], + "dc_creator_sm": [ + "Bowen, Emanuel (-1767)" + ], + "dct_provenance_s": "Minnesota", + "dct_references_s": "{\"http://schema.org/url\":\"http://purl.umn.edu/200804\",\"http://schema.org/downloadUrl\":\"https://umedia.lib.umn.edu/sites/default/files/archive/113/image/tiff/1058396.tif\",\"http://iiif.io/api/image\":\"https://umedia.lib.umn.edu/fcgi-bin/iipsrv.fcgi?IIIF=sites/default/files/reference/113/image/jp2/1058396.jp2/info.json\"}", + "dct_isPartOf_sm": [ + "John R. Borchert Map Library" + ], + "dct_temporal_sm": [ + "1750" + ], + "layer_slug_s": "57f0f116-b64e-4773-8684-96ba09afb549", + "layer_geom_type_s": "Image", + "layer_modified_dt": "2018-08-02T16:28:36Z", + "solr_geom": "ENVELOPE(25, -168.35, 81.66, -12.93)", + "solr_year_i": 1750, + "geoblacklight_version": "1.0" +} diff --git a/spec/fixtures/solr_documents/index-map-stanford.json b/spec/fixtures/solr_documents/index-map-stanford.json new file mode 100644 index 00000000..a1bad497 --- /dev/null +++ b/spec/fixtures/solr_documents/index-map-stanford.json @@ -0,0 +1,37 @@ +{ + "dc_identifier_s": "http://purl.stanford.edu/fb897vt9938", + "dc_title_s": "Dabao Kinbōzu, Maps Index", + "dc_description_s": "This polygon GeoJSON file is an index to 1:50000 scale maps of Davao (Philippines), titled 'Dabao Kinbōzu -- ダバオ近傍圖/Dabao Kinbōzu.’ This map series was originally produced by the Japanese Land Survey Department of the General Staff Headquarters in 1944. Stanford University Libraries holds a large collection of Japanese military and imperial maps, referred to as gaihōzu, or \"maps of outer lands.\" These maps were produced starting in the early Meiji (1868-1912) era and the end of World War II by the Land Survey Department of the General Staff Headquarters, the former Japanese Army. The Library is in the process of scanning and making available all of the maps in the collection. To create this index, footprints were generated using the fishnet tool, and metadata were supplied for the digitized paper maps by Stanford University Libraries. After the footprints were created, the GeoJSON was trimmed and labeled according to the sources.This layer provides an index map that can be used to locate individual scanned map sheets.", + "dc_rights_s": "Public", + "dct_provenance_s": "Stanford", + "dct_references_s": "{\"http://schema.org/url\":\"http://purl.stanford.edu/fb897vt9938\",\"http://schema.org/downloadUrl\":\"https://gist.githubusercontent.com/mejackreed/4a44f1f7cc4fbb926068738e903a9e96/raw/fedfb0e599d647920f084627b7dca8f88a358757/stanford-fb897vt9938.geojson\",\"http://www.loc.gov/mods/v3\":\"http://purl.stanford.edu/fb897vt9938.mods\",\"http://www.isotc211.org/schemas/2005/gmd/\":\"http://opengeometadata.stanford.edu/metadata/edu.stanford.purl/druid:fb897vt9938/iso19139.xml\",\"http://www.w3.org/1999/xhtml\":\"http://opengeometadata.stanford.edu/metadata/edu.stanford.purl/druid:fb897vt9938/default.html\",\"https://openindexmaps.org\": \"https://gist.githubusercontent.com/mejackreed/4a44f1f7cc4fbb926068738e903a9e96/raw/fedfb0e599d647920f084627b7dca8f88a358757/stanford-fb897vt9938.geojson\"}", + "layer_id_s": "druid:fb897vt9938", + "layer_slug_s": "stanford-fb897vt9938", + "layer_geom_type_s": "Polygon", + "layer_modified_dt": "2016-10-20T21:07:24Z", + "dc_format_s": "GeoJSON", + "dc_language_s": "English", + "dc_type_s": "Dataset", + "dc_publisher_s": "Stanford Digital Repository", + "dc_creator_sm": [ + "Stanford Geospatial Center" + ], + "dc_subject_sm": [ + "Military maps", + "Topographic maps", + "Index maps", + "Grids (Cartography)", + "Boundaries", + "Military" + ], + "dct_issued_s": "2016", + "dct_temporal_sm": [ + "1944" + ], + "dct_spatial_sm": [ + "Davao (Philippines)" + ], + "solr_geom": "ENVELOPE(125, 126, 7.3333, 6.6666)", + "solr_year_i": 1944, + "stanford_rights_metadata_s": "\n\n \n \n \n \n \n \n \n \n \n \n \n This item is in the public domain. There are no restrictions on use.\n \n \n \n \n This work is in the Public Domain, meaning that it is not subject to copyright.\n \n\n" +} \ No newline at end of file diff --git a/spec/fixtures/solr_documents/no_spatial.json b/spec/fixtures/solr_documents/no_spatial.json new file mode 100644 index 00000000..1f74725b --- /dev/null +++ b/spec/fixtures/solr_documents/no_spatial.json @@ -0,0 +1,21 @@ +{ + "dc_identifier_s": "c0515c4e-97dc-4fff-82cb-f65144482631", + "dc_title_s": "ASTER Global Emissivity Dataset 1-kilometer V003 - AG1KM", + "dc_rights_s": "Public", + "layer_geom_type_s": "dataset", + "dct_provenance_s": "U.S. Geological Survey, Department of the Interior", + "dc_description_s": "The Advanced Spaceborne Thermal Emission and Reflection radiometer Global Emissivity Database (ASTER GED) was developed by the National Aeronautics and Space Administration's (NASA) Jet Propulsion Laboratory (JPL), California Institute of Technology. The North America portion of this collection was formerly called the North American ASTER Land Surface Emissivity Database (NAALSED) - a seasonal dataset consisting of mean summer (J-A-S) and winter (J-F-M) products. ASTER GED products are output on 1degree x 1 degree grids at 100-meter or 1-kilometer spatial resolution (nominal) and include the mean emissivity and standard deviation for all 5 ASTER thermal infrared bands, mean land surface temperature (LST) and standard deviation, a re-sampled ASTER GDEM (not included in the North America Winter products), land-water mask, mean Normalized Difference Vegetation Index (NDVI) and standard deviation, latitude, longitude, and observation count. Additional ASTER GED product information is available at https://lpdaac.usgs.gov/products/community_products_table. Product tiles are available in HDF and binary format and may be downloaded via HTTP by visiting the following data clients: NASA Reverb (http://reverb.echo.nasa.gov), LP DAAC Data Pool (http://e4ftl01.cr.usgs.gov/ASTT/), or EarthExplorer (http://earthexplorer.usgs.gov).", + "layer_slug_s": "aster-global-emissivity-dataset-1-kilometer-v003-ag1kmcad20", + "dc_subject_sm": [ + "imagery", + "land surface temperature", + "u.s. geological survey (usgs)", + "earth observing system", + "land processes distributed active archive center (lpdaac)", + "aster", + "normalized difference vegetation index", + "terra", + "image map", + "emissivity" + ] +} diff --git a/spec/fixtures/solr_documents/nyu-dublin-lidar-additional-downloads.json b/spec/fixtures/solr_documents/nyu-dublin-lidar-additional-downloads.json new file mode 100644 index 00000000..5aa01694 --- /dev/null +++ b/spec/fixtures/solr_documents/nyu-dublin-lidar-additional-downloads.json @@ -0,0 +1,57 @@ +{ + "dc_identifier_s": "http://hdl.handle.net/2451/38645", + "dc_title_s": "2015 LiDAR Flight 150326_120403 for Dublin City", + "dc_description_s": "This record contains aerial laser scanning (ALS) and photogrammetry data that corresponds to Flight 150326_120403, which is one part of data that was collected over an area of more than 2km² in Dublin, Ireland in 2015 and includes 3D point-cloud (LAZ), 3D full waveform LiDAR (LAS and Pulsewave), and ortho-rectified 2D rasters. Over 1.4 billion laser points were acquired (inclusive of partially covered areas). ALS was carried out by contractors using a TopEye system S/N 443. Imagery data was captured using a Phase One camera system. The average flying altitude was 300m with the total of 41 flight paths. This dataset was collected with funding from European Research Council funded project RETURN - Rethinking Tunnelling in Urban Neighbourhoods [ERC-2012- StG-307836]. For more information on this data, consult the documentation. See the source dataset for a guide to the entire collection. A manifest of SHA-256 checksums is available in the nyu_2451_38645_manifest.json' file, within the preservation record. Users may also find a stable link to this collection at https://doi.org/10.17609/N8MQ0N/. This data is released with an Attribution 4.0 International (CC BY 4.0) license.", + "dc_rights_s": "Public", + "dct_provenance_s": "NYU", + "dct_references_s": "{\"http://schema.org/url\":\"http://hdl.handle.net/2451/38645\",\"http://schema.org/downloadUrl\":\"https://archive.nyu.edu/retrieve/80003/nyu_2451_38645_pc_F_150326_120403.zip\",\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"https://maps-public.geo.nyu.edu/geoserver/sdr/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://maps-public.geo.nyu.edu/geoserver/sdr/wms\",\"http://lccn.loc.gov/sh85035852\":\"https://archive.nyu.edu/retrieve/81335/nyu_2451_38684_doc.zip\"}", + "layer_id_s": "sdr:nyu_2451_38645", + "layer_slug_s": "nyu-2451-38645", + "layer_geom_type_s": "Mixed", + "layer_modified_dt": "2017-06-06T15:21:27Z", + "dc_format_s": "LAZ", + "dc_language_s": "English", + "dc_type_s": "Dataset", + "dc_publisher_s": "New York University. Center for Urban Science and Progress", + "dc_creator_sm": [ + "Debra F. Laefer", + "Saleh Abuwarda", + "Anh-Vu Vo", + "Linh Truong-Hong", + "Hamid Gharibi" + ], + "dc_subject_sm": [ + "Cities and towns", + "Urban density", + "Urban development" + ], + "dct_issued_s": "2017", + "dct_temporal_sm": [ + "2015" + ], + "dct_spatial_sm": [ + "Dublin City, Leinster, Ireland", + "Dublin, Leinster, Ireland" + ], + "solr_geom": "ENVELOPE(-6.276262886620303, -6.259810167645459, 53.345160886620306, 53.334834167645454)", + "solr_year_i": 2015, + "geoblacklight_version": "1.0", + "nyu_addl_format_sm": [ + "LAZ (Point-cloud)", + "LAS (Full-waveform)", + "Pulsewaves (Full-waveform)", + "JPG (Oblique photos)", + "GeoTIFF (Geo-referenced RGB)", + "GeoTIFF (Geo-referenced CIR)" + ], + "dct_source_sm": [ + "nyu-2451-38684" + ], + "nyu_addl_dspace_s": "39643", + "nyu_addl_license_s": "Attribution 4.0 International (CC BY 4.0)", + "nyu_addl_downloads_s": "{\"LAZ (Point-cloud)\":\"https://archive.nyu.edu/retrieve/80003/nyu_2451_38645_pc_F_150326_120403.zip\",\"LAS (Full-waveform)\":\"https://archive.nyu.edu/retrieve/80002/nyu_2451_38645_fwf_las_F_150326_120403.zip\",\"Pulsewaves (Full-waveform)\":\"https://archive.nyu.edu/retrieve/80005/nyu_2451_38645_fwf_plswvs_F_150326_120403.zip\",\"GeoTIFF (Geo-referenced RGB)\":\"https://archive.nyu.edu/retrieve/80240/nyu_2451_38645_rgb_F_150326_120403.zip\",\"GeoTIFF (Geo-referenced CIR)\":\"https://archive.nyu.edu/retrieve/80001/nyu_2451_38645_cir_F_150326_120403.zip\",\"JPG (Oblique photos)\":\"https://archive.nyu.edu/retrieve/80004/nyu_2451_38645_oblique_F_150326_120403.zip\"}", + "dct_isPartOf_sm": [ + "2015 Dublin LiDAR", + "NYU Research Data" + ] +} diff --git a/spec/fixtures/solr_documents/nyu-dublin-lidar-warning-doi.json b/spec/fixtures/solr_documents/nyu-dublin-lidar-warning-doi.json new file mode 100644 index 00000000..f6071d3e --- /dev/null +++ b/spec/fixtures/solr_documents/nyu-dublin-lidar-warning-doi.json @@ -0,0 +1,48 @@ +{ + "dc_identifier_s": "http://hdl.handle.net/2451/38684", + "dc_title_s": "2015 Aerial Laser and Photogrammetry Survey of Dublin City Collection Record", + "dc_description_s": "This record serves as an index to a suite of high density, aerial remote sensing data for a 2km\u00b2 area of Dublin, Ireland obtained at an average flying altitude of 300m. Collected in March 2015, the data include aerial laser scanning (ALS) from 41 flight paths in the form of a 3D point-cloud (LAZ) and 3D full waveform ALS (LAS and Pulsewave), and imagery data including ortho-rectified 2D rasters (RGBi) and oblique images. The ALS data consist of over 1.4 billion points (inclusive of partially covered areas) and were acquired by a TopEye system S\/N 443. Imagery data were captured using a Phase One camera system. In this data offering, the ALS and imagery data are structured both by flight paths and by 500 \u00d7 500 m rectangular tiles. Miscellaneous data including video records and instrument parameters are available in the preservation record. For more information on these data including related publications, reports, and bulk-download instructions, please consult the documentation. For a visualization of the data as compared to standard LiDAR data density, please consult the video flythrough available at https:\/\/youtu.be\/qEi2Wo7Bcuk. This dataset was collected with funding from European Research Council Consolidator project RETURN \u2013 Rethinking Tunnelling in Urban Neighbourhoods [ERC-2012- StG-307836] and additional funding from Science Foundation Ireland [12\/ERC\/I2534]. These data were released with an Attribution 4.0 International (CC BY 4.0) license.", + "dc_rights_s": "Public", + "dct_provenance_s": "NYU", + "dct_references_s": "{\"http://schema.org/url\":\"http://hdl.handle.net/2451/38684\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://maps-public.geo.nyu.edu/geoserver/sdr/wms\",\"http://lccn.loc.gov/sh85035852\":\"https://archive.nyu.edu/retrieve/81335/nyu_2451_38684_doc.zip\"}", + "layer_id_s": "sdr:nyu_2451_38684", + "layer_slug_s": "nyu-2451-38684", + "layer_geom_type_s": "Mixed", + "layer_modified_dt": "2017-06-06T15:21:27Z", + "dc_format_s": "Mixed", + "dc_language_s": "English", + "dc_type_s": "Dataset", + "dc_publisher_s": "New York University. Center for Urban Science and Progress", + "dc_creator_sm": [ + "Debra F. Laefer", + "Saleh Abuwarda", + "Anh-Vu Vo", + "Linh Truong-Hong", + "Hamid Gharibi" + ], + "dc_subject_sm": [ + "Cities and towns", + "Urban density", + "Urban development" + ], + "dct_issued_s": "2017", + "dct_temporal_sm": [ + "2015" + ], + "dct_spatial_sm": [ + "Dublin City, Leinster, Ireland", + "Dublin, Leinster, Ireland" + ], + "solr_geom": "ENVELOPE(-6.284507, -6.236363, 53.360669, 53.331333)", + "solr_year_i": 2015, + "geoblacklight_version": "1.0", + "nyu_addl_format_sm": [ + "Mixed" + ], + "nyu_addl_dspace_s": "39682", + "nyu_addl_license_s": "Attribution 4.0 International (CC BY 4.0)", + "dct_isPartOf_sm": [ + "2015 Dublin LiDAR", + "NYU Research Data" + ] +} diff --git a/spec/fixtures/solr_documents/nyu-indexmap.json b/spec/fixtures/solr_documents/nyu-indexmap.json new file mode 100644 index 00000000..33e5665d --- /dev/null +++ b/spec/fixtures/solr_documents/nyu-indexmap.json @@ -0,0 +1,44 @@ +{ + "dc_creator_sm": [ + "Geological Survey (U.S.)" + ], + "dc_description_s": "This shapefile layer serves as an index map for individual sheets in the Global 30 Arc-Second Elevation map series. These maps are comprise a digital elevation model (DEM) that offers global coverage at 30-arc seconds, or approximately 1 kilometer pixel spacing. The United States Geological Survey (USGS) originally published the model after deriving content from eight raster and vector sources comprising Digital Terrain Elevation Data, Digital Chart of the World, USGS 1-Degree DEMs, Army Map Service Maps, International Map of the World, Peru Map, New Zealand DEM, and the Antarctic Digital Database. In addition to electronic archiving, Eastview Cartographic, Inc. has completed data conversion and verification services. Another version of this data is available directly from the US Geological Survey at https://lta.cr.usgs.gov/GTOPO30. See the documentation for details on the data.", + "dc_format_s": "Shapefile", + "dc_identifier_s": "http://hdl.handle.net/2451/38716", + "dc_language_s": "English", + "dc_publisher_s": "East View Cartographic, Inc.", + "dc_rights_s": "Restricted", + "dc_subject_sm": [ + "Digital elevation models", + "Topographic maps", + "Elevation" + ], + "dc_title_s": "Global 30 Arc-Second Elevation Index Map", + "dc_type_s": "Dataset", + "dct_isPartOf_sm": [ + "EVG Open Data Package" + ], + "dct_issued_s": "5/31/2016", + "dct_provenance_s": "NYU", + "dct_references_s": "{\"http://schema.org/url\":\"http://hdl.handle.net/2451/38716\",\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"https://maps-restricted.geo.nyu.edu/geoserver/sdr/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://maps-restricted.geo.nyu.edu/geoserver/sdr/wms\",\"http://schema.org/downloadUrl\":\"https://archive.nyu.edu/retrieve/83139/nyu_2451_38716.zip\",\"https://openindexmaps.org\":\"https://raw.githubusercontent.com/OpenIndexMaps/edu.nyu/master/nyu_2451_38716.geojson\"}", + "dct_source_sm": [ + + ], + "dct_spatial_sm": [ + + ], + "dct_temporal_sm": [ + "2016" + ], + "geoblacklight_version": "1.0", + "layer_geom_type_s": "Polygon", + "layer_id_s": "sdr:nyu_2451_38716", + "layer_modified_dt": "2018-01-16T15:11:26Z", + "layer_slug_s": "nyu-2451-38716", + "nyu_addl_dspace_s": "39714", + "nyu_addl_format_sm": [ + "Shapefile" + ], + "solr_geom": "ENVELOPE(-180, 180, 90, -90)", + "solr_year_i": 2016 +} diff --git a/spec/fixtures/solr_documents/nyu-parent-child.json b/spec/fixtures/solr_documents/nyu-parent-child.json new file mode 100644 index 00000000..053d441b --- /dev/null +++ b/spec/fixtures/solr_documents/nyu-parent-child.json @@ -0,0 +1,54 @@ +{ + "dc_creator_sm": [ + "GIS Lab, Newman Library, Baruch CUNY" + ], + "dc_description_s": "This point layer was created from Detailed Annual Sales Reports by Borough published by New York City Department of Finance. It represents locations of all properties sold in New York City. Several Python scripts were written to read-in each borough's sales data and combine them into sales for New York City as whole. NYC Geoclient API, developed by NYC DOITT, was used in a script to geocode locations of the properties sold. Locations geocoded by the script were matched by property address or by property block and lot information, if the address was missing or incomplete. For some properties lot information has changed from the year of the property sale (e.g. lot has been split and renumbered) and doesn’t exist in the city's current property and address database. Manual matching was performed for those records by examining archival tax maps. Due to the vertical nature of the real estate market in New York, multiple points / transactions may coincide in the same location. The coordinate reference system for this layer is NY State Plane Long Island in feet. The unique identifier of the dataset is Sale_id. Bbl_id is a unique identifier for the property and may repeat in the dataset if the property was sold more than once in the same year. The user should be cautious of sales with values less than $10 or equal to $0, which are marked as non-usable in this dataset. These sales are transfers of property and are not considered representative of true market conditions. This layer was created as a part of the NYC Geocoded Real Estate Sales data series.", + "dc_format_s": "Shapefile", + "dc_identifier_s": "http://hdl.handle.net/2451/34666", + "dc_language_s": "English", + "dc_publisher_s": "Newman Library (Bernard M. Baruch College)", + "dc_rights_s": "Public", + "dc_subject_sm": [ + "Real property", + "Property", + "Real estate business" + ], + "dc_title_s": "2003 New York City Real Estate Sales", + "dc_type_s": "Dataset", + "dct_isPartOf_sm": [ + "NYC Geocoded Real Estate Sales" + ], + "dct_issued_s": "5/31/2016", + "dct_provenance_s": "Baruch CUNY", + "dct_references_s": "{\"http://schema.org/url\":\"http://hdl.handle.net/2451/34666\",\"http://schema.org/downloadUrl\":\"https://archive.nyu.edu/retrieve/75037/nyu_2451_34666.zip\",\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"https://maps-public.geo.nyu.edu/geoserver/sdr/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://maps-public.geo.nyu.edu/geoserver/sdr/wms\",\"http://lccn.loc.gov/sh85035852\":\"https://archive.nyu.edu/retrieve/75023/nyu_2451_34666_doc.zip\"}", + "dct_source_sm": [ + "nyu-2451-34679" + ], + "dct_spatial_sm": [ + "New York City, New York, United States", + "Bronx County, New York, United States", + "Kings County, New York, United States", + "New York County, New York, United States", + "Queens County, New York, United States", + "Richmond County, New York, United States", + "Borough of Bronx, New York, United States", + "Borough of Brooklyn, New York, United States", + "Borough of Manhattan, New York, United States", + "Borough of Queens, New York, United States", + "Borough of Staten Island, New York, United States" + ], + "dct_temporal_sm": [ + "2003" + ], + "geoblacklight_version": "1.0", + "layer_geom_type_s": "Point", + "layer_id_s": "sdr:nyu_2451_34666", + "layer_modified_dt": "2016-06-13T15:21:26Z", + "layer_slug_s": "nyu-2451-34666", + "nyu_addl_dspace_s": "35608", + "solr_geom": "ENVELOPE(-74.2535114980638, -73.7006302537027, 40.9128742591852, 40.4985796357109)", + "solr_year_i": 2003, + "nyu_addl_format_sm": [ + "Shapefile" + ] +} diff --git a/spec/fixtures/solr_documents/nyu-restricted.json b/spec/fixtures/solr_documents/nyu-restricted.json new file mode 100644 index 00000000..aa7d1007 --- /dev/null +++ b/spec/fixtures/solr_documents/nyu-restricted.json @@ -0,0 +1,41 @@ +{ + "dc_description_s": "This polygon shapefile represents the 1964 County Boundaries for China. The layer includes population census data and was primarily based on the \"Historical Administrative Maps of the People's Republic of China,\" published by China Map Press, and some other yearly administrative maps. See the documentation for more information and a list of the layer variables.", + "dc_format_s": "Shapefile", + "dc_identifier_s": "http://hdl.handle.net/2451/34626", + "dc_language_s": "English", + "dc_publisher_s": "Beijing Hua tong ren shi chang xin xi you xian ze ren gong si", + "dc_relation_sm": [ + "http://sws.geonames.org/1814991/about/rdf" + ], + "dc_rights_s": "Restricted", + "dc_subject_sm": [ + "Boundaries", + "Demographic surveys", + "Population" + ], + "dc_title_s": "1964 County Boundaries of China with Population Census Data", + "dc_type_s": "Dataset", + "dct_isPartOf_sm": [ + "Historical China County Population Census Data" + ], + "dct_issued_s": "2005", + "dct_provenance_s": "NYU", + "dct_references_s": "{\"http://schema.org/url\":\"http://hdl.handle.net/2451/34626\",\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"https://maps-restricted.geo.nyu.edu/geoserver/sdr/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://maps-restricted.geo.nyu.edu/geoserver/sdr/wms\",\"http://schema.org/downloadUrl\":\"https://archive.nyu.edu/retrieve/74851/nyu_2451_34626.zip\",\"http://lccn.loc.gov/sh85035852\":\"https://archive.nyu.edu/retrieve/74896/nyu_2451_34626_doc.zip\"}", + "dct_spatial_sm": [ + "People's Republic of China, China" + ], + "dct_temporal_sm": [ + "1964" + ], + "geoblacklight_version": "1.0", + "layer_geom_type_s": "Polygon", + "layer_id_s": "sdr:nyu_2451_34626", + "layer_modified_dt": "2016-11-10T15:51:38Z", + "layer_slug_s": "nyu-2451-34626", + "nyu_addl_dspace_s": "35559", + "solr_geom": "ENVELOPE(73.557693, 134.773911, 53.56086, 10.175472)", + "solr_year_i": 1964, + "nyu_addl_format_sm": [ + "Shapefile" + ] +} diff --git a/spec/fixtures/solr_documents/parent.json b/spec/fixtures/solr_documents/parent.json new file mode 100644 index 00000000..adaed673 --- /dev/null +++ b/spec/fixtures/solr_documents/parent.json @@ -0,0 +1,25 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "ark:/88435/1r66j405w", + "layer_slug_s": "princeton-1r66j405w", + "uuid": "princeton-1r66j405w", + "dc_title_s": "Princeton, Mercer County, New Jersey", + "solr_geom": "ENVELOPE(-74.68, -74.63, 40.37, 40.33)", + "dct_provenance_s": "Princeton", + "dc_rights_s": "Public", + "dc_description_s": "Title taken from sheet 1 of 1927 map. Oriented with the north to the upper left. Includes location map and key. \"Feb. 1885.\"", + "dc_creator_sm": [ + "Sanborn Map Company" + ], + "dc_language_s": "English", + "dc_publisher_s": "New York : Sanborn Map & Publishing Co., Limited, 1885.", + "dc_subject_sm": [ + "Real property—New Jersey—Princeton—Maps", + "Princeton (N.J.)—Maps" + ], + "layer_modified_dt": "2018-02-23T23:53:45Z", + "layer_id_s": "ark:/88435/1r66j405w", + "dct_references_s": "{\"http://schema.org/url\":\"https://catalog.princeton.edu/catalog/4266648\",\"http://schema.org/thumbnailUrl\":\"https://figgy.princeton.edu/downloads/b6ba3091-fcf4-4d2d-9d6a-df7df5c8c588/file/0cb6b6c7-bce2-46a8-8c79-2864c7ec5459\",\"http://iiif.io/api/image\":\"https://libimages1.princeton.edu/loris/figgy_prod/5a%2F20%2F58%2F5a20585db50d44959fe5ae44821fd174%2Fintermediate_file.jp2/info.json\",\"http://iiif.io/api/presentation#manifest\":\"https://figgy.princeton.edu/concern/scanned_maps/9a193476-5f2e-4f82-95a5-6db472e39b7b/manifest\"}", + "layer_geom_type_s": "Image", + "call_number_s": "HMC04 (Princeton)" +} diff --git a/spec/fixtures/solr_documents/point_index_map.json b/spec/fixtures/solr_documents/point_index_map.json new file mode 100644 index 00000000..db030ed9 --- /dev/null +++ b/spec/fixtures/solr_documents/point_index_map.json @@ -0,0 +1,27 @@ +{ + "dc_description_s": "This is a description", + "solr_geom": "ENVELOPE(-74.783, -74.733, 40.20, 40.166)", + "dct_references_s": "{\"https://openindexmaps.org\": \"https://raw.githubusercontent.com/OpenIndexMaps/edu.cornell/master/ny-aerial-photos-1960s.geojson\"}", + "dc_rights_s": "Public", + "dct_provenance_s": "Cornell", + "dc_subject_sm": [ + "Aerial photographs", + "Index maps" + ], + "dc_format_s": "GeoJSON", + "layer_slug_s": "cornell-ny-aerial-photos-1960s", + "dc_creator_sm": [ + "Jane Doe" + ], + "dc_type_s": "Dataset", + "dc_identifier_s": "cornell-ny-aerial-photos-1960s", + "dc_publisher_s": "The Publisher", + "dct_spatial_sm": [ + "New York" + ], + "dc_title_s": "New York Aerial Photos (1960s)", + "dct_issued_s": "c.1960", + "layer_geom_type_s": "Point", + "dc_language_s": "English", + "geoblacklight_version": "1.0" + } diff --git a/spec/fixtures/solr_documents/princeton-restricted-wms.json b/spec/fixtures/solr_documents/princeton-restricted-wms.json new file mode 100644 index 00000000..2d42771b --- /dev/null +++ b/spec/fixtures/solr_documents/princeton-restricted-wms.json @@ -0,0 +1,35 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "ark:/88435/m613n013z", + "layer_slug_s": "princeton-m613n013z", + "uuid": "princeton-m613n013z", + "dc_title_s": "Louisiana Tracts 2002", + "solr_geom": "ENVELOPE(-94.043341, -88.816516, 33.019544, 28.926454)", + "dct_provenance_s": "Princeton", + "dc_rights_s": "Restricted", + "dc_description_s": "Louisiana Tracts represents the U.S. Census tracts and block numbering areas (BNA) of Louisiana.", + "dc_creator_sm": [ + "Geographic Data Technology, Inc. (GDT)", + "Environmental Systems Research Institute, Inc. (ESRI)" + ], + "dc_publisher_s": "Environmental Systems Research Institute, Inc. (ESRI)", + "dc_subject_sm": [ + "Boundaries", + "Society" + ], + "dct_spatial_sm": [ + "United States", + "Louisiana" + ], + "dct_temporal_sm": [ + "2002", + "2000", + "2001" + ], + "solr_year_i": 2002, + "layer_modified_dt": "2018-06-13T18:42:36Z", + "layer_id_s": "restricted-figgy:p-735d9ddb-d293-4454-b85b-e4d972f0708a", + "dct_references_s": "{\"http://www.opengis.net/cat/csw/csdgm\":\"https://figgy.princeton.edu/downloads/295c9e22-1163-461b-aff3-862a995c0600/file/b61ded13-7b29-4652-af80-0678fef09f9e\",\"http://schema.org/downloadUrl\":\"https://figgy.princeton.edu/downloads/735d9ddb-d293-4454-b85b-e4d972f0708a/file/021997fa-ba79-4445-989a-fb79f8b7382d\",\"http://schema.org/thumbnailUrl\":\"https://figgy.princeton.edu/downloads/735d9ddb-d293-4454-b85b-e4d972f0708a/file/97427a6b-6e78-47a7-9515-27a21e4162fa\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://geoserver.princeton.edu/geoserver/restricted-figgy/wms\",\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"https://geoserver.princeton.edu/geoserver/restricted-figgy/wfs\"}", + "layer_geom_type_s": "Polygon", + "dc_format_s": "Shapefile" +} diff --git a/spec/fixtures/solr_documents/princeton-unavailable.json b/spec/fixtures/solr_documents/princeton-unavailable.json new file mode 100644 index 00000000..47cc50d0 --- /dev/null +++ b/spec/fixtures/solr_documents/princeton-unavailable.json @@ -0,0 +1,34 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "ark:/99999/fk4bk1p41f", + "layer_slug_s": "princeton-fk4bk1p41f", + "uuid": "princeton-fk4bk1p41f", + "dc_title_s": "Outline Map of The British Cameroons", + "solr_geom": "ENVELOPE(8.55, 14.62, 12.5, 3.89)", + "dct_provenance_s": "Princeton", + "dc_rights_s": "Restricted", + "dc_description_s": "\"2296.5069a.1451,371.750.25.\"", + "dc_creator_sm": [ + "Great Britain. Colonial Office" + ], + "dc_language_s": "English", + "dc_publisher_s": "[Teddington, England] : [Directorate of Colonial Surveys], 1925.", + "dc_subject_sm": [ + "Administrative and political divisions—Nigeria—Maps", + "Great Britain—Colonies", + "Nigeria—Maps", + "Administrative and political divisions—Cameroon—Maps", + "Africa, West—Maps", + "Cameroon—Maps" + ], + "dct_spatial_sm": [ + "Nigeria", + "Africa, West", + "Cameroon" + ], + "solr_year_i": 1925, + "layer_modified_dt": "2017-10-05T13:44:03Z", + "layer_id_s": "ark:/99999/fk4bk1p41f", + "dct_references_s": "{\"http://schema.org/url\":\"https://hydra-dev.princeton.edu/concern/image_works/sw66345813\"}", + "layer_geom_type_s": "Image" +} \ No newline at end of file diff --git a/spec/fixtures/solr_documents/public_direct_download.json b/spec/fixtures/solr_documents/public_direct_download.json new file mode 100644 index 00000000..12fbe6ee --- /dev/null +++ b/spec/fixtures/solr_documents/public_direct_download.json @@ -0,0 +1,28 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "http://purl.stanford.edu/cz128vq0535", + "dc_title_s": "2005 Rural Poverty GIS Database: Uganda", + "dc_description_s": "This polygon shapefile contains 2005 poverty data for 855 rural subcounties in Uganda. These data are intended for researchers, students, policy makers and the general public for reference and mapping purposes, and may be used for basic applications such as viewing, querying, and map output production.", + "dc_rights_s": "Public", + "dct_provenance_s": "Stanford", + "dct_references_s": "{\"http://schema.org/url\":\"http://purl.stanford.edu/cz128vq0535\",\"http://schema.org/downloadUrl\":\"http://stacks.stanford.edu/file/druid:cz128vq0535/data.zip\",\"http://www.loc.gov/mods/v3\":\"http://purl.stanford.edu/cz128vq0535.mods\",\"http://www.isotc211.org/schemas/2005/gmd/\":\"http://opengeometadata.stanford.edu/metadata/edu.stanford.purl/druid:cz128vq0535/iso19139.xml\",\"http://www.w3.org/1999/xhtml\":\"http://opengeometadata.stanford.edu/metadata/edu.stanford.purl/druid:cz128vq0535/default.html\",\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"https://geowebservices.stanford.edu/geoserver/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://geowebservices.stanford.edu/geoserver/wms\"}", + "layer_id_s": "druid:cz128vq0535", + "layer_slug_s": "stanford-cz128vq0535", + "layer_geom_type_s": "Polygon", + "layer_modified_dt": "2015-04-16T23:02:57Z", + "dc_format_s": "Shapefile", + "dc_language_s": "English", + "dc_type_s": "Dataset", + "dc_publisher_s": "Uganda Bureau of Statistics", + "dc_creator_sm": "Uganda Bureau of Statistics", + "dc_subject_sm": [ + "Poverty", + "Statistics" + ], + "dct_issued_s": "2005", + "dct_temporal_sm": "2005", + "dct_spatial_sm": "Uganda", + "solr_geom": "ENVELOPE(29.572742, 35.000308, 4.234077, -1.478794)", + "solr_year_i": 2005, + "stanford_rights_metadata_s": "\n\n \n \n \n \n \n \n \n \n \n \n \n This item is in the public domain. There are no restrictions on use.\n \n \n \n \n This work is in the Public Domain, meaning that it is not subject to copyright.\n \n\n" +} \ No newline at end of file diff --git a/spec/fixtures/solr_documents/public_iiif_princeton.json b/spec/fixtures/solr_documents/public_iiif_princeton.json new file mode 100644 index 00000000..183d113e --- /dev/null +++ b/spec/fixtures/solr_documents/public_iiif_princeton.json @@ -0,0 +1,37 @@ +{ + "geoblacklight_version": "1.0", + "dc_description_s": "Partly colored. Relief shown pictorially. Shows administrative divisions. From Thomas Jefferys's The American atlas, or, A geographical description of the whole continent of America (London : Printed by R. Sayer and Bennett, 1778). Insets: A chart of the mouth of Hudson's River, from Sandy Hook to New York. A plan of the city of New York. Plan of Amboy, with its environs, from an actual survey.", + "dc_format_s": "Raster", + "dc_identifier_s": "http://arks.princeton.edu/ark:/88435/02870w62c", + "dc_language_s": "English", + "dc_publisher_s": "London, Robt. Sayer & John Bennett", + "dc_rights_s": "Public", + "dc_subject_sm": [ + "New York (State)‒Maps", + "New Jersey‒Maps" + ], + "dc_title_s": "The provinces of New York and New Jersey, with part of Pensilvania, and the Province of Quebec : drawn by Major Holland, Surveyor General, of the Northern District in America. Corrected and improved, from the original materials, by Governr. Pownall, Member of Parliament, 1776", + "dc_type_s": "Dataset", + "dc_creator_sm": [ + "Rogers, Henry Darwin", + "Pownall, Thomas" + ], + "dct_references_s": "{\"http://schema.org/url\":\"http://arks.princeton.edu/ark:/88435/02870w62c\",\"http://schema.org/thumbnailUrl\":\"https://libimages.princeton.edu/loris2/pudl0076%2Fmap_pownall%2F00000001.jp2/full/50,/0/default.jpg\",\"http://iiif.io/api/image\":\"https://libimages.princeton.edu/loris/pudl0076/map_pownall/00000001.jp2/info.json\"}", + "dct_spatial_sm": [ + "New York (State)", + "New Jersey", + "Pennsylvania" + ], + "dct_temporal_sm": [ + "1778" + ], + "dct_issued_s": "1778", + "dct_provenance_s": "Princeton", + "layer_slug_s": "princeton-02870w62c", + "layer_id_s": "02870w62c", + "layer_geom_type_s": "Image", + "layer_modified_dt": "2014-10-09T18:00:18Z", + "solr_geom": "ENVELOPE(-76.3394, -72.1916, 46.5798, 38.6693)", + "call_number_s": "B-South 7, drawer 2, 6857843", + "solr_year_i": 1778 +} \ No newline at end of file diff --git a/spec/fixtures/solr_documents/public_polygon_mit.json b/spec/fixtures/solr_documents/public_polygon_mit.json new file mode 100644 index 00000000..ef164062 --- /dev/null +++ b/spec/fixtures/solr_documents/public_polygon_mit.json @@ -0,0 +1,39 @@ +{ + "geoblacklight_version": "1.0", + "dc_format_s": "Shapefile", + "dc_identifier_s": "urn:arrowsmith.mit.edu:MIT.SDE_DATA.US_MA_E25ZCTA5DCT_2000", + "dc_language_s": "English", + "dc_publisher_s": "U.S. Census Bureau", + "dc_rights_s": "Public", + "dc_subject_sm": [ + "polygon", + "Zip", + "Code", + "Tabulation", + "Areas", + "demographics", + "population", + "census", + "boundaries", + "ZCTAs", + "zip", + "codes" + ], + "dc_title_s": "Massachusetts (ZCTA - 5 digit zip code tabulation area, 2000)", + "dc_type_s": "Dataset", + "dct_references_s": "{\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"http://arrowsmith.mit.edu:8080/geoserver/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"http://arrowsmith.mit.edu:8080/geoserver/wms\"}", + "dct_spatial_sm": [ + "Massachusetts MA USA" + ], + "dct_temporal_sm": [ + "2000" + ], + "dct_issued_s": "2000", + "dct_provenance_s": "MIT", + "layer_slug_s": "mit-us-ma-e25zcta5dct-2000", + "layer_id_s": "sde:SDE_DATA.US_MA_E25ZCTA5DCT_2000", + "layer_geom_type_s": "Polygon", + "layer_modified_dt": "2014-05-27T18:09:34Z", + "solr_geom": "ENVELOPE(-73.533237, -69.898565, 42.888068, 41.230345)", + "solr_year_i": 2000 +} \ No newline at end of file diff --git a/spec/fixtures/solr_documents/restricted-line.json b/spec/fixtures/solr_documents/restricted-line.json new file mode 100644 index 00000000..61e36d74 --- /dev/null +++ b/spec/fixtures/solr_documents/restricted-line.json @@ -0,0 +1,36 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "http://purl.stanford.edu/cg357zz0321", + "dc_title_s": "10 Meter Countours: Russian River Basin, California", + "dc_description_s": "This line shapefile contains contours that were derived from a mosiac of 10 meter digital elevation models for the extent of the Russian River basin, located in Sonoma and Mendocino Counties, California.This layer can be used for watershed analysis and planning in the Russian River region of California.", + "dc_rights_s": "Restricted", + "dct_provenance_s": "Stanford", + "dct_references_s": "{\"http://schema.org/url\":\"http://purl.stanford.edu/cg357zz0321\",\"http://schema.org/downloadUrl\":\"http://stacks.stanford.edu/file/druid:cg357zz0321/data.zip\",\"http://www.loc.gov/mods/v3\":\"http://purl.stanford.edu/cg357zz0321.mods\",\"http://www.isotc211.org/schemas/2005/gmd/\":\"https://raw.githubusercontent.com/OpenGeoMetadata/edu.stanford.purl/master/cg/357/zz/0321/iso19139.xml\",\"http://www.w3.org/1999/xhtml\":\"http://opengeometadata.stanford.edu/metadata/edu.stanford.purl/druid:cg357zz0321/default.html\",\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"http://geowebservices-restricted.stanford.edu/geoserver/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"http://geowebservices-restricted.stanford.edu/geoserver/wms\"}", + "layer_id_s": "druid:cg357zz0321", + "layer_slug_s": "stanford-cg357zz0321", + "layer_geom_type_s": "Line", + "layer_modified_dt": "2014-12-03T01:20:46Z", + "dc_format_s": "Shapefile", + "dc_language_s": "English", + "dc_type_s": "Dataset", + "dc_publisher_s": "Circuit Rider Productions", + "dc_creator_sm": [ + "United States. National Oceanic and Atmospheric Administration", + "Circuit Rider Productions" + ], + "dc_subject_sm": [ + "Contours (Cartography)", + "Elevation", + "Inland Waters" + ], + "dct_issued_s": "2003", + "dct_temporal_sm": [ + "2002" + ], + "dct_spatial_sm": [ + "Sonoma County (Calif.)", + "Mendocino County (Calif.)" + ], + "solr_geom": "ENVELOPE(-123.387366, -122.52958, 39.398403, 38.302994)", + "solr_year_i": 2002 +} diff --git a/spec/fixtures/solr_documents/scanned-map-restricted.json b/spec/fixtures/solr_documents/scanned-map-restricted.json new file mode 100644 index 00000000..93917b8b --- /dev/null +++ b/spec/fixtures/solr_documents/scanned-map-restricted.json @@ -0,0 +1,25 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "ark:/88435/kk91fn37z", + "layer_slug_s": "princeton-kk91fn37z", + "uuid": "princeton-kk91fn37z", + "dc_title_s": "Dublin", + "solr_geom": "ENVELOPE(-6.316666666666666, -6.033333333333333, 53.4, 53.266666666666666)", + "dct_provenance_s": "Princeton", + "dc_rights_s": "Restricted", + "dc_description_s": "Popular edition, revised 1962. Ireland. Ordnance Survey Office. Inset: map of Dublin city center. Postal districts are located. Index of national grid. In lower left margin: \"Revised in 1962.\" In lower right margin: \"6-63; 10,000.\".", + "dc_language_s": "eng", + "dc_publisher_s": "Dublin : [s.n.], 1963.", + "dc_subject_sm": [ + "Road maps", + "Cities and towns", + "Postal zones", + "Ireland—Maps" + ], + "layer_modified_dt": "2018-10-12T19:21:35Z", + "layer_id_s": "restricted-figgy:p-f0705bc6-2bda-4f61-8459-7651a93efdce", + "dct_references_s": "{\"http://schema.org/url\":\"https://catalog.princeton.edu/catalog/6865840\",\"http://schema.org/thumbnailUrl\":\"https://figgy.princeton.edu/downloads/f0705bc6-2bda-4f61-8459-7651a93efdce/file/6e0974f3-4bb8-40cb-81a7-baf82975617f\"}", + "layer_geom_type_s": "Image", + "dc_format_s": "TIFF", + "call_number_s": "G5784.D8.1963.I7" +} diff --git a/spec/fixtures/solr_documents/stanford-indexmap.json b/spec/fixtures/solr_documents/stanford-indexmap.json new file mode 100644 index 00000000..af158059 --- /dev/null +++ b/spec/fixtures/solr_documents/stanford-indexmap.json @@ -0,0 +1,38 @@ +{ + "geoblacklight_version": "1.0", + "dc_identifier_s": "http://purl.stanford.edu/ts545zc6250", + "dc_title_s": "Chōsen Gomanbunnoichi Zu, Maps Index", + "dc_description_s": "This polygon shapefile is an index to 1:50,000 scale maps of North Korea, titled 'Chosen 1:50,000 Chikeizu.' This map series was originally produced by the Japanese Land Survey Department of the General Staff Headquarters between 1916 and 1918. Stanford University Libraries holds a large collection of Japanese military and imperial maps, referred to as gaihōzu, or \"maps of outer lands.\" These maps were produced starting in the early Meiji (1868-1912) era and the end of World War II by the Land Survey Department of the General Staff Headquarters, the former Japanese Army. The Library is in the process of scanning and making available all of the maps in the collection. To create this index, footprints were generated using the fishnet tool, and metadata were supplied for the digitized paper maps by Stanford University Libraries. After the footprints were created, the shapefile was trimmed and labeled according to the sources.This layer provides an index map that can be used to locate individual scanned map sheets.", + "dc_rights_s": "Public", + "dct_provenance_s": "Stanford", + "dct_references_s": "{\"http://schema.org/url\":\"http://purl.stanford.edu/ts545zc6250\",\"http://schema.org/downloadUrl\":\"https://stacks.stanford.edu/file/druid:ts545zc6250/data.zip\",\"http://www.loc.gov/mods/v3\":\"http://purl.stanford.edu/ts545zc6250.mods\",\"http://www.isotc211.org/schemas/2005/gmd/\":\"https://raw.githubusercontent.com/OpenGeoMetadata/edu.stanford.purl/master/ts/545/zc/6250/iso19139.xml\",\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"https://geowebservices.stanford.edu/geoserver/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://geowebservices.stanford.edu/geoserver/wms\",\"https://openindexmaps.org\":\"https://stacks.stanford.edu/file/druid:ts545zc6250/index_map.json\"}", + "layer_id_s": "druid:ts545zc6250", + "layer_slug_s": "stanford-ts545zc6250", + "layer_geom_type_s": "Polygon", + "layer_modified_dt": "2018-01-26T00:28:03Z", + "dc_format_s": "Shapefile", + "dc_language_s": "English", + "dc_type_s": "Dataset", + "dc_publisher_s": "Stanford Digital Repository", + "dc_creator_sm": [ + "Stanford Geospatial Center" + ], + "dc_subject_sm": [ + "Military maps", + "Topographic maps", + "Grids (Cartography)", + "Index maps", + "Boundaries", + "Military" + ], + "dct_issued_s": "2016", + "dct_temporal_sm": [ + "1916-1918" + ], + "dct_spatial_sm": [ + "Korea (North)" + ], + "solr_geom": "ENVELOPE(124, 130, 42.666667, 38)", + "solr_year_i": 1916, + "stanford_rights_metadata_s": "\n\n \n \n \n \n \n \n \n \n \n \n \n This item is in the public domain. There are no restrictions on use.\n \n \n \n \n This work is in the Public Domain, meaning that it is not subject to copyright.\n \n\n" +} diff --git a/spec/fixtures/solr_documents/umn_metro_result1.json b/spec/fixtures/solr_documents/umn_metro_result1.json new file mode 100644 index 00000000..afb0d0d5 --- /dev/null +++ b/spec/fixtures/solr_documents/umn_metro_result1.json @@ -0,0 +1,41 @@ +{ + "dc_identifier_s": "02236876-9c21-42f6-9870-d2562da8e44f", + "dc_title_s": "2030 Regional Development Framework Planning Areas: Metro Twin Cities, Minnesota, 2011", + "dc_description_s": "The 2030 Regional Development Framework Planning Areas - 2011 updates the 2030 Regional Development Framework Planning Areas initially adopted on January 14, 2004 and ammended in 2006. This dataset reflect the agreed upon planning areas between a community and the Metropolitan Council and defined in the communities' 2030 Comprehensive Plan Update and is intended to supplement the 2030 Regional Development Framework - the planning guide for the 7-county Twin Cities metropolitan area of Minneapolis and Saint Paul, Minnesota. Planning area definitions and strategies for the planning areas are available in the 2030 Regional Development Framework document at http://www.metrocouncil.org/Planning/Planning/2030-Regional-Development-Framework.aspx (See Chapter 3). For questions about how decisions were made regarding individual communities' geographic planning areas, please contact the Metropolitan Council Regional Framework Development staff, Dan Marckel, 651-602-1548. See Currentness Reference and Lineage in Data Quality Section of this metadata for more information.", + "dc_rights_s": "Public", + "dc_format_s": "Shapefile", + "dc_language_sm": [ + "English" + ], + "dc_type_sm": [ + "Dataset", + "Service" + ], + "dc_publisher_sm": [ + "Metropolitan Council" + ], + "dc_creator_sm": [ + "Metropolitan Council" + ], + "dc_subject_sm": [ + "Planning and Cadastral" + ], + "dct_provenance_s": "Minnesota", + "dct_references_s": "{\"http://schema.org/url\":\"https://gisdata.mn.gov/dataset/02236876-9c21-42f6-9870-d2562da8e44f\",\"http://schema.org/downloadUrl\":\"ftp://ftp.gisdata.mn.gov/pub/gdrs/data/pub/us_mn_state_metc/plan_frmwrk2030dev_plan_ar2011/shp_plan_frmwrk2030dev_plan_ar2011.zip\",\"urn:x-esri:serviceType:ArcGIS#DynamicMapLayer\":\"https://gis2.metc.state.mn.us/arcgis/rest/services/MetroGIS/Planning/MapServer/3\",\"http://www.opengis.net/cat/csw/csdgm\":\"https://btaagdp.org/metadata/05a-01/pub/gdrs/data/pub/us_mn_state_metc/plan_frmwrk2030dev_plan_ar2011/metadata/metadata.xml\"}", + "dct_isPartOf_sm": [ + "Minnesota Geospatial Commons" + ], + "dct_issued_s": "2015-10-01T10:01:54.499443", + "dct_temporal_sm": [ + "2014" + ], + "dct_spatial_sm": [ + "Minnesota, United States" + ], + "layer_slug_s": "02236876-9c21-42f6-9870-d2562da8e44f", + "layer_geom_type_s": "Polygon", + "layer_modified_dt": "2018-08-02T17:42:57Z", + "solr_geom": "ENVELOPE(-94.012, -92.732, 45.415, 44.471)", + "solr_year_i": 2014, + "geoblacklight_version": "1.0" +} diff --git a/spec/fixtures/solr_documents/umn_metro_result2.json b/spec/fixtures/solr_documents/umn_metro_result2.json new file mode 100644 index 00000000..3a658538 --- /dev/null +++ b/spec/fixtures/solr_documents/umn_metro_result2.json @@ -0,0 +1,39 @@ +{ + "dc_identifier_s": "aaa94ac9-5ad4-4bc2-951d-5f2061170838", + "dc_title_s": "Census Tract Correspondence and Combined Tracts: Metro Twin Cities, Minnesota, 1990-2000", + "dc_description_s": "This dataset consists of a correspondence table and shape file of the combined 1990 and 2000 Census tracts. Note: Census tracts from 1990 and 2000 do not match in all areas. This dataset is an attempt to match them. Some combining and splitting of tracts was necessary. See the Lineage in Section 2 of the metadata for more information.", + "dc_rights_s": "Public", + "dc_format_s": "Shapefile", + "dc_language_sm": "English", + "dc_type_sm": [ + "Dataset", + "Service" + ], + "dc_publisher_sm": [ + "Metropolitan Council" + ], + "dc_creator_sm": [ + "Metropolitan Council" + ], + "dc_subject_sm": [ + "Society" + ], + "dct_provenance_s": "Minnesota", + "dct_references_s": "{\"http://schema.org/url\":\"https://gisdata.mn.gov/dataset/aaa94ac9-5ad4-4bc2-951d-5f2061170838\",\"http://schema.org/downloadUrl\":\"ftp://ftp.gisdata.mn.gov/pub/gdrs/data/pub/us_mn_state_metc/society_census_trt_comb1990_2000/fgdb_society_census_trt_comb1990_2000.zip\",\"http://schema.org/image\":\"https://btaagdp.org/thumbnails/05a-01/pub/gdrs/data/pub/us_mn_state_metc/society_census_trt_comb1990_2000/metadata/preview.jpg\",\"urn:x-esri:serviceType:ArcGIS#DynamicMapLayer\":\"https://gis2.metc.state.mn.us/arcgis/rest/services/MetroGIS/Census2000/MapServer/1\",\"http://www.opengis.net/cat/csw/csdgm\":\"https://btaagdp.org/metadata/05a-01/pub/gdrs/data/pub/us_mn_state_metc/society_census_trt_comb1990_2000/metadata/metadata.xml\"}", + "dct_isPartOf_sm": [ + "Minnesota Geospatial Commons" + ], + "dct_issued_s": "2015-09-03T10:01:53.825089", + "dct_temporal_sm": [ + "1990-2000" + ], + "dct_spatial_sm": [ + "Minnesota, United States" + ], + "layer_slug_s": "aaa94ac9-5ad4-4bc2-951d-5f2061170838", + "layer_geom_type_s": "Polygon", + "layer_modified_dt": "2018-08-02T17:45:31Z", + "solr_geom": "ENVELOPE(-94.012, -92.732, 45.415, 44.471)", + "solr_year_i": 1990, + "geoblacklight_version": "1.0" +} diff --git a/spec/fixtures/solr_documents/umn_state_result1.json b/spec/fixtures/solr_documents/umn_state_result1.json new file mode 100644 index 00000000..ad36c99e --- /dev/null +++ b/spec/fixtures/solr_documents/umn_state_result1.json @@ -0,0 +1,38 @@ +{ + "dc_identifier_s": "2eddde2f-c222-41ca-bd07-2fd74a21f4de", + "dc_title_s": "1:100k Digital Raster Graphic - Collars Removed: Minnesota", + "dc_description_s": "A digital raster graphic (DRG) is a scanned image of an U.S. Geological Survey (USGS) standard series topographic map, including all map collar information. The image inside the map neatline is georeferenced to the surface of the earth and fit to the Universal Transverse Mercator projection. The horizontal positional accuracy and datum of the DRG matches the accuracy and datum of the source map. The map is scanned at a minimum resolution of 250 dots per inch. DRG's are created by scanning published paper maps on high-resolution scanners. The raster image is georeferenced and fit to the UTM projection. Colors are standardized to remove scanner limitations and artifacts. The average data set size is about 6 megabytes in Tagged Image File Format (TIFF) with PackBits compression. DRG's can be easily combined with other digital cartographic products such as digital elevation models (DEM) and digital orthophoto quadrangles (DOQ). DRG's are stored as rectified TIFF files in geoTIFF format. GeoTIFF is a relatively new TIFF image storage format that incorporates georeferencing information in the header. This allows software, such as ArcView, ARC/INFO, or EPPL7 to reference the image without an additional header or world file. Within the Minnesota Department of Natural Resources Core GIS data set the DRG's have been processed to be in compliance with departmental data standards (UTM Extended Zone 15, NAD83 datum) and the map collar information has been removed to facilitate the display of the DRG's in a seamless fashion. These DRG's were clipped and transformed to UTM Zone 15 using EPPL7 Raster GIS.", + "dc_rights_s": "Public", + "dc_format_s": "ArcGRID", + "dc_language_sm": "English", + "dc_type_sm": [ + "Dataset" + ], + "dc_publisher_sm": [ + "Minnesota Department of Natural Resources (DNR)" + ], + "dc_creator_sm": [ + "U.S. Geological Survey (USGS) and Minnesota Department of Natural Resources (DNR)" + ], + "dc_subject_sm": [ + "Imagery and Base Maps" + ], + "dct_provenance_s": "Minnesota", + "dct_references_s": "{\"http://schema.org/url\":\"https://gisdata.mn.gov/dataset/2eddde2f-c222-41ca-bd07-2fd74a21f4de\",\"http://schema.org/downloadUrl\":\"ftp://gdrs.dnr.state.mn.us/gdrs/data/pub/us_mn_state_dnr/fgdb_base_usgs_scanned_topo_100k_drg.zip\",\"http://schema.org/image\":\"https://btaagdp.org/thumbnails/05a-01/pub/gdrs/data/pub/us_mn_state_dnr/base_usgs_scanned_topo_100k_drg/metadata/preview.jpg\",\"http://www.opengis.net/cat/csw/csdgm\":\"https://btaagdp.org/metadata/05a-01/pub/gdrs/data/pub/us_mn_state_dnr/base_usgs_scanned_topo_100k_drg/metadata/metadata.xml\"}", + "dct_isPartOf_sm": [ + "Minnesota Geospatial Commons" + ], + "dct_issued_s": "2015-11-18T11:02:15.705119", + "dct_temporal_sm": [ + "2015" + ], + "dct_spatial_sm": [ + "Minnesota, United States" + ], + "layer_slug_s": "2eddde2f-c222-41ca-bd07-2fd74a21f4de", + "layer_geom_type_s": "Raster", + "layer_modified_dt": "2018-08-02T17:47:58Z", + "solr_geom": "ENVELOPE(-97.612501, -88.842351, 49.464145, 42.906949)", + "solr_year_i": 2015, + "geoblacklight_version": "1.0" +} diff --git a/spec/fixtures/solr_documents/umn_state_result2.json b/spec/fixtures/solr_documents/umn_state_result2.json new file mode 100644 index 00000000..d5590761 --- /dev/null +++ b/spec/fixtures/solr_documents/umn_state_result2.json @@ -0,0 +1,38 @@ +{ + "dc_identifier_s": "e9c71086-6b25-4950-8e1c-84c2794e3382", + "dc_title_s": "1:250k Digital Raster Graphic - Collars Removed: Minnesota", + "dc_description_s": "A digital raster graphic (DRG) is a scanned image of an U.S. Geological Survey (USGS) standard series topographic map, including all map collar information. The image inside the map neatline is georeferenced to the surface of the earth and fit to the Universal Transverse Mercator projection. The horizontal positional accuracy and datum of the DRG matches the accuracy and datum of the source map. The map is scanned at a minimum resolution of 250 dots per inch. DRG's are created by scanning published paper maps on high-resolution scanners. The raster image is georeferenced and fit to the UTM projection. Colors are standardized to remove scanner limitations and artifacts. The average data set size is about 6 megabytes in Tagged Image File Format (TIFF) with PackBits compression. DRG's can be easily combined with other digital cartographic products such as digital elevation models (DEM) and digital orthophoto quadrangles (DOQ). DRG's are stored as rectified TIFF files in geoTIFF format. GeoTIFF is a relatively new TIFF image storage format that incorporates georeferencing information in the header. This allows software, such as ArcView, ARC/INFO, or EPPL7 to reference the image without an additional header or world file. Within the Minnesota Department of Natural Resources Core GIS data set the DRG's have been processed to be in compliance with departmental data standards (UTM Extended Zone 15, NAD83 datum) and the map collar information has been removed to facilitate the display of the DRG's in a seamless fashion. These DRG's were clipped and transformed to UTM Zone 15 using EPPL7 Raster GIS.", + "dc_rights_s": "Public", + "dc_format_s": "GeoTIFF", + "dc_language_sm": "English", + "dc_type_sm": [ + "Dataset" + ], + "dc_publisher_sm": [ + "Minnesota Department of Natural Resources (DNR)" + ], + "dc_creator_sm": [ + "U.S. Geological Survey and Minnesota DNR" + ], + "dc_subject_sm": [ + "Imagery and Base Maps" + ], + "dct_provenance_s": "Minnesota", + "dct_references_s": "{\"http://schema.org/url\":\"https://gisdata.mn.gov/dataset/e9c71086-6b25-4950-8e1c-84c2794e3382\",\"http://schema.org/downloadUrl\":\"ftp://ftp.gisdata.mn.gov/pub/gdrs/data/pub/us_mn_state_dnr/base_usgs_scanned_topo_250k_drg/fgdb_base_usgs_scanned_topo_250k_drg.zip\",\"http://schema.org/image\":\"https://btaagdp.org/thumbnails/05a-01/pub/gdrs/data/pub/us_mn_state_dnr/base_usgs_scanned_topo_250k_drg/metadata/preview.jpg\",\"http://www.opengis.net/cat/csw/csdgm\":\"https://btaagdp.org/metadata/05a-01/pub/gdrs/data/pub/us_mn_state_dnr/base_usgs_scanned_topo_250k_drg/metadata/metadata.xml\"}", + "dct_isPartOf_sm": [ + "Minnesota Geospatial Commons" + ], + "dct_issued_s": "2015-11-18T11:02:15.187331", + "dct_temporal_sm": [ + "1998" + ], + "dct_spatial_sm": [ + "Minnesota, United States" + ], + "layer_slug_s": "e9c71086-6b25-4950-8e1c-84c2794e3382", + "layer_geom_type_s": "Raster", + "layer_modified_dt": "2018-08-02T17:49:48Z", + "solr_geom": "ENVELOPE(-97.991522, -87.177541, 49.892443, 42.891013)", + "solr_year_i": 1998, + "geoblacklight_version": "1.0" +} diff --git a/spec/fixtures/solr_documents/unavailable.json b/spec/fixtures/solr_documents/unavailable.json new file mode 100644 index 00000000..5051252c --- /dev/null +++ b/spec/fixtures/solr_documents/unavailable.json @@ -0,0 +1,25 @@ +{ + "uuid": "urn:hul.harvard.edu:HARVARD.SDE.NTADCD106", + "dc_description_s": "The 106th Congressional District Boundaries data set contains geographic information for the political entities of the Congressional districts of the United States and U.S. Territories.", + "dc_format_s": "Shapefile", + "dc_identifier_s": "urn:hul.harvard.edu:HARVARD.SDE.NTADCD106", + "dc_language_s": "English", + "dc_publisher_s": "Bureau of Transportation Statistics", + "dc_rights_s": "Public", + "dc_title_s": "106th Congressional District Boundaries", + "dc_type_s": "Dataset", + "dct_references_s": "{\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"http://hgl.harvard.edu:8080/geoserver/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"http://hgl.harvard.edu:8080/geoserver/wms\",\"http://schema.org/UserDownloads\":\"http://hgl.harvard.edu:8080/HGL/RemoteServiceStarter\",\"http://tilecache.org\":\"http://hgl.harvard.edu/cgi-bin/tilecache/tilecache.cgi\",\"http://www.opengis.net/cat/csw/csdgm\":\"http://opengeometadata.stanford.edu/metadata/org.opengeoportal/sde:SDE.NTADCD106/fgdc.xml\",\"http://www.w3.org/1999/xhtml\":\"http://opengeometadata.stanford.edu/metadata/org.opengeoportal/sde:SDE.NTADCD106/fgdc.html\",\"http://schema.org/url\":\"http://opengeometadata.stanford.edu/metadata/org.opengeoportal/sde:SDE.NTADCD106/fgdc.html\"}", + "dct_temporal_sm": [ + "1999" + ], + "dct_provenance_s": "Harvard", + "georss_box_s": "-14.602623 -179.149436 71.331916 179.759346", + "georss_polygon_s": "71.331916 -179.149436 71.331916 179.759346 -14.602623 179.759346 -14.602623 -179.149436 71.331916 -179.149436", + "layer_slug_s": "harvard-ntadcd106", + "layer_id_s": "sde:SDE.NTADCD106", + "layer_geom_type_s": "Polygon", + "layer_modified_dt": "2014-12-16T00:47:27Z", + "solr_geom": "ENVELOPE(-179.149436, 179.759346, 71.331916, -14.602623)", + "solr_year_i": 1999, + "layer_availability_score_f": 0.7 +} diff --git a/spec/fixtures/solr_documents/uva_slug_colon.json b/spec/fixtures/solr_documents/uva_slug_colon.json new file mode 100644 index 00000000..f5ffe583 --- /dev/null +++ b/spec/fixtures/solr_documents/uva_slug_colon.json @@ -0,0 +1,25 @@ +{ + "dc_description_s": "Police stations for Norfolk, Virginia.", + "dc_format_s": "Shapefile", + "dc_identifier_s": "315fc8ee-3b57-4ebb-aa24-4300f1c42dc9-13", + "dc_language_s": "eng", + "dc_rights_s": "Public", + "dc_subject_sm": [ + "Location" + ], + "dc_title_s": "Norfolk 2005 Police Stations", + "dct_issued_s": "2008-10-17", + "dct_provenance_s": "UVa", + "dct_references_s": "{\"http://www.opengis.net/def/serviceType/ogc/wms\":\"http://gis.lib.virginia.edu/geoserver/wms\",\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"http://gis.lib.virginia.edu/geoserver/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wcs\":\"http://gis.lib.virginia.edu/geoserver/wcs\",\"http://schema.org/downloadUrl\":\"http://gis.lib.virginia.edu/geoserver/ows?service=WFS\\u0026typeName=Norfolk:police_point\\u0026request=GetFeature\\u0026outputFormat=shape-zip\",\"http://www.isotc211.org/schemas/2005/gmd/\":\"https://opengeometadata.github.io/edu.virginia/382/13/iso19139.xml\"}", + "dct_temporal_sm": [ + "2005-2005" + ], + "georss_polygon_s": "36.82 -76.346 36.971 -76.346 36.971 -76.176 36.82 -76.176 36.82 -76.346", + "layer_geom_type_s": "MultiPoint", + "layer_id_s": "Norfolk:police_point", + "layer_modified_dt": "2008-11-12T15:29:47Z", + "layer_slug_s": "uva-Norfolk:police_point", + "solr_geom": "ENVELOPE(-76.346, -76.176, 36.971, 36.82)", + "solr_year_i": 2005, + "geoblacklight_version": "1.0" +} diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb new file mode 100644 index 00000000..f0edbbc3 --- /dev/null +++ b/spec/rails_helper.rb @@ -0,0 +1,51 @@ +# This file is copied to spec/ when you run 'rails generate rspec:install' +ENV['RAILS_ENV'] ||= 'test' + + +require File.expand_path('../../config/environment', __FILE__) +require 'rspec/rails' +require 'capybara/rspec' +require 'capybara/rails' +require 'selenium-webdriver' + +Capybara.register_driver(:headless_chrome) do |app| + capabilities = Selenium::WebDriver::Remote::Capabilities.chrome( + chromeOptions: { args: %w(headless disable-gpu window-size=1280,1024) } + ) + + Capybara::Selenium::Driver.new(app, + browser: :chrome, + desired_capabilities: capabilities) +end + +Capybara.javascript_driver = :headless_chrome +Capybara.default_max_wait_time = 15 + + +ActiveRecord::Migration.maintain_test_schema! + +ActiveJob::Base.queue_adapter = :inline + +RSpec.configure do |config| + # Remove this line if you're not using ActiveRecord or ActiveRecord fixtures + config.fixture_path = "#{::Rails.root}/spec/fixtures" + + # If you're not using ActiveRecord, or you'd prefer not to run each of your + # examples within a transaction, remove the following line or assign false + # instead of true. + config.use_transactional_fixtures = true + + config.before(:suite) do + begin + DatabaseCleaner.start + ensure + DatabaseCleaner.clean + end + end + + config.include Capybara::DSL + config.include Devise::Test::ControllerHelpers, type: :controller + config.include Devise::Test::ControllerHelpers, type: :view + + config.infer_spec_type_from_file_location! +end diff --git a/spec/routing/user_routing_spec.rb b/spec/routing/user_routing_spec.rb index 95694e6c..2ebd0640 100644 --- a/spec/routing/user_routing_spec.rb +++ b/spec/routing/user_routing_spec.rb @@ -1,12 +1,12 @@ require 'rails_helper' + describe 'routes for users' do describe 'GET /users/auth/nyulibraries' do subject { get('/users/auth/nyulibraries') } it do should route_to({ controller: 'users/omniauth_callbacks', - action: 'passthru', - provider: 'nyulibraries' + action: 'passthru' }) end end @@ -16,8 +16,7 @@ it do should route_to({ controller: 'users/omniauth_callbacks', - action: 'passthru', - provider: 'nyulibraries' + action: 'passthru' }) end end