Index: src/main/webapp/application/engageConfig.json
===================================================================
--- src/main/webapp/application/engageConfig.json	(revision 9382)
+++ src/main/webapp/application/engageConfig.json	(working copy)
@@ -31,9 +31,13 @@
     all: "all",
     byCollectionCategory: "by_collection_category",
     exhibitionByTitle: "_design/exhibitions/_view/view",
+    exhibitionByID: "_design/exhibitions/_view/viewByID",
     catalogueByTitle: "_design/catalogue/_view/view",
+    catalogueByID: "_design/catalogue/_view/viewByID",
     catalogueArtifacts: "_design/catalogue/_view/browse",
+    catalogueArtifactsByID: "_design/catalogue/_view/browseByID",
     exhibitions: "_design/exhibitions/_view/browse",
+    exhibitionsByID: "_design/exhibitions/_view/browseByID",
     artifactByAccession: "_design/artifacts/_view/view",
     byObjectCode: "_design/artifacts/_view/viewByObjectCode"
 },
Index: src/main/webapp/application/engageStandaloneConfig.json
===================================================================
--- src/main/webapp/application/engageStandaloneConfig.json	(revision 9382)
+++ src/main/webapp/application/engageStandaloneConfig.json	(working copy)
@@ -29,9 +29,13 @@
     all: "all",
     byCollectionCategory: "by_collection_category",
     exhibitionByTitle: "_design/exhibitions/_view/view",
+    exhibitionByID: "_design/exhibitions/_view/viewByID",
     catalogueByTitle: "_design/catalogue/_view/view",
+    catalogueByID: "_design/catalogue/_view/viewByID",
     catalogueArtifacts: "_design/catalogue/_view/browse",
+    catalogueArtifactsByID: "_design/catalogue/_view/browseByID",
     exhibitions: "_design/exhibitions/_view/browse",
+    exhibitionsByID: "_design/exhibitions/_view/browseByID",
     artifactByAccession: "_design/artifacts/_view/view",
     byObjectCode: "_design/artifacts/_view/viewByObjectCode"
 },
Index: src/main/webapp/services/browseCatalogue/js/browseCatalogue.js
===================================================================
--- src/main/webapp/services/browseCatalogue/js/browseCatalogue.js	(revision 9382)
+++ src/main/webapp/services/browseCatalogue/js/browseCatalogue.js	(working copy)
@@ -43,14 +43,17 @@
     };
     
     var compileDatabaseURL = function (params, config) {
+        var key = {
+            exhibitID: params.exhibitID
+        };
+        if (params.sectionID) {
+            key.sectionID = params.sectionID;
+        }
+        key.lang = params.lang;
         return fluid.stringTemplate(config.viewURLTemplateWithKey, {
             dbName: params.db || "", 
-            view: config.views.catalogueArtifacts, 
-            key: JSON.stringify({
-                exhibitTitle: params.exhibition,
-                sectionTitle: params.title,
-                lang: params.lang
-            })
+            view: config.views.catalogueArtifactsByID, 
+            key: JSON.stringify(key)
         });
     };
     
Index: src/main/webapp/services/catalogue/js/catalogue.js
===================================================================
--- src/main/webapp/services/catalogue/js/catalogue.js	(revision 9382)
+++ src/main/webapp/services/catalogue/js/catalogue.js	(working copy)
@@ -44,9 +44,9 @@
     var compileDatabaseURL = function (params, config) {
         return fluid.stringTemplate(config.viewURLTemplateWithKey, {
             dbName: params.db || "", 
-            view: config.views.catalogueByTitle, 
+            view: config.views.catalogueByID, 
             key: JSON.stringify({
-                title: params.title,
+                id: params.id,
                 lang: params.lang
             })
         });
@@ -73,15 +73,15 @@
         });
     };
     
-    var compileTheme = function (themes, exhibitionTitle, params, baseURL) {
+    var compileTheme = function (themes, exhibitionID, params, baseURL) {
         baseURL = baseURL || "";
         return fluid.transform(themes, function (theme) {
             return {
                 title: theme.title,
                 allArtifactsViewURL: compileTargetURL(baseURL, {
                     db: params.db,
-                    exhibition: exhibitionTitle,
-                    title: theme.title,
+                    exhibitID: exhibitionID,
+                    sectionID: theme.sectionID,
                     lang: params.lang
                 }),
                 numArtifacts: theme.numArtifacts,
@@ -97,12 +97,11 @@
             title: data.title,
             allArtifactsViewURL: compileTargetURL(baseCatalogueURL, {
                 db: params.db,
-                exhibition: data.title,
-                title: "viewAll",
+                exhibitID: data.id,
                 lang: params.lang
             }),
             numArtifacts: data.numArtifacts,
-            themes: compileTheme(data.themes, data.title, params, baseCatalogueURL)
+            themes: compileTheme(data.themes, data.id, params, baseCatalogueURL)
         };
     };
     
Index: src/main/webapp/services/exhibitionAbout/js/exhibitionAbout.js
===================================================================
--- src/main/webapp/services/exhibitionAbout/js/exhibitionAbout.js	(revision 9382)
+++ src/main/webapp/services/exhibitionAbout/js/exhibitionAbout.js	(working copy)
@@ -27,9 +27,9 @@
     var compileDatabaseURL = function (params, config) {
         return fluid.stringTemplate(config.viewURLTemplateWithKey, {
             dbName: params.db || "", 
-            view: config.views.exhibitionByTitle, 
+            view: config.views.exhibitionByID, 
             key: JSON.stringify({
-                title: params.title,
+                id: params.id,
                 lang: params.lang
             })
         });
Index: src/main/webapp/services/exhibitionBrowse/js/exhibitionBrowse.js
===================================================================
--- src/main/webapp/services/exhibitionBrowse/js/exhibitionBrowse.js	(revision 9382)
+++ src/main/webapp/services/exhibitionBrowse/js/exhibitionBrowse.js	(working copy)
@@ -25,7 +25,7 @@
                 args: ["{config}.viewURLTemplateWithKey", 
                 {
                     dbName: "${db}_exhibitions",
-                    view: "{config}.views.exhibitions",
+                    view: "{config}.views.exhibitionsByID",
                     key: '"${lang}"'
                 }]
             }
@@ -114,7 +114,7 @@
                     title: exhibition.title,
                     url: compileTargetURL(exhibition.isCurrent ? baseExhibitionURL : baseUpcomingExhibitionURL, {
                         db: dbName,
-                        title: exhibition.title,
+                        id: exhibition.id,
                         lang: options.lang
                     }),
                     displayDate: exhibition.displayDate,
Index: src/main/webapp/services/exhibitionView/js/exhibitionView.js
===================================================================
--- src/main/webapp/services/exhibitionView/js/exhibitionView.js	(revision 9382)
+++ src/main/webapp/services/exhibitionView/js/exhibitionView.js	(working copy)
@@ -27,9 +27,9 @@
     var compileDatabaseURL = function (params, config) {
         return fluid.stringTemplate(config.viewURLTemplateWithKey, {
             dbName: params.db || "", 
-            view: config.views.exhibitionByTitle, 
+            view: config.views.exhibitionByID, 
             key: JSON.stringify({
-                title: params.title,
+                id: params.id,
                 lang: params.lang
             })
         });
@@ -118,8 +118,14 @@
             var strings = fluid.exhibitionService.getBundle(renderHandlerConfig, params);
             var guestbookVP = {type: "exhibition", id: data.title, lang: params.lang};
             
-            data.catalogueLink = internalURL("../catalogue/view.html", params, "titleCentred");
-            data.aboutLink = internalURL("about.html", params, "titleCentred");
+            var paramForURL = {
+                db: params.db,
+                id: data.id,
+                lang: params.lang
+            }; 
+            
+            data.catalogueLink = internalURL("../catalogue/view.html", paramForURL, "titleCentred");
+            data.aboutLink = internalURL("about.html", paramForURL, "titleCentred");
             data.guestbookLink = internalURL("../guestbook/guestbook.html", guestbookVP, "guestbook");
             
             var options = {
