From e27fa46bd80d5366c759c9a2d7ba70c499a6591c Mon Sep 17 00:00:00 2001 From: "Michael B. Klein" Date: Tue, 8 Oct 2024 15:50:30 +0000 Subject: [PATCH] Remove EDTF.js shim in favor of EDTF hex package Fix incorrect EDTF date fixture Use released version of edtf package --- app/lib/edtf.ex | 89 -------- app/lib/edtf/humanize.ex | 35 --- app/lib/edtf/humanize/date.ex | 85 -------- app/lib/edtf/humanize/list.ex | 86 -------- app/lib/meadow/application.ex | 1 - app/mix.exs | 1 + app/mix.lock | 9 +- app/priv/nodejs/edtf/.docker-npm | 1 - app/priv/nodejs/edtf/index.js | 28 --- app/priv/nodejs/edtf/package-lock.json | 201 ------------------ app/priv/nodejs/edtf/package.json | 11 - app/priv/nodejs/edtf/portlog.js | 5 - app/test/edtf_test.exs | 166 --------------- app/test/fixtures/csv/export_fixture_31.exs | 2 +- app/test/fixtures/csv/import_fixture_31.exs | 2 +- app/test/fixtures/csv/sheets/bad_headers.csv | 2 +- app/test/fixtures/csv/sheets/bad_subjects.csv | 2 +- .../fixtures/csv/sheets/extra_query_rows.csv | 2 +- app/test/fixtures/csv/sheets/invalid.csv | 2 +- .../csv/sheets/invalid_coded_term.csv | 2 +- .../fixtures/csv/sheets/invalid_terms.csv | 2 +- .../fixtures/csv/sheets/missing_headers.csv | 2 +- .../fixtures/csv/sheets/missing_query_row.csv | 2 +- app/test/fixtures/csv/sheets/valid.csv | 2 +- app/test/fixtures/csv/work_fixtures.exs | 2 +- app/test/meadow/batches_test.exs | 6 +- .../data/csv/metadata_update_jobs_test.exs | 2 +- app/test/meadow/indexing/v2/encoding_test.exs | 2 +- 28 files changed, 23 insertions(+), 729 deletions(-) delete mode 100644 app/lib/edtf.ex delete mode 100644 app/lib/edtf/humanize.ex delete mode 100644 app/lib/edtf/humanize/date.ex delete mode 100644 app/lib/edtf/humanize/list.ex delete mode 100644 app/priv/nodejs/edtf/.docker-npm delete mode 100755 app/priv/nodejs/edtf/index.js delete mode 100644 app/priv/nodejs/edtf/package-lock.json delete mode 100644 app/priv/nodejs/edtf/package.json delete mode 100644 app/priv/nodejs/edtf/portlog.js delete mode 100644 app/test/edtf_test.exs diff --git a/app/lib/edtf.ex b/app/lib/edtf.ex deleted file mode 100644 index f423565cb..000000000 --- a/app/lib/edtf.ex +++ /dev/null @@ -1,89 +0,0 @@ -defmodule EDTF do - @moduledoc """ - EDTF Parsing GenServer - """ - - use GenServer - - alias Meadow.Config - alias Meadow.Utils.Lambda - - import Meadow.Utils.Atoms - - require Logger - - @timeout 1000 - - @doc """ - Parse an EDTF date string - - Example: - iex> parse("1999-06-10") - {:ok, %{level: 0, type: "Date", values: [1999, 5, 10]}} - - iex> parse("bad date!") - {:error, "Invalid EDTF input: bad date!"} - """ - def parse(value) do - case GenServer.call(__MODULE__, {:parse, value}) do - {:ok, result} -> {:ok, atomize(result)} - other -> other - end - end - - @doc """ - Validate an EDTF date string - - Example: - iex> validate("1999-06-10") - {:ok, "1999-06-10"} - - iex> validate("bad date!") - {:error, "Invalid EDTF input: bad date!"} - """ - def validate(value), - do: GenServer.call(__MODULE__, {:validate, value}) - - @doc """ - Humanize an EDTF date string - - Example: - iex> humanize("1999-06-10") - "June 10, 1999" - - iex> humanize("bad date!") - {:error, "Invalid EDTF input: bad date!"} - """ - def humanize(value) do - case value |> parse() |> EDTF.Humanize.humanize() do - :original -> value - other -> other - end - end - - def child_spec(opts) do - %{ - id: __MODULE__, - start: {__MODULE__, :start_link, [opts]} - } - end - - def start_link(args \\ []) do - GenServer.start_link(__MODULE__, args, name: __MODULE__) - end - - def init(_args) do - Logger.info("Starting EDTF Parser") - - case script_config() |> Lambda.init() do - {_, port} -> {:ok, port} - other -> other - end - end - - def handle_call({command, data}, _from, port) do - {:reply, script_config() |> Lambda.invoke(%{function: command, value: data}, @timeout), port} - end - - defp script_config, do: {:local, {Config.priv_path("nodejs/edtf/index.js"), "handler"}} -end diff --git a/app/lib/edtf/humanize.ex b/app/lib/edtf/humanize.ex deleted file mode 100644 index 32e0dda45..000000000 --- a/app/lib/edtf/humanize.ex +++ /dev/null @@ -1,35 +0,0 @@ -defmodule EDTF.Humanize do - @moduledoc """ - Convert EDTF dates to human readable form - """ - - alias EDTF.Humanize - - def humanize({:ok, value}), do: humanize(value) - def humanize({:error, _} = arg), do: arg - - def humanize(nil), do: "Unknown" - - def humanize([%{type: _} | [%{type: _}]] = values), - do: humanize(%{type: "Interval", values: values}) - - def humanize(%{type: "Interval", values: values}) do - case values do - [value | [%{type: "Infinity"}]] -> "from #{humanize(value)}" - [%{type: "Infinity"} | [value]] -> "before #{humanize(value)}" - _ -> values |> Enum.map_join(" to ", &humanize/1) - end - end - - def humanize(%{type: "Date"} = input), do: Humanize.Date.humanize(input) - def humanize(%{type: "Season"} = input), do: Humanize.Date.humanize(input) - def humanize(%{type: "Year"} = input), do: Humanize.Date.humanize(input) - def humanize(%{type: "Decade"} = input), do: Humanize.Date.humanize(input) - def humanize(%{type: "Century"} = input), do: Humanize.Date.humanize(input) - def humanize(%{type: "List"} = input), do: Humanize.List.humanize(input) - def humanize(%{type: "Set"} = input), do: Humanize.List.humanize(input) - def humanize(%{type: "Continuation"} = input), do: Humanize.List.humanize(input) - - def humanize(input) when is_map(input) and not is_map_key(input, :type), - do: input |> Map.put(:type, "Date") |> humanize() -end diff --git a/app/lib/edtf/humanize/date.ex b/app/lib/edtf/humanize/date.ex deleted file mode 100644 index 6442caf6e..000000000 --- a/app/lib/edtf/humanize/date.ex +++ /dev/null @@ -1,85 +0,0 @@ -defmodule EDTF.Humanize.Date do - @moduledoc """ - Humanize EDTF Date, Year, Decade, Century, and Season types - """ - - @bce_suffix " BCE" - @months ~w(January February March April May June July August September October November December) - @seasons %{ - 21 => "Spring", - 22 => "Summer", - 23 => "Autumn", - 24 => "Winter", - 25 => "Spring (Northern Hemisphere)", - 26 => "Summer (Northern Hemisphere)", - 27 => "Autumn (Northern Hemisphere)", - 28 => "Winter (Northern Hemisphere)", - 29 => "Spring (Southern Hemisphere)", - 30 => "Summer (Southern Hemisphere)", - 31 => "Autumn (Southern Hemisphere)", - 32 => "Winter (Southern Hemisphere)", - 33 => "Quarter 1", - 34 => "Quarter 2", - 35 => "Quarter 3", - 36 => "Quarter 4", - 37 => "Quadrimester 1", - 38 => "Quadrimester 2", - 39 => "Quadrimester 3", - 40 => "Semestral 1", - 41 => "Semestral 2" - } - - def humanize(%{type: "Date", approximate: _v, values: _values} = input) do - "circa " <> (input |> Map.delete(:approximate) |> humanize()) - end - - def humanize(%{type: "Date", unspecified: 15, values: values}) - when length(values) == 1, - do: "Unknown" - - def humanize(%{type: "Date", unspecified: unspecified, values: values} = input) - when unspecified in [8, 12, 14] and length(values) == 1 do - input - |> Map.delete(:unspecified) - |> humanize() - |> String.replace(~r/(\d+)/, "\\0s") - end - - def humanize(%{type: "Date", unspecified: _unspecified, values: _values}) do - :original - end - - def humanize(%{type: "Date", uncertain: _v, values: _values} = input) do - (input |> Map.delete(:uncertain) |> humanize()) <> "?" - end - - def humanize(%{type: "Date", values: values}) do - case values do - [year | [month | [day]]] -> "#{Enum.at(@months, month)} #{day}, #{set_era(year)}" - [year | [month]] -> "#{Enum.at(@months, month)} #{set_era(year)}" - [year] -> "#{set_era(year)}" - end - end - - def humanize(%{type: "Season", values: [year | [season]]}) when year < 0, - do: Map.get(@seasons, season) <> " #{-year}#{@bce_suffix}" - - def humanize(%{type: "Season", values: [year | [season]]}), - do: Map.get(@seasons, season) <> " #{year}" - - def humanize(%{type: "Year", values: [value]}), do: set_era(value) - - def humanize(%{type: "Decade", values: [value]}) when value < 0, - do: "#{-value * 10}s#{@bce_suffix}" - - def humanize(%{type: "Decade", values: [value]}), do: "#{value * 10}s" - - def humanize(%{type: "Century", values: [value]}) when value < 0, - do: "#{Inflex.ordinalize(-value)} Century#{@bce_suffix}" - - def humanize(%{type: "Century", values: [value]}), do: "#{Inflex.ordinalize(value)} Century" - - defp set_era(year) do - if year < 0, do: "#{-year}#{@bce_suffix}", else: to_string(year) - end -end diff --git a/app/lib/edtf/humanize/list.ex b/app/lib/edtf/humanize/list.ex deleted file mode 100644 index f7563b799..000000000 --- a/app/lib/edtf/humanize/list.ex +++ /dev/null @@ -1,86 +0,0 @@ -defmodule EDTF.Humanize.List do - @moduledoc """ - Humanize EDTF Set and List types - """ - - alias EDTF.Humanize - - @units [nil, "year", "month", "date"] - - def humanize(%{type: "Set"} = input) do - input - |> humanize_list_or_set_values() - |> make_list("or") - end - - def humanize(%{type: "List"} = input) do - input - |> humanize_list_or_set_values() - |> make_list("and") - end - - def humanize(%{type: "Continuation", subtype: "Set", position: :earlier, value: value}) do - with {human, time_unit} <- humanize_with_unit(value) do - "some #{time_unit} before #{human}" - end - end - - def humanize(%{type: "Continuation", subtype: "Set", position: :later, value: value}) do - with {human, time_unit} <- humanize_with_unit(value) do - "some #{time_unit} after #{human}" - end - end - - def humanize(%{type: "Continuation", subtype: "List", position: :earlier, value: value}) do - with {human, time_unit} <- humanize_with_unit(value) do - "all #{Inflex.pluralize(time_unit)} before #{human}" - end - end - - def humanize(%{type: "Continuation", subtype: "List", position: :later, value: value}) do - with {human, time_unit} <- humanize_with_unit(value) do - "all #{Inflex.pluralize(time_unit)} after #{human}" - end - end - - defp continuation(type, position, value), - do: %{type: "Continuation", subtype: type, position: position, value: value} - - defp humanize_list_or_set_values(%{type: type, values: values} = input) do - first_value = List.first(values) - last_value = List.last(values) - - case input do - %{earlier: true, later: true} -> - [continuation(type, :earlier, first_value) | values] ++ - [continuation(type, :later, last_value)] - - %{earlier: true} -> - [continuation(type, :earlier, first_value) | values] - - %{later: true} -> - values ++ [continuation(type, :later, last_value)] - - _ -> - values - end - |> Enum.map(&Humanize.humanize/1) - end - - defp humanize_with_unit(value) do - {Humanize.humanize(value), precision(value)} - end - - defp precision(value), do: Enum.at(@units, length(value.values)) - - defp make_list([item], _trailing_join), do: item - - defp make_list(items, trailing_join) when length(items) == 2 do - Enum.join(items, " #{trailing_join} ") - end - - defp make_list(items, trailing_join) do - [Enum.slice(items, 0..-2) |> Enum.join(", "), List.last(items)] - |> Enum.join(", #{trailing_join} ") - end -end diff --git a/app/lib/meadow/application.ex b/app/lib/meadow/application.ex index 1a1e02214..38f90f2e8 100644 --- a/app/lib/meadow/application.ex +++ b/app/lib/meadow/application.ex @@ -25,7 +25,6 @@ defmodule Meadow.Application do end base_children = [ - EDTF, {Phoenix.PubSub, [name: Meadow.PubSub, adapter: Phoenix.PubSub.PG2]}, Meadow.Telemetry, {Registry, keys: :unique, name: Meadow.TaskRegistry} diff --git a/app/mix.exs b/app/mix.exs index 90345102a..b836721f1 100644 --- a/app/mix.exs +++ b/app/mix.exs @@ -66,6 +66,7 @@ defmodule Meadow.MixProject do {:ecto_psql_extras, "~> 0.2"}, {:ecto_ranked, "~> 0.5"}, {:ecto_sql, "~> 3.0 and >= 3.4.4"}, + {:edtf, "~> 1.2"}, {:elastix, "~> 0.10.0"}, {:ets, "~> 0.9.0"}, {:ex_aws, "~> 2.5.0"}, diff --git a/app/mix.lock b/app/mix.lock index f2286ec07..25c271879 100644 --- a/app/mix.lock +++ b/app/mix.lock @@ -13,7 +13,7 @@ "broadway_sqs": {:hex, :broadway_sqs, "0.7.4", "ab89b298f9253adb8534f92095b56d4879e35fe2f5a0730256f7e824572c637f", [:mix], [{:broadway, "~> 1.0", [hex: :broadway, repo: "hexpm", optional: false]}, {:ex_aws_sqs, "~> 3.2.1 or ~> 3.3", [hex: :ex_aws_sqs, repo: "hexpm", optional: false]}, {:nimble_options, "~> 0.3.7 or ~> 0.4 or ~> 1.0", [hex: :nimble_options, repo: "hexpm", optional: false]}, {:saxy, "~> 1.1", [hex: :saxy, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4.3 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "7140085c4f7c4b27886b3a8f3d0942976f39f195fdbc2f652c5d7b157f93ae28"}, "bunt": {:hex, :bunt, "1.0.0", "081c2c665f086849e6d57900292b3a161727ab40431219529f13c4ddcf3e7a44", [:mix], [], "hexpm", "dc5f86aa08a5f6fa6b8096f0735c4e76d54ae5c9fa2c143e5a1fc7c1cd9bb6b5"}, "cachex": {:hex, :cachex, "4.0.1", "940aed7c89f13f30cfe6db0733cbd463cfd2a443b4456a35d88df7c9427b9347", [:mix], [{:eternal, "~> 1.2", [hex: :eternal, repo: "hexpm", optional: false]}, {:ex_hash_ring, "~> 6.0", [hex: :ex_hash_ring, repo: "hexpm", optional: false]}, {:jumper, "~> 1.0", [hex: :jumper, repo: "hexpm", optional: false]}, {:sleeplocks, "~> 1.1", [hex: :sleeplocks, repo: "hexpm", optional: false]}, {:unsafe, "~> 1.0", [hex: :unsafe, repo: "hexpm", optional: false]}], "hexpm", "e9caccc066c6cdc312077f4ae36b7b13a2e9acf826cc22537999331c781b2474"}, - "castore": {:hex, :castore, "1.0.8", "dedcf20ea746694647f883590b82d9e96014057aff1d44d03ec90f36a5c0dc6e", [:mix], [], "hexpm", "0b2b66d2ee742cb1d9cb8c8be3b43c3a70ee8651f37b75a8b982e036752983f1"}, + "castore": {:hex, :castore, "1.0.9", "5cc77474afadf02c7c017823f460a17daa7908e991b0cc917febc90e466a375c", [:mix], [], "hexpm", "5ea956504f1ba6f2b4eb707061d8e17870de2bee95fb59d512872c2ef06925e7"}, "certifi": {:hex, :certifi, "2.12.0", "2d1cca2ec95f59643862af91f001478c9863c2ac9cb6e2f89780bfd8de987329", [:rebar3], [], "hexpm", "ee68d85df22e554040cdb4be100f33873ac6051387baf6a8f6ce82272340ff1c"}, "configparser_ex": {:hex, :configparser_ex, "4.0.0", "17e2b831cfa33a08c56effc610339b2986f0d82a9caa0ed18880a07658292ab6", [:mix], [], "hexpm", "02e6d1a559361a063cba7b75bc3eb2d6ad7e62730c551cc4703541fd11e65e5b"}, "cowboy": {:hex, :cowboy, "2.12.0", "f276d521a1ff88b2b9b4c54d0e753da6c66dd7be6c9fca3d9418b561828a3731", [:make, :rebar3], [{:cowlib, "2.13.0", [hex: :cowlib, repo: "hexpm", optional: false]}, {:ranch, "1.8.0", [hex: :ranch, repo: "hexpm", optional: false]}], "hexpm", "8a7abe6d183372ceb21caa2709bec928ab2b72e18a3911aa1771639bef82651e"}, @@ -21,7 +21,7 @@ "cowlib": {:hex, :cowlib, "2.13.0", "db8f7505d8332d98ef50a3ef34b34c1afddec7506e4ee4dd4a3a266285d282ca", [:make, :rebar3], [], "hexpm", "e1e1284dc3fc030a64b1ad0d8382ae7e99da46c3246b815318a4b848873800a4"}, "credo": {:hex, :credo, "1.7.8", "9722ba1681e973025908d542ec3d95db5f9c549251ba5b028e251ad8c24ab8c5", [:mix], [{:bunt, "~> 0.2.1 or ~> 1.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:file_system, "~> 0.2 or ~> 1.0", [hex: :file_system, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "cb9e87cc64f152f3ed1c6e325e7b894dea8f5ef2e41123bd864e3cd5ceb44968"}, "crontab": {:hex, :crontab, "1.1.13", "3bad04f050b9f7f1c237809e42223999c150656a6b2afbbfef597d56df2144c5", [:mix], [{:ecto, "~> 1.0 or ~> 2.0 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: true]}], "hexpm", "d67441bec989640e3afb94e123f45a2bc42d76e02988c9613885dc3d01cf7085"}, - "dataloader": {:hex, :dataloader, "1.0.11", "49bbfc7dd8a1990423c51000b869b1fecaab9e3ccd6b29eab51616ae8ad0a2f5", [:mix], [{:ecto, ">= 3.4.3 and < 4.0.0", [hex: :ecto, repo: "hexpm", optional: true]}, {:telemetry, "~> 1.0 or ~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ba0b0ec532ec68e9d033d03553561d693129bd7cbd5c649dc7903f07ffba08fe"}, + "dataloader": {:hex, :dataloader, "1.0.11", "49bbfc7dd8a1990423c51000b869b1fecaab9e3ccd6b29eab51616ae8ad0a2f5", [:mix], [{:ecto, ">= 3.4.3 and < 4.0.0", [hex: :ecto, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ba0b0ec532ec68e9d033d03553561d693129bd7cbd5c649dc7903f07ffba08fe"}, "db_connection": {:hex, :db_connection, "2.7.0", "b99faa9291bb09892c7da373bb82cba59aefa9b36300f6145c5f201c7adf48ec", [:mix], [{:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "dcf08f31b2701f857dfc787fbad78223d61a32204f217f15e881dd93e4bdd3ff"}, "decimal": {:hex, :decimal, "2.1.1", "5611dca5d4b2c3dd497dec8f68751f1f1a54755e8ed2a966c2633cf885973ad6", [:mix], [], "hexpm", "53cfe5f497ed0e7771ae1a475575603d77425099ba5faef9394932b35020ffcc"}, "ecto": {:hex, :ecto, "3.12.4", "267c94d9f2969e6acc4dd5e3e3af5b05cdae89a4d549925f3008b2b7eb0b93c3", [:mix], [{:decimal, "~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ef04e4101688a67d061e1b10d7bc1fbf00d1d13c17eef08b71d070ff9188f747"}, @@ -29,6 +29,7 @@ "ecto_psql_extras": {:hex, :ecto_psql_extras, "0.8.2", "79350a53246ac5ec27326d208496aebceb77fa82a91744f66a9154560f0759d3", [:mix], [{:ecto_sql, "~> 3.7", [hex: :ecto_sql, repo: "hexpm", optional: false]}, {:postgrex, "> 0.16.0 and < 0.20.0", [hex: :postgrex, repo: "hexpm", optional: false]}, {:table_rex, "~> 3.1.1 or ~> 4.0.0", [hex: :table_rex, repo: "hexpm", optional: false]}], "hexpm", "6149c1c4a5ba6602a76cb09ee7a269eb60dab9694a1dbbb797f032555212de75"}, "ecto_ranked": {:hex, :ecto_ranked, "0.6.0", "c3bc7925610244d3f0be01befb02991670c00f32890174392f2701f760124b26", [:mix], [{:ecto_sql, "~> 3.0", [hex: :ecto_sql, repo: "hexpm", optional: false]}], "hexpm", "735dd6e02096445f4084e0f76e1d0e100cdcf5386d40d6d4cb7e54f2d437fb27"}, "ecto_sql": {:hex, :ecto_sql, "3.12.1", "c0d0d60e85d9ff4631f12bafa454bc392ce8b9ec83531a412c12a0d415a3a4d0", [:mix], [{:db_connection, "~> 2.4.1 or ~> 2.5", [hex: :db_connection, repo: "hexpm", optional: false]}, {:ecto, "~> 3.12", [hex: :ecto, repo: "hexpm", optional: false]}, {:myxql, "~> 0.7", [hex: :myxql, repo: "hexpm", optional: true]}, {:postgrex, "~> 0.19 or ~> 1.0", [hex: :postgrex, repo: "hexpm", optional: true]}, {:tds, "~> 2.1.1 or ~> 2.2", [hex: :tds, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4.0 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "aff5b958a899762c5f09028c847569f7dfb9cc9d63bdb8133bff8a5546de6bf5"}, + "edtf": {:hex, :edtf, "1.2.0", "debb74f77b58b3d922e31b3b574a77a147622c09697636115a6f977eb7301e56", [:mix], [{:inflex, "~> 2.1", [hex: :inflex, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.4", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "745e3829b1fb24b78eaf51b5a1106a32eb5a36703475cdc6627c908e766718e8"}, "elastix": {:hex, :elastix, "0.10.0", "7567da885677ba9deffc20063db5f3ca8cd10f23cff1ab3ed9c52b7063b7e340", [:mix], [{:httpoison, "~> 1.4", [hex: :httpoison, repo: "hexpm", optional: false]}, {:poison, "~> 3.0 or ~> 4.0", [hex: :poison, repo: "hexpm", optional: true]}, {:retry, "~> 0.8", [hex: :retry, repo: "hexpm", optional: false]}], "hexpm", "5fb342ce068b20f7845f5dd198c2dc80d967deafaa940a6e51b846db82696d1d"}, "eternal": {:hex, :eternal, "1.2.2", "d1641c86368de99375b98d183042dd6c2b234262b8d08dfd72b9eeaafc2a1abd", [:mix], [], "hexpm", "2c9fe32b9c3726703ba5e1d43a1d255a4f3f2d8f8f9bc19f094c7cb1a7a9e782"}, "ets": {:hex, :ets, "0.9.0", "79c6a6c205436780486f72d84230c6cba2f8a9920456750ddd1e47389107d5fd", [:mix], [], "hexpm", "2861fdfb04bcaeff370f1a5904eec864f0a56dcfebe5921ea9aadf2a481c822b"}, @@ -42,12 +43,12 @@ "ex_hash_ring": {:hex, :ex_hash_ring, "6.0.4", "bef9d2d796afbbe25ab5b5a7ed746e06b99c76604f558113c273466d52fa6d6b", [:mix], [], "hexpm", "89adabf31f7d3dfaa36802ce598ce918e9b5b33bae8909ac1a4d052e1e567d18"}, "excoveralls": {:hex, :excoveralls, "0.18.3", "bca47a24d69a3179951f51f1db6d3ed63bca9017f476fe520eb78602d45f7756", [:mix], [{:castore, "~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "746f404fcd09d5029f1b211739afb8fb8575d775b21f6a3908e7ce3e640724c6"}, "exldap": {:hex, :exldap, "0.6.3", "98e8c4ad5e1773b921ba0a5f27c96a6d814a7dff1581e5648eaf7c4f594729e7", [:mix], [], "hexpm", "412fafabe43cfde52d85957776f54edad9258d88b261dab76e0458a43c618a2c"}, - "expo": {:hex, :expo, "1.0.0", "647639267e088717232f4d4451526e7a9de31a3402af7fcbda09b27e9a10395a", [:mix], [], "hexpm", "18d2093d344d97678e8a331ca0391e85d29816f9664a25653fd7e6166827827c"}, + "expo": {:hex, :expo, "1.1.0", "f7b9ed7fb5745ebe1eeedf3d6f29226c5dd52897ac67c0f8af62a07e661e5c75", [:mix], [], "hexpm", "fbadf93f4700fb44c331362177bdca9eeb8097e8b0ef525c9cc501cb9917c960"}, "faker": {:hex, :faker, "0.18.0", "943e479319a22ea4e8e39e8e076b81c02827d9302f3d32726c5bf82f430e6e14", [:mix], [], "hexpm", "bfbdd83958d78e2788e99ec9317c4816e651ad05e24cfd1196ce5db5b3e81797"}, "file_system": {:hex, :file_system, "1.0.1", "79e8ceaddb0416f8b8cd02a0127bdbababe7bf4a23d2a395b983c1f8b3f73edd", [:mix], [], "hexpm", "4414d1f38863ddf9120720cd976fce5bdde8e91d8283353f0e31850fa89feb9e"}, "gen_stage": {:hex, :gen_stage, "1.2.1", "19d8b5e9a5996d813b8245338a28246307fd8b9c99d1237de199d21efc4c76a1", [:mix], [], "hexpm", "83e8be657fa05b992ffa6ac1e3af6d57aa50aace8f691fcf696ff02f8335b001"}, "gettext": {:hex, :gettext, "0.26.1", "38e14ea5dcf962d1fc9f361b63ea07c0ce715a8ef1f9e82d3dfb8e67e0416715", [:mix], [{:expo, "~> 0.5.1 or ~> 1.0", [hex: :expo, repo: "hexpm", optional: false]}], "hexpm", "01ce56f188b9dc28780a52783d6529ad2bc7124f9744e571e1ee4ea88bf08734"}, - "hackney": {:hex, :hackney, "1.20.1", "8d97aec62ddddd757d128bfd1df6c5861093419f8f7a4223823537bad5d064e2", [:rebar3], [{:certifi, "~>2.12.0", [hex: :certifi, repo: "hexpm", optional: false]}, {:idna, "~>6.1.0", [hex: :idna, repo: "hexpm", optional: false]}, {:metrics, "~>1.0.0", [hex: :metrics, repo: "hexpm", optional: false]}, {:mimerl, "~>1.1", [hex: :mimerl, repo: "hexpm", optional: false]}, {:parse_trans, "3.4.1", [hex: :parse_trans, repo: "hexpm", optional: false]}, {:ssl_verify_fun, "~>1.1.0", [hex: :ssl_verify_fun, repo: "hexpm", optional: false]}, {:unicode_util_compat, "~>0.7.0", [hex: :unicode_util_compat, repo: "hexpm", optional: false]}], "hexpm", "fe9094e5f1a2a2c0a7d10918fee36bfec0ec2a979994cff8cfe8058cd9af38e3"}, + "hackney": {:hex, :hackney, "1.20.1", "8d97aec62ddddd757d128bfd1df6c5861093419f8f7a4223823537bad5d064e2", [:rebar3], [{:certifi, "~> 2.12.0", [hex: :certifi, repo: "hexpm", optional: false]}, {:idna, "~> 6.1.0", [hex: :idna, repo: "hexpm", optional: false]}, {:metrics, "~> 1.0.0", [hex: :metrics, repo: "hexpm", optional: false]}, {:mimerl, "~> 1.1", [hex: :mimerl, repo: "hexpm", optional: false]}, {:parse_trans, "3.4.1", [hex: :parse_trans, repo: "hexpm", optional: false]}, {:ssl_verify_fun, "~> 1.1.0", [hex: :ssl_verify_fun, repo: "hexpm", optional: false]}, {:unicode_util_compat, "~> 0.7.0", [hex: :unicode_util_compat, repo: "hexpm", optional: false]}], "hexpm", "fe9094e5f1a2a2c0a7d10918fee36bfec0ec2a979994cff8cfe8058cd9af38e3"}, "honeybadger": {:hex, :honeybadger, "0.22.0", "c1476432a5fc0ae6de833f4549065ec7eaf1b9e5fb082d7a58cd312f9d1f9cb1", [:mix], [{:ecto, ">= 2.0.0", [hex: :ecto, repo: "hexpm", optional: true]}, {:hackney, "~> 1.1", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}, {:phoenix, ">= 1.0.0 and < 2.0.0", [hex: :phoenix, repo: "hexpm", optional: true]}, {:plug, ">= 1.0.0 and < 2.0.0", [hex: :plug, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "230ffbd1dc1ad4d38b5dd517e50983e2e5e9b50dc21fc4d3bdbbb6acf90cef50"}, "httpoison": {:hex, :httpoison, "1.8.2", "9eb9c63ae289296a544842ef816a85d881d4a31f518a0fec089aaa744beae290", [:mix], [{:hackney, "~> 1.17", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "2bb350d26972e30c96e2ca74a1aaf8293d61d0742ff17f01e0279fef11599921"}, "httpoison_retry": {:hex, :httpoison_retry, "1.1.0", "2f2cf49ecac6d1a73d0730b76673890dfd3df35123e83d521e0af7dff6db0cfb", [:mix], [{:httpoison, "~> 0.13 or ~> 1.0", [hex: :httpoison, repo: "hexpm", optional: false]}], "hexpm", "df8f33336e2aeb25efd0d8948b51fa2551a2944dc12c8fb739e75a7796923a78"}, diff --git a/app/priv/nodejs/edtf/.docker-npm b/app/priv/nodejs/edtf/.docker-npm deleted file mode 100644 index e58f02dce..000000000 --- a/app/priv/nodejs/edtf/.docker-npm +++ /dev/null @@ -1 +0,0 @@ -Build on Docker Release diff --git a/app/priv/nodejs/edtf/index.js b/app/priv/nodejs/edtf/index.js deleted file mode 100755 index 54d72f0bb..000000000 --- a/app/priv/nodejs/edtf/index.js +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env node - -const edtf = require("edtf"); -edtf.defaults.level = 3; - -const functions = { - validate: async (value) => await edtf(value).edtf, - parse: async (value) => { - const replacer = (_key, value) => value === Infinity ? {"type": "Infinity"} : value; - let result = await edtf.parse(value); - return JSON.parse(JSON.stringify(result, replacer)) - } -}; - -const handler = (event, _context, _callback) => { - return new Promise((resolve, reject) => { - let func = functions[event.function]; - if (typeof func == "function") { - func(event.value) - .catch(_err => reject(`Invalid EDTF input: ${event.value}`)) - .then(data => resolve(data)); - } else { - reject(`Unknown function: ${event.function}`); - } - }); -} - -module.exports = {handler}; \ No newline at end of file diff --git a/app/priv/nodejs/edtf/package-lock.json b/app/priv/nodejs/edtf/package-lock.json deleted file mode 100644 index a7fae48a2..000000000 --- a/app/priv/nodejs/edtf/package-lock.json +++ /dev/null @@ -1,201 +0,0 @@ -{ - "name": "edtf", - "version": "0.1.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "edtf", - "version": "0.1.0", - "license": "Apache-2.0", - "dependencies": { - "edtf": "^3.1.0" - } - }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "node_modules/discontinuous-range": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/discontinuous-range/-/discontinuous-range-1.0.0.tgz", - "integrity": "sha1-44Mx8IRLukm5qctxx3FYWqsbxlo=" - }, - "node_modules/drange": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz", - "integrity": "sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==", - "optional": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/edtf": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/edtf/-/edtf-3.1.0.tgz", - "integrity": "sha512-m9pPUyBb/REAYraG/+l+D7HRHpCwK+8jaZyBrO0BP0elRSRxt0O+4ttbpY5SyctkLL/hF/AMEaco36m74ZxQIw==", - "dependencies": { - "nearley": "^2.19.7" - }, - "optionalDependencies": { - "randexp": "^0.5.3" - } - }, - "node_modules/moo": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.1.tgz", - "integrity": "sha512-I1mnb5xn4fO80BH9BLcF0yLypy2UKl+Cb01Fu0hJRkJjlCRtxZMWkTdAtDd5ZqCOxtCkhmRwyI57vWT+1iZ67w==" - }, - "node_modules/nearley": { - "version": "2.20.1", - "resolved": "https://registry.npmjs.org/nearley/-/nearley-2.20.1.tgz", - "integrity": "sha512-+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ==", - "dependencies": { - "commander": "^2.19.0", - "moo": "^0.5.0", - "railroad-diagrams": "^1.0.0", - "randexp": "0.4.6" - }, - "bin": { - "nearley-railroad": "bin/nearley-railroad.js", - "nearley-test": "bin/nearley-test.js", - "nearley-unparse": "bin/nearley-unparse.js", - "nearleyc": "bin/nearleyc.js" - }, - "funding": { - "type": "individual", - "url": "https://nearley.js.org/#give-to-nearley" - } - }, - "node_modules/nearley/node_modules/randexp": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.4.6.tgz", - "integrity": "sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==", - "dependencies": { - "discontinuous-range": "1.0.0", - "ret": "~0.1.10" - }, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/railroad-diagrams": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz", - "integrity": "sha1-635iZ1SN3t+4mcG5Dlc3RVnN234=" - }, - "node_modules/randexp": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.5.3.tgz", - "integrity": "sha512-U+5l2KrcMNOUPYvazA3h5ekF80FHTUG+87SEAmHZmolh1M+i/WyTCxVzmi+tidIa1tM4BSe8g2Y/D3loWDjj+w==", - "optional": true, - "dependencies": { - "drange": "^1.0.2", - "ret": "^0.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/randexp/node_modules/ret": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz", - "integrity": "sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==", - "optional": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "engines": { - "node": ">=0.12" - } - } - }, - "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" - }, - "discontinuous-range": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/discontinuous-range/-/discontinuous-range-1.0.0.tgz", - "integrity": "sha1-44Mx8IRLukm5qctxx3FYWqsbxlo=" - }, - "drange": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz", - "integrity": "sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==", - "optional": true - }, - "edtf": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/edtf/-/edtf-3.1.0.tgz", - "integrity": "sha512-m9pPUyBb/REAYraG/+l+D7HRHpCwK+8jaZyBrO0BP0elRSRxt0O+4ttbpY5SyctkLL/hF/AMEaco36m74ZxQIw==", - "requires": { - "nearley": "^2.19.7", - "randexp": "^0.5.3" - } - }, - "moo": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.1.tgz", - "integrity": "sha512-I1mnb5xn4fO80BH9BLcF0yLypy2UKl+Cb01Fu0hJRkJjlCRtxZMWkTdAtDd5ZqCOxtCkhmRwyI57vWT+1iZ67w==" - }, - "nearley": { - "version": "2.20.1", - "resolved": "https://registry.npmjs.org/nearley/-/nearley-2.20.1.tgz", - "integrity": "sha512-+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ==", - "requires": { - "commander": "^2.19.0", - "moo": "^0.5.0", - "railroad-diagrams": "^1.0.0", - "randexp": "0.4.6" - }, - "dependencies": { - "randexp": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.4.6.tgz", - "integrity": "sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==", - "requires": { - "discontinuous-range": "1.0.0", - "ret": "~0.1.10" - } - } - } - }, - "railroad-diagrams": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz", - "integrity": "sha1-635iZ1SN3t+4mcG5Dlc3RVnN234=" - }, - "randexp": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.5.3.tgz", - "integrity": "sha512-U+5l2KrcMNOUPYvazA3h5ekF80FHTUG+87SEAmHZmolh1M+i/WyTCxVzmi+tidIa1tM4BSe8g2Y/D3loWDjj+w==", - "optional": true, - "requires": { - "drange": "^1.0.2", - "ret": "^0.2.0" - }, - "dependencies": { - "ret": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz", - "integrity": "sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==", - "optional": true - } - } - }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" - } - } -} diff --git a/app/priv/nodejs/edtf/package.json b/app/priv/nodejs/edtf/package.json deleted file mode 100644 index aa9833a02..000000000 --- a/app/priv/nodejs/edtf/package.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "edtf", - "version": "0.1.0", - "description": "Date parsing and validation using EDTF.js", - "main": "cli.js", - "author": "bmquinn", - "license": "Apache-2.0", - "dependencies": { - "edtf": "^3.1.0" - } -} diff --git a/app/priv/nodejs/edtf/portlog.js b/app/priv/nodejs/edtf/portlog.js deleted file mode 100644 index 8f2cf6bbc..000000000 --- a/app/priv/nodejs/edtf/portlog.js +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = (level, message) => { - const output = [`[${level}]`, message].filter(e => e != null).join(" ") + "\n"; - process.stdout.write(output); -} - diff --git a/app/test/edtf_test.exs b/app/test/edtf_test.exs deleted file mode 100644 index 8931d9582..000000000 --- a/app/test/edtf_test.exs +++ /dev/null @@ -1,166 +0,0 @@ -defmodule EDTFTest do - use ExUnit.Case - - import ExUnit.DocTest - - doctest EDTF, import: true - - test "validate/1" do - assert EDTF.validate("2020") == {:ok, "2020"} - assert EDTF.validate("bad date!") == {:error, "Invalid EDTF input: bad date!"} - end - - test "parse/1" do - assert EDTF.parse("2020") == {:ok, %{level: 0, type: "Date", values: [2020]}} - assert EDTF.parse("bad date!") == {:error, "Invalid EDTF input: bad date!"} - end - - describe "humanize/1" do - test "invalid date" do - assert EDTF.humanize("bad date!") == {:error, "Invalid EDTF input: bad date!"} - end - - test "simple date" do - assert EDTF.humanize("2020-06-10") == "June 10, 2020" - assert EDTF.humanize("2020-06") == "June 2020" - assert EDTF.humanize("2020") == "2020" - assert EDTF.humanize("-2020-06") == "June 2020 BCE" - end - - test "approximate date" do - assert EDTF.humanize("2020-06-10~") == "circa June 10, 2020" - assert EDTF.humanize("2020-06~") == "circa June 2020" - assert EDTF.humanize("2020~") == "circa 2020" - assert EDTF.humanize("-2020-06~") == "circa June 2020 BCE" - end - - test "uncertain date" do - assert EDTF.humanize("2020-06-10?") == "June 10, 2020?" - assert EDTF.humanize("2020-06?") == "June 2020?" - assert EDTF.humanize("2020?") == "2020?" - assert EDTF.humanize("-2020-06?") == "June 2020 BCE?" - end - - test "approximate and uncertain date" do - assert EDTF.humanize("2020-06-10%") == "circa June 10, 2020?" - assert EDTF.humanize("2020-06%") == "circa June 2020?" - assert EDTF.humanize("2020%") == "circa 2020?" - assert EDTF.humanize("-2020-06%") == "circa June 2020 BCE?" - end - - test "dates with unspecified digits from the right" do - assert EDTF.humanize("192X") == "1920s" - assert EDTF.humanize("19XX") == "1900s" - assert EDTF.humanize("1XXX") == "1000s" - - assert EDTF.humanize("-192X") == "1920s BCE" - assert EDTF.humanize("-19XX") == "1900s BCE" - assert EDTF.humanize("-1XXX") == "1000s BCE" - end - - test "intervals with unspecified digits from the right" do - assert EDTF.humanize("192X/193X") == "1920s to 1930s" - assert EDTF.humanize("-192X/192X") == "1920s BCE to 1920s" - end - - test "dates with other unspecified digits" do - assert EDTF.humanize("X9X2") == "X9X2" - assert EDTF.humanize("1999-XX") == "1999-XX" - assert EDTF.humanize("1999-12-XX") == "1999-12-XX" - assert EDTF.humanize("-19X9-12-XX") == "-19X9-12-XX" - end - - test "prefixed and exponential years" do - assert EDTF.humanize("Y20020") == "20020" - assert EDTF.humanize("Y-20020") == "20020 BCE" - assert EDTF.humanize("Y17E7") == "170000000" - assert EDTF.humanize("Y-17E7") == "170000000 BCE" - end - - test "decade" do - assert EDTF.humanize("201") == "2010s" - assert EDTF.humanize("-201") == "2010s BCE" - end - - test "century" do - assert EDTF.humanize("20") == "20th Century" - assert EDTF.humanize("21") == "21st Century" - assert EDTF.humanize("-20") == "20th Century BCE" - assert EDTF.humanize("-21") == "21st Century BCE" - end - - test "date interval" do - assert EDTF.humanize("2019-06~/2020") == "circa June 2019 to 2020" - end - - test "unbounded interval" do - assert EDTF.humanize("2019-06~/..") == "from circa June 2019" - assert EDTF.humanize("../2019-06-10~") == "before circa June 10, 2019" - end - - test "interval with unknown bound" do - assert EDTF.humanize("2019-06~/") == "circa June 2019 to Unknown" - assert EDTF.humanize("/2019-06-10~") == "Unknown to circa June 10, 2019" - end - - test "set" do - assert EDTF.humanize("[2019-06]") == "June 2019" - assert EDTF.humanize("[2019-06, 2020-06]") == "June 2019 or June 2020" - assert EDTF.humanize("[2019-06, 2020-06, 2021-06]") == "June 2019, June 2020, or June 2021" - - assert EDTF.humanize("[2019-06, 2020-06, 2021-06..2021-07]") == - "June 2019, June 2020, or June 2021 to July 2021" - - assert EDTF.humanize("[..2020]") == "some year before 2020 or 2020" - assert EDTF.humanize("[..2020-06]") == "some month before June 2020 or June 2020" - assert EDTF.humanize("[..2020-06-10]") == "some date before June 10, 2020 or June 10, 2020" - assert EDTF.humanize("[2020..]") == "2020 or some year after 2020" - assert EDTF.humanize("[2020-06..]") == "June 2020 or some month after June 2020" - assert EDTF.humanize("[2020-06-10..]") == "June 10, 2020 or some date after June 10, 2020" - - assert EDTF.humanize("[..2018, 2020-06-10..]") == - "some year before 2018, 2018, June 10, 2020, or some date after June 10, 2020" - end - - test "list" do - assert EDTF.humanize("{2019-06}") == "June 2019" - assert EDTF.humanize("{2019-06, 2020-06}") == "June 2019 and June 2020" - assert EDTF.humanize("{2019-06, 2020-06, 2021-06}") == "June 2019, June 2020, and June 2021" - - assert EDTF.humanize("{2019-06, 2020-06, 2021-06..2021-07}") == - "June 2019, June 2020, and June 2021 to July 2021" - - assert EDTF.humanize("{..1984}") == "all years before 1984 and 1984" - assert EDTF.humanize("{1984..}") == "1984 and all years after 1984" - end - - test "season" do - assert EDTF.humanize("2020-21") == "Spring 2020" - assert EDTF.humanize("2020-22") == "Summer 2020" - assert EDTF.humanize("2020-23") == "Autumn 2020" - assert EDTF.humanize("2020-24") == "Winter 2020" - assert EDTF.humanize("2020-25") == "Spring (Northern Hemisphere) 2020" - assert EDTF.humanize("2020-26") == "Summer (Northern Hemisphere) 2020" - assert EDTF.humanize("2020-27") == "Autumn (Northern Hemisphere) 2020" - assert EDTF.humanize("2020-28") == "Winter (Northern Hemisphere) 2020" - assert EDTF.humanize("2020-29") == "Spring (Southern Hemisphere) 2020" - assert EDTF.humanize("2020-30") == "Summer (Southern Hemisphere) 2020" - assert EDTF.humanize("2020-31") == "Autumn (Southern Hemisphere) 2020" - assert EDTF.humanize("2020-32") == "Winter (Southern Hemisphere) 2020" - assert EDTF.humanize("2020-33") == "Quarter 1 2020" - assert EDTF.humanize("2020-34") == "Quarter 2 2020" - assert EDTF.humanize("2020-35") == "Quarter 3 2020" - assert EDTF.humanize("2020-36") == "Quarter 4 2020" - assert EDTF.humanize("2020-37") == "Quadrimester 1 2020" - assert EDTF.humanize("2020-38") == "Quadrimester 2 2020" - assert EDTF.humanize("2020-39") == "Quadrimester 3 2020" - assert EDTF.humanize("2020-40") == "Semestral 1 2020" - assert EDTF.humanize("2020-41") == "Semestral 2 2020" - end - - test "intervals with seasons" do - assert EDTF.humanize("1995-24/1996-22") == "Winter 1995 to Summer 1996" - assert EDTF.humanize("-1995-24/1996-22") == "Winter 1995 BCE to Summer 1996" - end - end -end diff --git a/app/test/fixtures/csv/export_fixture_31.exs b/app/test/fixtures/csv/export_fixture_31.exs index d6f550cf1..6f5b06195 100644 --- a/app/test/fixtures/csv/export_fixture_31.exs +++ b/app/test/fixtures/csv/export_fixture_31.exs @@ -12,7 +12,7 @@ creator: "http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268", cultural_context: "Context 1 | Context 2", - date_created: "~1899", + date_created: "%1899", description: "Three | Descriptions | With a \\| pipe in the third", folder_name: "Folder 2", folder_number: "2", diff --git a/app/test/fixtures/csv/import_fixture_31.exs b/app/test/fixtures/csv/import_fixture_31.exs index 8e23fdd75..38198565c 100644 --- a/app/test/fixtures/csv/import_fixture_31.exs +++ b/app/test/fixtures/csv/import_fixture_31.exs @@ -90,7 +90,7 @@ %{term: %{id: "http://id.loc.gov/vocabulary/languages/lin"}}, %{term: %{id: "http://id.loc.gov/vocabulary/languages/cha"}} ], - date_created: [%{edtf: "~1899"}], + date_created: [%{edtf: "%1899"}], legacy_identifier: ["827", "BCDE.2"], location: [ %{term: %{id: "https://sws.geonames.org/2347283/"}}, diff --git a/app/test/fixtures/csv/sheets/bad_headers.csv b/app/test/fixtures/csv/sheets/bad_headers.csv index 538393923..947f4bb02 100644 --- a/app/test/fixtures/csv/sheets/bad_headers.csv +++ b/app/test/fixtures/csv/sheets/bad_headers.csv @@ -31,7 +31,7 @@ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem officia fugit eos architecto quisquam qui!,,,lil:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/bug,http://vocab.getty.edu/tgn/1114106 | https://sws.geonames.org/3703443/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375728 | http://vocab.getty.edu/aat/300312140,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300265034,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Iste aliquam est provident explicabo voluptatem sed perferendis.,,,aut:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207,http://vocab.getty.edu/aat/300386217,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia,https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300375737,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Aliquid ratione culpa est ad necessitatibus vitae soluta reiciendis!,,,pbl:http://id.loc.gov/authorities/names/n78030997 | vac:http://id.loc.gov/authorities/names/n79091588 | stl:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/n50053919,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500030701,http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/3582677/ | http://id.loc.gov/authorities/names/n79022925,http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300378903,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376,201?, -$ID$,$ACCESSION_NUMBER$,,FALSE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context,Description,Folder 2,2,BRISCO,orb | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068,http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,~1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ +$ID$,$ACCESSION_NUMBER$,,FALSE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context,Description,Folder 2,2,BRISCO,orb | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068,http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,%1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148462,,,,,,,,,,,,,,,,,,,,,,,,,Inventore harum ex sequi saepe aut.,,,vac:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031 | http://vocab.getty.edu/aat/300139140 | http://vocab.getty.edu/aat/300266117,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/kor,https://sws.geonames.org/3703443/ | http://vocab.getty.edu/tgn/7549617 | https://sws.geonames.org/3530597/,http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Eius cum optio et illum?,,,mrb:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/n50053919 | pbl:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500018219,http://vocab.getty.edu/aat/300185712 | http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300386217 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300139140,http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/bug,https://sws.geonames.org/3598132/ | http://id.worldcat.org/fast/1204604,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300375737 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375728,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300438611,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem repellat odit qui sed alias eveniet recusandae.,,,lil:http://id.loc.gov/authorities/names/n50053919 | stl:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/4921868/,http://vocab.getty.edu/aat/300378910,TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300053376,201?, diff --git a/app/test/fixtures/csv/sheets/bad_subjects.csv b/app/test/fixtures/csv/sheets/bad_subjects.csv index 576ef89c2..c4d4ab7f6 100644 --- a/app/test/fixtures/csv/sheets/bad_subjects.csv +++ b/app/test/fixtures/csv/sheets/bad_subjects.csv @@ -31,7 +31,7 @@ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem officia fugit eos architecto quisquam qui!,,,lil:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/bug,http://vocab.getty.edu/tgn/1114106 | https://sws.geonames.org/3703443/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375728 | http://vocab.getty.edu/aat/300312140,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300265034,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Iste aliquam est provident explicabo voluptatem sed perferendis.,,,aut:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207,http://vocab.getty.edu/aat/300386217,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia,https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300375737,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Aliquid ratione culpa est ad necessitatibus vitae soluta reiciendis!,,,pbl:http://id.loc.gov/authorities/names/n78030997 | vac:http://id.loc.gov/authorities/names/n79091588 | stl:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/n50053919,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500030701,http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/3582677/ | http://id.loc.gov/authorities/names/n79022925,http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300378903,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376,201?, -$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context 1 | Context 2, Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,| pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068 | |, http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha |,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/|,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,~1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ +$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context 1 | Context 2, Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,| pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068 | |, http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha |,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/|,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,%1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148462,,,,,,,,,,,,,,,,,,,,,,,,,Inventore harum ex sequi saepe aut.,,,vac:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031 | http://vocab.getty.edu/aat/300139140 | http://vocab.getty.edu/aat/300266117,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/kor,https://sws.geonames.org/3703443/ | http://vocab.getty.edu/tgn/7549617 | https://sws.geonames.org/3530597/,http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Eius cum optio et illum?,,,mrb:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/n50053919 | pbl:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500018219,http://vocab.getty.edu/aat/300185712 | http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300386217 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300139140,http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/bug,https://sws.geonames.org/3598132/ | http://id.worldcat.org/fast/1204604,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300375737 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375728,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300438611,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem repellat odit qui sed alias eveniet recusandae.,,,lil:http://id.loc.gov/authorities/names/n50053919 | stl:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/4921868/,http://vocab.getty.edu/aat/300378910,TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300053376,201?, diff --git a/app/test/fixtures/csv/sheets/extra_query_rows.csv b/app/test/fixtures/csv/sheets/extra_query_rows.csv index 8ab3d43f6..908c09ee7 100644 --- a/app/test/fixtures/csv/sheets/extra_query_rows.csv +++ b/app/test/fixtures/csv/sheets/extra_query_rows.csv @@ -33,7 +33,7 @@ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem officia fugit eos architecto quisquam qui!,,,lil:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/bug,http://vocab.getty.edu/tgn/1114106 | https://sws.geonames.org/3703443/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375728 | http://vocab.getty.edu/aat/300312140,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300265034,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Iste aliquam est provident explicabo voluptatem sed perferendis.,,,aut:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207,http://vocab.getty.edu/aat/300386217,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia,https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300375737,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Aliquid ratione culpa est ad necessitatibus vitae soluta reiciendis!,,,pbl:http://id.loc.gov/authorities/names/n78030997 | vac:http://id.loc.gov/authorities/names/n79091588 | stl:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/n50053919,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500030701,http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/3582677/ | http://id.loc.gov/authorities/names/n79022925,http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300378903,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376,201?, -$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context 1 | Context 2, Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,| pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068 | |, http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha |,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/|,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,~1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ +$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context 1 | Context 2, Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,| pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068 | |, http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha |,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/|,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,%1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148462,,,,,,,,,,,,,,,,,,,,,,,,,Inventore harum ex sequi saepe aut.,,,vac:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031 | http://vocab.getty.edu/aat/300139140 | http://vocab.getty.edu/aat/300266117,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/kor,https://sws.geonames.org/3703443/ | http://vocab.getty.edu/tgn/7549617 | https://sws.geonames.org/3530597/,http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Eius cum optio et illum?,,,mrb:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/n50053919 | pbl:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500018219,http://vocab.getty.edu/aat/300185712 | http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300386217 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300139140,http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/bug,https://sws.geonames.org/3598132/ | http://id.worldcat.org/fast/1204604,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300375737 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375728,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300438611,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem repellat odit qui sed alias eveniet recusandae.,,,lil:http://id.loc.gov/authorities/names/n50053919 | stl:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/4921868/,http://vocab.getty.edu/aat/300378910,TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300053376,201?, diff --git a/app/test/fixtures/csv/sheets/invalid.csv b/app/test/fixtures/csv/sheets/invalid.csv index 84adf2ec4..e26f77c9e 100644 --- a/app/test/fixtures/csv/sheets/invalid.csv +++ b/app/test/fixtures/csv/sheets/invalid.csv @@ -31,7 +31,7 @@ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem officia fugit eos architecto quisquam qui!,,,lil:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/bug,http://vocab.getty.edu/tgn/1114106 | https://sws.geonames.org/3703443/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375728 | http://vocab.getty.edu/aat/300312140,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300265034,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Iste aliquam est provident explicabo voluptatem sed perferendis.,,,aut:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207,http://vocab.getty.edu/aat/300386217,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia,https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300375737,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Aliquid ratione culpa est ad necessitatibus vitae soluta reiciendis!,,,pbl:http://id.loc.gov/authorities/names/n78030997 | vac:http://id.loc.gov/authorities/names/n79091588 | stl:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/n50053919,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500030701,http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/3582677/ | http://id.loc.gov/authorities/names/n79022925,http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300378903,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376,201?, -$ID$,$ACCESSION_NUMBER$,,FALSE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context,Description,Folder 2,2,BRISCO,orb | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068,http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,~1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ +$ID$,$ACCESSION_NUMBER$,,FALSE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context,Description,Folder 2,2,BRISCO,orb | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068,http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,%1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148462,,,,,,,,,,,,,,,,,,,,,,,,,Inventore harum ex sequi saepe aut.,,,vac:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031 | http://vocab.getty.edu/aat/300139140 | http://vocab.getty.edu/aat/300266117,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/kor,https://sws.geonames.org/3703443/ | http://vocab.getty.edu/tgn/7549617 | https://sws.geonames.org/3530597/,http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Eius cum optio et illum?,,,mrb:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/n50053919 | pbl:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500018219,http://vocab.getty.edu/aat/300185712 | http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300386217 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300139140,http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/bug,https://sws.geonames.org/3598132/ | http://id.worldcat.org/fast/1204604,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300375737 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375728,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300438611,201?, $ID$,MISMATCHED_ACCESSION,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem repellat odit qui sed alias eveniet recusandae.,,,lil:http://id.loc.gov/authorities/names/n50053919 | stl:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/4921868/,http://vocab.getty.edu/aat/300378910,TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300053376,201?, diff --git a/app/test/fixtures/csv/sheets/invalid_coded_term.csv b/app/test/fixtures/csv/sheets/invalid_coded_term.csv index b44681ecd..ff1562c8c 100644 --- a/app/test/fixtures/csv/sheets/invalid_coded_term.csv +++ b/app/test/fixtures/csv/sheets/invalid_coded_term.csv @@ -31,7 +31,7 @@ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem officia fugit eos architecto quisquam qui!,,,lil:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/bug,http://vocab.getty.edu/tgn/1114106 | https://sws.geonames.org/3703443/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375728 | http://vocab.getty.edu/aat/300312140,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300265034,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Iste aliquam est provident explicabo voluptatem sed perferendis.,,,aut:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207,http://vocab.getty.edu/aat/300386217,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia,https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300375737,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Aliquid ratione culpa est ad necessitatibus vitae soluta reiciendis!,,,pbl:http://id.loc.gov/authorities/names/n78030997 | vac:http://id.loc.gov/authorities/names/n79091588 | stl:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/n50053919,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500030701,http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/3582677/ | http://id.loc.gov/authorities/names/n79022925,http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300378903,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376,201?, -$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context 1 | Context 2, Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,| pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068 | |, http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha |,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/|,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,~1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ +$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context 1 | Context 2, Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,| pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068 | |, http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha |,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/|,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,%1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148462,,,,,,,,,,,,,,,,,,,,,,,,,Inventore harum ex sequi saepe aut.,,,vac:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031 | http://vocab.getty.edu/aat/300139140 | http://vocab.getty.edu/aat/300266117,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/kor,https://sws.geonames.org/3703443/ | http://vocab.getty.edu/tgn/7549617 | https://sws.geonames.org/3530597/,http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Eius cum optio et illum?,,,mrb:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/n50053919 | pbl:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500018219,http://vocab.getty.edu/aat/300185712 | http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300386217 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300139140,http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/bug,https://sws.geonames.org/3598132/ | http://id.worldcat.org/fast/1204604,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300375737 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375728,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300438611,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem repellat odit qui sed alias eveniet recusandae.,,,lil:http://id.loc.gov/authorities/names/n50053919 | stl:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/4921868/,http://vocab.getty.edu/aat/300378910,TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300053376,201?, diff --git a/app/test/fixtures/csv/sheets/invalid_terms.csv b/app/test/fixtures/csv/sheets/invalid_terms.csv index 6786e871a..21c704b45 100644 --- a/app/test/fixtures/csv/sheets/invalid_terms.csv +++ b/app/test/fixtures/csv/sheets/invalid_terms.csv @@ -31,7 +31,7 @@ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem officia fugit eos architecto quisquam qui!,,,lil:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/bug,http://vocab.getty.edu/tgn/1114106 | https://sws.geonames.org/3703443/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375728 | http://vocab.getty.edu/aat/300312140,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300265034,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Iste aliquam est provident explicabo voluptatem sed perferendis.,,,aut:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207,http://vocab.getty.edu/aat/300386217,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia,https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300375737,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Aliquid ratione culpa est ad necessitatibus vitae soluta reiciendis!,,,pbl:http://id.loc.gov/authorities/names/n78030997 | vac:http://id.loc.gov/authorities/names/n79091588 | stl:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/n50053919,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500030701,http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/3582677/ | http://id.loc.gov/authorities/names/n79022925,http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300378903,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376,201?, -$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context,Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068,http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,~1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ +$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context,Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068,http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,%1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148462,,,,,,,,,,,,,,,,,,,,,,,,,Inventore harum ex sequi saepe aut.,,,vac:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031 | http://vocab.getty.edu/aat/300139140 | http://vocab.getty.edu/aat/300266117,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/kor,https://sws.geonames.org/3703443/ | http://vocab.getty.edu/tgn/7549617 | https://sws.geonames.org/3530597/,http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Eius cum optio et illum?,,,mrb:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/n50053919 | pbl:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500018219,http://vocab.getty.edu/aat/300185712 | http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300386217 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300139140,http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/bug,https://sws.geonames.org/3598132/ | http://id.worldcat.org/fast/1204604,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300375737 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375728,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300438611,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem repellat odit qui sed alias eveniet recusandae.,,,lil:http://id.loc.gov/authorities/names/n50053919 | stl:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/4921868/,http://vocab.getty.edu/aat/300378910,TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300053376,201?, diff --git a/app/test/fixtures/csv/sheets/missing_headers.csv b/app/test/fixtures/csv/sheets/missing_headers.csv index fd755a48a..341888bd6 100644 --- a/app/test/fixtures/csv/sheets/missing_headers.csv +++ b/app/test/fixtures/csv/sheets/missing_headers.csv @@ -30,7 +30,7 @@ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem officia fugit eos architecto quisquam qui!,,,lil:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/bug,http://vocab.getty.edu/tgn/1114106 | https://sws.geonames.org/3703443/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375728 | http://vocab.getty.edu/aat/300312140,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300265034,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Iste aliquam est provident explicabo voluptatem sed perferendis.,,,aut:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207,http://vocab.getty.edu/aat/300386217,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia,https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300375737,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Aliquid ratione culpa est ad necessitatibus vitae soluta reiciendis!,,,pbl:http://id.loc.gov/authorities/names/n78030997 | vac:http://id.loc.gov/authorities/names/n79091588 | stl:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/n50053919,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500030701,http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/3582677/ | http://id.loc.gov/authorities/names/n79022925,http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300378903,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376,201?, -$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context 1 | Context 2, Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,| pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068 | |, http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha |,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/|,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,~1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ +$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context 1 | Context 2, Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,| pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068 | |, http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha |,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/|,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,%1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148462,,,,,,,,,,,,,,,,,,,,,,,,,Inventore harum ex sequi saepe aut.,,,vac:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031 | http://vocab.getty.edu/aat/300139140 | http://vocab.getty.edu/aat/300266117,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/kor,https://sws.geonames.org/3703443/ | http://vocab.getty.edu/tgn/7549617 | https://sws.geonames.org/3530597/,http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Eius cum optio et illum?,,,mrb:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/n50053919 | pbl:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500018219,http://vocab.getty.edu/aat/300185712 | http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300386217 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300139140,http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/bug,https://sws.geonames.org/3598132/ | http://id.worldcat.org/fast/1204604,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300375737 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375728,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300438611,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem repellat odit qui sed alias eveniet recusandae.,,,lil:http://id.loc.gov/authorities/names/n50053919 | stl:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/4921868/,http://vocab.getty.edu/aat/300378910,TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300053376,201?, diff --git a/app/test/fixtures/csv/sheets/missing_query_row.csv b/app/test/fixtures/csv/sheets/missing_query_row.csv index 48880c774..25aff57cf 100644 --- a/app/test/fixtures/csv/sheets/missing_query_row.csv +++ b/app/test/fixtures/csv/sheets/missing_query_row.csv @@ -30,7 +30,7 @@ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem officia fugit eos architecto quisquam qui!,,,lil:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/bug,http://vocab.getty.edu/tgn/1114106 | https://sws.geonames.org/3703443/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375728 | http://vocab.getty.edu/aat/300312140,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300265034,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Iste aliquam est provident explicabo voluptatem sed perferendis.,,,aut:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207,http://vocab.getty.edu/aat/300386217,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia,https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300375737,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Aliquid ratione culpa est ad necessitatibus vitae soluta reiciendis!,,,pbl:http://id.loc.gov/authorities/names/n78030997 | vac:http://id.loc.gov/authorities/names/n79091588 | stl:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/n50053919,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500030701,http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/3582677/ | http://id.loc.gov/authorities/names/n79022925,http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300378903,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376,201?, -$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context 1 | Context 2, Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,| pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068 | |, http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha |,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/|,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,~1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ +$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context 1 | Context 2, Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,| pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068 | |, http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha |,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/|,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,%1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148462,,,,,,,,,,,,,,,,,,,,,,,,,Inventore harum ex sequi saepe aut.,,,vac:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031 | http://vocab.getty.edu/aat/300139140 | http://vocab.getty.edu/aat/300266117,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/kor,https://sws.geonames.org/3703443/ | http://vocab.getty.edu/tgn/7549617 | https://sws.geonames.org/3530597/,http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Eius cum optio et illum?,,,mrb:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/n50053919 | pbl:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500018219,http://vocab.getty.edu/aat/300185712 | http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300386217 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300139140,http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/bug,https://sws.geonames.org/3598132/ | http://id.worldcat.org/fast/1204604,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300375737 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375728,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300438611,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem repellat odit qui sed alias eveniet recusandae.,,,lil:http://id.loc.gov/authorities/names/n50053919 | stl:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/4921868/,http://vocab.getty.edu/aat/300378910,TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300053376,201?, diff --git a/app/test/fixtures/csv/sheets/valid.csv b/app/test/fixtures/csv/sheets/valid.csv index fbb354120..575e4baed 100644 --- a/app/test/fixtures/csv/sheets/valid.csv +++ b/app/test/fixtures/csv/sheets/valid.csv @@ -31,7 +31,7 @@ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem officia fugit eos architecto quisquam qui!,,,lil:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/bug,http://vocab.getty.edu/tgn/1114106 | https://sws.geonames.org/3703443/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375728 | http://vocab.getty.edu/aat/300312140,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300265034,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Iste aliquam est provident explicabo voluptatem sed perferendis.,,,aut:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207,http://vocab.getty.edu/aat/300386217,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia,https://sws.geonames.org/3582677/,http://vocab.getty.edu/aat/300375743 | http://vocab.getty.edu/aat/300375737,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Aliquid ratione culpa est ad necessitatibus vitae soluta reiciendis!,,,pbl:http://id.loc.gov/authorities/names/n78030997 | vac:http://id.loc.gov/authorities/names/n79091588 | stl:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/n50053919,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500030701,http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/div | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/3582677/ | http://id.loc.gov/authorities/names/n79022925,http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300378903,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300053376,201?, -$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context 1 | Context 2, Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,| pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068 | |, http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha |,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/|,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,~1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ +$ID$,$ACCESSION_NUMBER$,,TRUE,AUTHENTICATED,UNIVERSITY_MAIN_LIBRARY,2,The Coming Thing,Description of Project | Another Description of Project,Socrates Poole | Lord Bowler,"Brisco County, Jr.",1899.827,Redevelopment,NOT STARTED,Abstract,That Bruce Campbell Show,ark:/99999/fk417148465,Box 1,1,Caption,Catalog Key,Citation,Context 1 | Context 2, Three | Descriptions | With a \| pipe in the third,Folder 2,2,BRISCO,orb | | bly | western,827 | BCDE.2,GENERAL_NOTE:Notes,Terms of Use,DVD,12cm,Television,Boam/Cuse Productions | Warner Bros. Television,Related Material,Rights Holder,Scope | Contents,"The Adventures of Brisco County, Jr.",Source,Season One | There Is No Season Two,Eaque optio est praesentium tenetur impedit autem minima.,http://www.europeana.eu/portal/rights/rr-r.html,http://rightsstatements.org/vocab/InC/1.0/,| pbl:http://id.loc.gov/authorities/names/n83175996 | vac:http://id.loc.gov/authorities/names/n85153068 | lil:http://id.loc.gov/authorities/names/n50053919 | aut:http://id.loc.gov/authorities/names/no2011087251 | mrb:http://id.loc.gov/authorities/names/no2011087251 | stl:http://id.loc.gov/authorities/names/n85153068 | |, http://vocab.getty.edu/ulan/500030701 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300185712,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/lin | http://id.loc.gov/vocabulary/languages/cha |,https://sws.geonames.org/2347283/ | https://sws.geonames.org/3530597/ | https://sws.geonames.org/3582677/|,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710,http://vocab.getty.edu/aat/300438611 | http://vocab.getty.edu/aat/300400619 | http://vocab.getty.edu/aat/300053376,%1899,RELATED_INFORMATION:https://www.imdb.com/title/tt0105932/ $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148462,,,,,,,,,,,,,,,,,,,,,,,,,Inventore harum ex sequi saepe aut.,,,vac:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500018219 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500445403 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031 | http://vocab.getty.edu/aat/300139140 | http://vocab.getty.edu/aat/300266117,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/cha | http://id.loc.gov/vocabulary/languages/kor,https://sws.geonames.org/3703443/ | http://vocab.getty.edu/tgn/7549617 | https://sws.geonames.org/3530597/,http://vocab.getty.edu/aat/300378910 | http://vocab.getty.edu/aat/300375743,GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300435429,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148465,,,,,,,,,,,,,,,,,,,,,,,,,Eius cum optio et illum?,,,mrb:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/no2011087251 | lil:http://id.loc.gov/authorities/names/n50053919 | pbl:http://id.loc.gov/authorities/names/n83175996,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500018219,http://vocab.getty.edu/aat/300185712 | http://vocab.getty.edu/aat/300056462 | http://vocab.getty.edu/aat/300386217 | http://vocab.getty.edu/aat/300266117 | http://vocab.getty.edu/aat/300139140,http://id.loc.gov/vocabulary/languages/nia | http://id.loc.gov/vocabulary/languages/bug,https://sws.geonames.org/3598132/ | http://id.worldcat.org/fast/1204604,http://vocab.getty.edu/aat/300378903 | http://vocab.getty.edu/aat/300375737 | http://vocab.getty.edu/aat/300312140 | http://vocab.getty.edu/aat/300375728,TOPICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076671 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300053376 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300438611,201?, $ID$,$ACCESSION_NUMBER$,,FALSE,RESTRICTED,,,,,,,,,,,,ark:/99999/fk417148464,,,,,,,,,,,,,,,,,,,,,,,,,Voluptatem repellat odit qui sed alias eveniet recusandae.,,,lil:http://id.loc.gov/authorities/names/n50053919 | stl:http://id.loc.gov/authorities/names/n78030997,http://vocab.getty.edu/ulan/500102192 | http://vocab.getty.edu/ulan/500115207 | http://vocab.getty.edu/ulan/500029268,http://vocab.getty.edu/aat/300026031,http://id.loc.gov/vocabulary/languages/bug | http://id.loc.gov/vocabulary/languages/cha,https://sws.geonames.org/4921868/,http://vocab.getty.edu/aat/300378910,TOPICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh2002006395 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85076710 | GEOGRAPHICAL:http://id.loc.gov/authorities/subjects/sh85070610 | TOPICAL:http://id.loc.gov/authorities/subjects/sh85076671,http://vocab.getty.edu/aat/300410254 | http://vocab.getty.edu/aat/300265034 | http://vocab.getty.edu/aat/300435429 | http://vocab.getty.edu/aat/300053376,201?, diff --git a/app/test/fixtures/csv/work_fixtures.exs b/app/test/fixtures/csv/work_fixtures.exs index 0258794ff..44239354d 100644 --- a/app/test/fixtures/csv/work_fixtures.exs +++ b/app/test/fixtures/csv/work_fixtures.exs @@ -3967,7 +3967,7 @@ %{role: nil, term: %{id: "http://vocab.getty.edu/ulan/500102192"}}, %{role: nil, term: %{id: "http://vocab.getty.edu/ulan/500029268"}} ], - date_created: [%{"edtf" => "~1899", "humanized" => "circa 1899?"}], + date_created: [%{"edtf" => "%1899", "humanized" => "circa 1899?"}], contributor: [ %{ role: %{id: "pbl", scheme: "marc_relator"}, diff --git a/app/test/meadow/batches_test.exs b/app/test/meadow/batches_test.exs index 804d845cf..b3030ff15 100644 --- a/app/test/meadow/batches_test.exs +++ b/app/test/meadow/batches_test.exs @@ -177,7 +177,7 @@ defmodule Meadow.BatchesTest do add = %{ descriptive_metadata: %{ box_name: ["His Airness"], - date_created: [%{edtf: "1009"}, %{edtf: "100X"}, %{edtf: "~1968"}] + date_created: [%{edtf: "1009"}, %{edtf: "100X"}, %{edtf: "%1968"}] } } @@ -211,7 +211,7 @@ defmodule Meadow.BatchesTest do assert work.descriptive_metadata.date_created == [ %{edtf: "1009", humanized: "1009"}, %{edtf: "100X", humanized: "1000s"}, - %{edtf: "~1968", humanized: "circa 1968?"} + %{edtf: "%1968", humanized: "circa 1968?"} ] end) end @@ -225,7 +225,7 @@ defmodule Meadow.BatchesTest do descriptive_metadata: %{ box_name: ["His Airness"], cultural_context: ["Some Context", "Some More Context"], - date_created: [%{edtf: "1009"}, %{edtf: "100X"}, %{edtf: "~1968"}] + date_created: [%{edtf: "1009"}, %{edtf: "100X"}, %{edtf: "%1968"}] } } diff --git a/app/test/meadow/data/csv/metadata_update_jobs_test.exs b/app/test/meadow/data/csv/metadata_update_jobs_test.exs index fdc0839ae..59946556c 100644 --- a/app/test/meadow/data/csv/metadata_update_jobs_test.exs +++ b/app/test/meadow/data/csv/metadata_update_jobs_test.exs @@ -66,7 +66,7 @@ defmodule Meadow.Data.CSV.MetadataUpdateJobsTest do assert work.visibility.id == "AUTHENTICATED" assert work.descriptive_metadata.date_created == [ - %{edtf: "~1899", humanized: "circa 1899?"} + %{edtf: "%1899", humanized: "circa 1899?"} ] assert work.administrative_metadata.project_proposer == [ diff --git a/app/test/meadow/indexing/v2/encoding_test.exs b/app/test/meadow/indexing/v2/encoding_test.exs index 6384d5fd0..d986bc2ac 100644 --- a/app/test/meadow/indexing/v2/encoding_test.exs +++ b/app/test/meadow/indexing/v2/encoding_test.exs @@ -53,7 +53,7 @@ defmodule Meadow.Indexing.V2.EncodingTest do descriptive_metadata: %{ alternate_title: ["Alt Title 1", "Alt Title 2"], creator: [%{term: %{id: "mock1:result1"}}], - date_created: [%{edtf: "~1899"}], + date_created: [%{edtf: "%1899"}], contributor: [ %{role: %{id: "aut", scheme: "marc_relator"}, term: %{id: "mock1:result1"}} ],