From 53c887af07ef841af7475c8cf1190a33d876c07e Mon Sep 17 00:00:00 2001
From: Esko Ikkala <esko.ikkala@aalto.fi>
Date: Tue, 26 Jun 2018 14:28:43 +0300
Subject: [PATCH] Only exact matches in search results

---
 src/server/Datasets.js | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/server/Datasets.js b/src/server/Datasets.js
index e317d57f..10a7cc9c 100644
--- a/src/server/Datasets.js
+++ b/src/server/Datasets.js
@@ -62,6 +62,7 @@ module.exports = {
           ?s wgs84:lat ?lat .
           ?s wgs84:long ?long .
         }
+        FILTER(LCASE(STR(?label))='<QUERYTERM>')
         FILTER(LANGMATCHES(LANG(?label), 'fi'))
         FILTER(LANGMATCHES(LANG(?typeLabel), 'fi'))
         FILTER(LANGMATCHES(LANG(?broaderAreaLabel), 'fi'))
@@ -131,6 +132,7 @@ module.exports = {
           ?s wgs84:lat ?lat .
           ?s wgs84:long ?long .
         }
+        FILTER(LCASE(STR(?label))='<QUERYTERM>')
         FILTER(LANGMATCHES(LANG(?label), 'fi'))
         FILTER(LANGMATCHES(LANG(?typeLabel), 'fi'))
         FILTER(LANGMATCHES(LANG(?broaderAreaLabel), 'fi'))
@@ -169,6 +171,7 @@ module.exports = {
       SELECT DISTINCT *
       WHERE {
         ?s text:query (skos:prefLabel '<QUERYTERM>') .
+        ?s skos:prefLabel ?prefLabel .
         ?s sf:preferredLanguageLiteral (skos:prefLabel 'fi' '' ?label) .
         ?s a ?type .
         ?type sf:preferredLanguageLiteral (skos:prefLabel 'fi' '' ?typeLabel) .
@@ -180,6 +183,7 @@ module.exports = {
           ?municipality sf:preferredLanguageLiteral (skos:prefLabel 'fi' '' ?broaderAreaLabel) .
           FILTER (?munType != <http://ldf.fi/pnr-schema#SubRegion>)
         }
+        FILTER (LCASE(STR(?prefLabel))='<QUERYTERM>')
         BIND("PNR" AS ?source)
       }
       `,
-- 
GitLab