An Oracle blog about Campus Solutions

  • November 30, 2017

Keywords in Class Search in Campus Solutions 9.2

Lawrence Borgione
Campus Solutions Product Strategy Manager

Campus Solutions 9.2 Class Search  and Elasticsearch

The introduction of Class Search and Browse Catalog  using the PeopleSoft Search Framework and the Elasticsearch engine in delivered Fluid pages represents new core functionality for our CS 9.2 customers.  Our goal is to provide a modern search feature that delivers an intuitive ui and consistent search results for your users.   Campus Solutions has been actively engaged with customers as they focus on implementing Elasticsearch/Class Search as part of the upgrade to Campus Solutions 9.2.  As usual, we have received extremely productive feedback, suggestions for enhancements, and of course Service Requests that require our attention.  We have been continually working with our CS Support team on Service Requests and bug fixes that have been reported related to ES/CS.  So far we have addressed a number of reported issues and in most cases a POC has been delivered prior to a targeted PUM Image.  Our CS team in Global Support is working closely with Peopletools Support engineers to track and resolve issues where necessary. One item that we have enhanced for our Campus Solutions customers is the way in which keywords are used when searching for classes.

CS 9.2:  How keywords work and how we have enhanced them in PUM Image 7

Class Search powered by the PeopleSoft Search Framework and the Elasticsearch engine starts with a either a keyword look up:

or by using the convenient link, Additional Ways to Search:

While testing Class Search with Elasticsearch, one fundamental issue that our customers encountered is how Elasticsearch recognizes keywords entered by users.  The Elasticsearch engine performs what is called stemming when a word is entered into a search.  For example Psychology is trimmed to the stem word “Psycholog”.   When entered into a hypothetical Class Search, it would return a large number of classes that includes PSYCHOLOGY and PSYCHOLOGICAL in their Subject, Course Title, Course Topic (Class Search also looks at Catalog Number and Class Number).  We all know that students looking for a class on a smartphone are probably not going to take the time to thumb type PSYCHOLOGY into the keyword field .  They're going to enter "psyc" or "psy".    However, in Elasticsearch, if a user enters “Psyc” for a search, it decides that there is no “stem” word and it uses “Psyc” as a keyword and will only return results that match exactly to Psyc.   When we initially tested Elasticsearch with Class Search, entering Psyc returned NO results1 using Elasticsearch even though we had plenty of classes that contain Psych, Psycho, and Psychology etc.  One would reasonably expect to enter Psyc and see classes that include the word Psychology in its title; but that is NOT the case with Elasticsearch as its delivered.  

In order to address this, in CS 9.2  PUM Image 7, we have enhanced the Campus Solutions delivered search procedure by providing an App Class which contains coding that adds a wildcard “*” to a search character or numeric string when its entered in the Keyword field.  This additional logic returns consistent and intuitive results without the user having to remember to add the wildcard character.   The wildcard character is transparent to the user. (“PSYC” becomes PSYC*, “Socio” becomes Socio*.)  We have NOT modified the search logic that is delivered with Elasticsearch. We have validated this approach with two customers one of whom as gone live with CS 9.2 and has deployed CS 9.2 Fluid Class search. And because the solution was so well received, we are planning to provide a similar App Class that will address this issue to the Browse Catalog feature.  

Where to learn more:

Setup, configuration and managing Class Search and Browse Catalog in CS 9.2 delivered Fluid pages is available in the Peoplebooks section Understanding Search in PeopleSoft Fluid User Interface.

Campus Solutions Fluid Class Search Homepage (MOS Doc ID 2282933.2)


Note 1:  When Class Search/Elasticsearch was first introduced (CS 9.2 PUM Image 4) Campus Solutions delivered code that recognized the “0 results” condition and automatically provided a wildcard character to the end of the entered character string in order to provide at least a set of results.  


(To our blog readers:   For questions related to CS feature functionality, we suggest submitting an entry on the PeopleSoft My Oracle Support Campus Solutions Community. It's an easy and fast way to connect with the experts on our Global Support team who will respond to you in a timely fashion.)