From 8e34f7cebb16e84f2f9455800ab1b4999b268da6 Mon Sep 17 00:00:00 2001
From: Demian Katz <demian.katz@villanova.edu>
Date: Fri, 9 Sep 2016 14:20:15 -0400
Subject: [PATCH] Use eDismax in all eligible search specifications. (#763)

---
 config/vufind/authsearchspecs.yaml     |  38 +----
 config/vufind/reservessearchspecs.yaml |  35 +---
 config/vufind/searchspecs.yaml         | 211 +------------------------
 config/vufind/websearchspecs.yaml      |  38 +----
 4 files changed, 18 insertions(+), 304 deletions(-)

diff --git a/config/vufind/authsearchspecs.yaml b/config/vufind/authsearchspecs.yaml
index 3c52061d1d7..e86f852ba2a 100644
--- a/config/vufind/authsearchspecs.yaml
+++ b/config/vufind/authsearchspecs.yaml
@@ -11,23 +11,7 @@ AllFields:
     - allfields
   DismaxParams:
     - [bq, (record_type:"Personal Name" OR record_type:"Corporate Name")^500]
-  QueryFields:
-    heading_keywords:
-      - [onephrase, 1000]
-      - [and, 750]
-      - [or, 10]
-    use_for_keywords:
-      - [onephrase, 500]
-      - [and, 400]
-      - [or, 5]
-    see_also_keywords:
-      - [onephrase, 130]
-      - [and, 100]
-      - [or, 2]
-    allfields:
-      - [onephrase, 50]
-      - [and, 10]
-      - [or, ~]
+  DismaxHandler: edismax
 
 Heading:
   DismaxFields:
@@ -36,27 +20,11 @@ Heading:
     - see_also_keywords^100
   DismaxParams:
     - [bq, (record_type:"Personal Name" OR record_type:"Corporate Name")^500]
-  QueryFields:
-    heading_keywords:
-      - [onephrase, 1000]
-      - [and, 750]
-      - [or, 10]
-    use_for_keywords:
-      - [onephrase, 500]
-      - [and, 400]
-      - [or, 5]
-    see_also_keywords:
-      - [onephrase, 130]
-      - [and, 100]
-      - [or, 2]
+  DismaxHandler: edismax
 
 MainHeading:
   DismaxFields:
     - heading_keywords^750
   DismaxParams:
     - [bq, (record_type:"Personal Name" OR record_type:"Corporate Name")^500]
-  QueryFields:
-    heading_keywords:
-      - [onephrase, 1000]
-      - [and, 750]
-      - [or, 10]
+  DismaxHandler: edismax
diff --git a/config/vufind/reservessearchspecs.yaml b/config/vufind/reservessearchspecs.yaml
index bd809b983ef..9c29dffc27b 100644
--- a/config/vufind/reservessearchspecs.yaml
+++ b/config/vufind/reservessearchspecs.yaml
@@ -8,40 +8,19 @@ AllFields:
     - course^400
     - instructor^400
     - department^200
-  QueryFields:
-    course:
-      - [onephrase, 1000]
-      - [and, 750]
-      - [or, 10]
-    instructor:
-      - [onephrase, 1000]
-      - [and, 750]
-      - [or, 10]
-    department:
-      - [onephrase, 1000]
-      - [and, 750]
-      - [or, 10]
+  DismaxHandler: edismax
+
 Instructor:
   DismaxFields:
     - instructor^400
-  QueryFields:
-    instructor:
-      - [onephrase, 1000]
-      - [and, 750]
-      - [or, 10]
+  DismaxHandler: edismax
+
 Course:
   DismaxFields:
     - course^400
-  QueryFields:
-    course:
-      - [onephrase, 1000]
-      - [and, 750]
-      - [or, 10]
+  DismaxHandler: edismax
+
 Department:
   DismaxFields:
     - department^400
-  QueryFields:
-    department:
-      - [onephrase, 1000]
-      - [and, 750]
-      - [or, 10]
+  DismaxHandler: edismax
diff --git a/config/vufind/searchspecs.yaml b/config/vufind/searchspecs.yaml
index 62e12e5d243..24a8575e46f 100644
--- a/config/vufind/searchspecs.yaml
+++ b/config/vufind/searchspecs.yaml
@@ -174,51 +174,13 @@ Author:
     - author_corporate
     - author_variant
     - author2_variant
-  QueryFields:
-    author:
-      - [onephrase, 350]
-      - [and, 200]
-      - [or, 100]
-    author_fuller:
-      - [onephrase, 200]
-      - [and, 100]
-      - [or, 50]
-    author2:
-      - [onephrase, 100]
-      - [and, 50]
-      - [or, ~]
-    author2_fuller:
-      - [onephrase, 100]
-      - [and, 50]
-      - [or, ~]
-    author_additional:
-      - [onephrase, 100]
-      - [and, 50]
-      - [or, ~]
-    author_corporate:
-      - [onephrase, 100]
-      - [and, 50]
-      - [or, ~]
-    author_variant:
-      - [onephrase, 100]
-      - [and, 50]
-      - [or, ~]
-    author2_variant:
-      - [onephrase, 100]
-      - [and, 50]
-      - [or, ~]
+  DismaxHandler: edismax
 
 ISN:
   DismaxFields:
     - isbn
     - issn
-  QueryFields:
-    issn:
-      - [and, 100]
-      - [or, ~]
-    isbn:
-      - [and, 100]
-      - [or, ~]
+  DismaxHandler: edismax
 
 Subject:
   DismaxFields:
@@ -227,34 +189,10 @@ Subject:
     - geographic^50
     - genre^50
     - era
-  QueryFields:
-    topic_unstemmed:
-      - [onephrase, 350]
-      - [and, 150]
-      - [or, ~]
-    topic:
-      - [onephrase, 300]
-      - [and, 100]
-      - [or, ~]
-    geographic:
-      - [onephrase, 300]
-      - [and, 100]
-      - [or, ~]
-    genre:
-      - [onephrase, 300]
-      - [and, 100]
-      - [or, ~]
-    era:
-      - [and, 100]
-      - [or, ~]
+  DismaxHandler: edismax
 #  ExactSettings:
 #    DismaxFields:
 #      - topic_unstemmed^150
-#    QueryFields:
-#      - topic_unstemmed:
-#        - [onephrase, 350]
-#        - [and, 150]
-#        - [or, ~]
 
 # This field definition is a compromise that supports both journal-level and
 # article-level data.  The disadvantage is that hits in article titles will
@@ -273,40 +211,11 @@ JournalTitle:
     - title_old
     - series^100
     - series2
-  QueryFields:
-    title_short:
-      - [onephrase, 500]
-    title_full_unstemmed:
-      - [onephrase, 450]
-      - [and, 400]
-    title_full:
-      - [onephrase, 400]
-    title:
-      - [onephrase, 300]
-      - [and, 250]
-    container_title:
-      - [onephrase, 275]
-      - [and, 225]
-    title_alt:
-      - [and, 200]
-    title_new:
-      - [and, 100]
-    title_old:
-      - [and, ~]
-    series:
-      - [onephrase, 100]
-      - [and, 50]
-    series2:
-      - [onephrase, 50]
-      - [and , ~]
+  DismaxHandler: edismax
   FilterQuery: "format:Journal OR format:Article"
 #  ExactSettings:
 #    DismaxFields:
 #      - title_full_unstemmed^450
-#    QueryFields:
-#      - title_full_unstemmed:
-#        - [onephrase, 450]
-#        - [and, 400]
 #    FilterQuery: "format:Journal OR format:Article"
 
 Title:
@@ -320,50 +229,16 @@ Title:
     - title_old
     - series^100
     - series2
-  QueryFields:
-    title_short:
-      - [onephrase, 500]
-    title_full_unstemmed:
-      - [onephrase, 450]
-      - [and, 400]
-    title_full:
-      - [onephrase, 400]
-    title:
-      - [onephrase, 300]
-      - [and, 250]
-    title_alt:
-      - [and, 200]
-    title_new:
-      - [and, 100]
-    title_old:
-      - [and, ~]
-    series:
-      - [onephrase, 100]
-      - [and, 50]
-    series2:
-      - [onephrase, 50]
-      - [and , ~]
+  DismaxHandler: edismax
 #  ExactSettings:
 #    DismaxFields:
 #      - title_full_unstemmed^450
-#    QueryFields:
-#      - title_full_unstemmed:
-#        - [onephrase, 450]
-#        - [and, 400]
 
 Series:
   DismaxFields:
     - series^100
     - series2
-  QueryFields:
-    series:
-      - [onephrase, 500]
-      - [and, 200]
-      - [or, 100]
-    series2:
-      - [onephrase, 50]
-      - [and, 50]
-      - [or, ~]
+  DismaxHandler: edismax
 
 AllFields:
   DismaxFields:
@@ -389,64 +264,7 @@ AllFields:
     - description
     - isbn
     - issn
-  QueryFields:
-    0:
-      0:
-        - OR
-        - 50
-      title_short:
-        - [onephrase, 750]
-      title_full_unstemmed:
-        - [onephrase, 600]
-        - [and, 500]
-      title_full:
-        - [onephrase, 400]
-      title:
-        - [onephrase, 300]
-        - [and, 250]
-      title_alt:
-        - [and, 200]
-      title_new:
-        - [and, 100]
-    series:
-      - [and, 50]
-    series2:
-      - [and, 30]
-    author:
-      - [onephrase, 300]
-      - [and, 250]
-    author_fuller:
-      - [onephrase, 150]
-      - [and, 125]
-    author2:
-      - [and, 50]
-    author_additional:
-      - [and, 50]
-    contents:
-      - [and, 10]
-    topic_unstemmed:
-      - [onephrase, 550]
-      - [and, 500]
-    topic:
-      - [onephrase, 500]
-    geographic:
-      - [onephrase, 300]
-    genre:
-      - [onephrase, 300]
-    allfields_unstemmed:
-      - [or, 10]
-    fulltext_unstemmed:
-      - [or, 10]
-    allfields:
-      - [or, ~]
-    fulltext:
-      - [or, ~]
-    description:
-      - [or, ~]
-    isbn:
-      - [onephrase, ~]
-    issn:
-      - [onephrase, ~]
+  DismaxHandler: edismax
 #  ExactSettings:
 #    DismaxFields:
 #      - title_full_unstemmed^600
@@ -455,21 +273,6 @@ AllFields:
 #      - fulltext_unstemmed^10
 #      - isbn
 #      - issn
-#    QueryFields:
-#      title_full_unstemmed:
-#        - [onephrase, 600]
-#        - [and, 500]
-#      topic_unstemmed:
-#        - [onephrase, 550]
-#        - [and, 500]
-#      allfields_unstemmed:
-#        - [or, 10]
-#      fulltext_unstemmed:
-#        - [or, 10]
-#      isbn:
-#        - [onephrase, ~]
-#      issn:
-#        - [onephrase, ~]
 
 # These are advanced searches that never use Dismax:
 id:
diff --git a/config/vufind/websearchspecs.yaml b/config/vufind/websearchspecs.yaml
index 1ba5e789eda..5e3eac9c962 100644
--- a/config/vufind/websearchspecs.yaml
+++ b/config/vufind/websearchspecs.yaml
@@ -14,40 +14,4 @@ AllFields:
     - url_keywords^50
     - fulltext_unstemmed^10
     - fulltext
-  QueryFields:
-    title_unstemmed:
-      - [onephrase, 1200]
-      - [and, 800]
-      - [or, 15]
-    title:
-      - [onephrase, 1000]
-      - [and, 750]
-      - [or, 10]
-    description_unstemmed:
-      - [onephrase, 400]
-      - [and, 350]
-      - [or, ~]
-    description:
-      - [onephrase, 350]
-      - [and, 300]
-      - [or, ~]
-    keywords_unstemmed:
-      - [onephrase, 300]
-      - [and, 250]
-      - [or, ~]
-    keywords:
-      - [onephrase, 250]
-      - [and, 200]
-      - [or, ~]
-    url_keywords:
-      - [onephrase, 100]
-      - [and, 50]
-      - [or, ~]
-    fulltext_unstemmed:
-      - [onephrase, 50]
-      - [and, 10]
-      - [or, ~]
-    fulltext:
-      - [onephrase, 25]
-      - [and, 5]
-      - [or, ~]
+  DismaxHandler: edismax
-- 
GitLab