Thanks everyone, that is working now for DSpace 4. The configuration needs to be added in three places in discovery.xml - in /dspace/config/spring/api /discovery.xml
Around line 109
103 <!--The search filters which can be used on the discovery search page-->
104 <property name="searchFilters">
105 <list>
106 <ref bean="searchFilterTitle" />
107 <ref bean="searchFilterAuthor" />
108 <ref bean="searchFilterSubject" />
109 <ref bean="searchFilterIssued" />
110 <ref bean="searchFilterLanguage" />
111 </list>
112 </property>
And near line 209
207 <!--The search filters which can be used on the discovery search page (same as defaultConfiguration above)-->
208 <property name="searchFilters">
209 <list>
210 <ref bean="searchFilterTitle" />
211 <ref bean="searchFilterAuthor" />
212 <ref bean="searchFilterSubject" />
213 <ref bean="searchFilterIssued" />
214 <ref bean="searchFilterLanguage" />
215 </list>
216 </property>
And the definition of the filter as suggested by Luiz
<bean id="searchFilterLanguage" class="org.dspace.discovery.configuration.DiscoverySearchFilter">
316 <property name="indexFieldName" value="language"/>
317 <property name="metadataFields">
318 <list>
319 <value>dc.language</value>
320 </list>
321 </property>
322 </bean>
A couple more things:
In the drop down for the filter name it shows up as xmlui.discovery.SimpleSearch.filter.language – I would have expected to change it in messages.xml in
/dspace/webapps/xmlui/i18n/messages.xml, but for the default language English actually you have to change it under
/dspace/webapps/xmlui/WEB-INF/classes/aspects/Discovery/i18n/messages.xml:
89 <message key="xmlui.ArtifactBrowser.SimpleSearch.filter.author">Author</message>
90 <message key="xmlui.ArtifactBrowser.SimpleSearch.filter.title">Title</message>
91 <message key="xmlui.ArtifactBrowser.SimpleSearch.filter.subject">Subject</message>
92 <message key="xmlui.ArtifactBrowser.SimpleSearch.filter.dateIssued">Date issued</message>
93 <message key="xmlui.ArtifactBrowser.SimpleSearch.filter.language">Language</message>
And finally you need to re-index using discovery-index –b as suggested by Hilton Gibson if that term is not already being indexed.
Thanks everyone!
Shannon