Index: /main/trunk/model-interfaces-dev/opotiki/transform/layouts/main.xsl
===================================================================
--- /main/trunk/model-interfaces-dev/opotiki/transform/layouts/main.xsl	(revision 34312)
+++ /main/trunk/model-interfaces-dev/opotiki/transform/layouts/main.xsl	(revision 34313)
@@ -100,6 +100,10 @@
 <xsl:template name="navBar">
 <xsl:choose>
-<xsl:when test="page/pageResponse/collection">
-<xsl:variable name="count" select="count(/page/pageResponse/collection/serviceList/service[@name='ClassifierBrowse']/classifierList/classifier)"/>
+  <xsl:when test="page/pageResponse/collection">
+    <!-- Using select statement to count only non-empty elements, is harder than testing
+	 for non-empty elements. Solution of using normalize-space() is from
+	 https://stackoverflow.com/questions/31602369/xsl-return-only-the-first-non-empty-element
+    -->
+<xsl:variable name="count" select="count(/page/pageResponse/collection/serviceList/service[@name='ClassifierBrowse']/classifierList/classifier/displayItem[@name = 'name'][normalize-space()])"/>
 <xsl:variable name="currentPage" select="page/pageRequest/@fullURL"/>
 
@@ -141,5 +145,11 @@
 
 <xsl:template name="Browsing">
-	<xsl:for-each select="/page/pageResponse/collection/serviceList/service[@name='ClassifierBrowse']/classifierList/classifier">
+  <xsl:for-each select="/page/pageResponse/collection/serviceList/service[@name='ClassifierBrowse']/classifierList/classifier">
+    <xsl:choose>
+      <!-- Only display browsing classifiers that have a name.
+	   Those that don't have a name are empty classifiers
+	   denoted by no value/empty value for displayItem name=name elements.
+	   Testing for non empty elements is easy: not() test. -->
+      <xsl:when test="not(displayItem[@name='name'] ='')">
 		<li>
 			<xsl:choose>
@@ -170,4 +180,6 @@
 			</a>
 		</li>
+      </xsl:when>
+    </xsl:choose>
 	</xsl:for-each>
 </xsl:template>
Index: /main/trunk/model-interfaces-dev/wmtb/transform/layouts/main.xsl
===================================================================
--- /main/trunk/model-interfaces-dev/wmtb/transform/layouts/main.xsl	(revision 34312)
+++ /main/trunk/model-interfaces-dev/wmtb/transform/layouts/main.xsl	(revision 34313)
@@ -121,7 +121,11 @@
 <xsl:template name="navBar">
 <xsl:choose>
-<xsl:when test="page/pageResponse/collection">
-<xsl:variable name="count" select="count(/page/pageResponse/collection/serviceList/service[@name='ClassifierBrowse']/classifierList/classifier)"/>
-<xsl:variable name="currentPage" select="page/pageRequest/@fullURL"/>
+  <xsl:when test="page/pageResponse/collection">
+    <!-- Using select statement to count only non-empty elements, is harder than testing
+         for non-empty elements. Solution of using normalize-space() is from
+         https://stackoverflow.com/questions/31602369/xsl-return-only-the-first-non-empty-element
+    -->
+    <xsl:variable name="count" select="count(/page/pageResponse/collection/serviceList/service[@name='ClassifierBrowse']/classifierList/classifier/displayItem[@name = 'name'][normalize-space()])"/>
+    <xsl:variable name="currentPage" select="page/pageRequest/@fullURL"/>
 
 <li><a href="{$library_name}">DL Home</a></li>
@@ -162,5 +166,11 @@
 
 <xsl:template name="Browsing">
-	<xsl:for-each select="/page/pageResponse/collection/serviceList/service[@name='ClassifierBrowse']/classifierList/classifier">
+  <xsl:for-each select="/page/pageResponse/collection/serviceList/service[@name='ClassifierBrowse']/classifierList/classifier">
+    <xsl:choose>
+      <!-- Only display browsing classifiers that have a name.
+           Those that don't have a name are empty classifiers
+           denoted by no value/empty value for displayItem name=name elements.
+           Testing for non empty elements is easy: not() test. -->
+      <xsl:when test="not(displayItem[@name='name'] ='')">
 		<li>
 			<xsl:choose>
@@ -191,4 +201,6 @@
 			</a>
 		</li>
+	      </xsl:when>
+           </xsl:choose>
 	</xsl:for-each>
 </xsl:template>
