SRU Developments

I am a member of the OASIS Technical Committee that is attempting to formally standardize SRU. Some of the enhancements we are proposing to make to SRU as part of the standardization process are listed below:

  1. Allow Non-XML Record Representations
  2. Enhancements to Proximity searches in CQL
  3. Faceted Searching
  4. Ability for a server to be vague about the Result Set size
  5. Multiple Query Types
  6. Eliminate the Version and Operation Parameters 
  7. Alternative Response Formats

Some of the above are fairly trivial, such as the ability of the server to return an approximate number of records found by the query. It may not be immediately obvious why a server may not want to give an exact number of records found, but it enables very useful performance optimizations to be made on the server. For example, when you do a search on your favourite Internet search engine it will probably say something like “Results 1 – 10 of about 1,050” on the results page.

We are also being asked to enhance proximity searching so that it will support structured records. I.e. the sort of data you might find in a complex XML document. Some such queries might be as follows:

  • author = smith and date =2006, but both must be found within the same containing XML element.
  • dc.creator is in the second grandchild of the grandfather of a node with = 2006 

Some of the enhancements, such as multiple query types and response formats are quite controversial within the community. One objection being that by giving implementors choices, you will fragment the community and remove any chance of interoperability.

If you have an opinion about any of the above you are encouraged to join in the discussions by joining the OASIS Search Web Services Technical Committee.