SRU (Search/Retrieval Using URL)


Summary of the Differences Between SRU Versions 1.2 and 2.0

  1. Query Type. In SRU 1.1, the only query type that may be used is CQL. In 2.0, other query types may be used. See .
  2. Sorting.  In SRU 1.1, sorting was part of the protocol.  In 1.2 it was removed from the protocol and made a function of CQL.  In 2.0 it is a function of both. (The reason is that now you can use a query language other than CQL, and that query language might not support sorting.) See
  3. Faceted Search.  New in 2.0.  See
  4. Stylesheet Rendering.  In SRU 1.2, a stylesheet may be applied to results, but it must be applied by the client  (the client supplies the stylesheet link, and the server simply attached it as a processing instruction in the XML).  In 2.0 the client may request that the server apply the stylesheet and return formatted results.  See
  5. Response Format. In SRU 1.2 there is a single response format defined and all responses must be in that format.  In 2.0 the client may request an alternative format.  See
  6. Record packing. Record packing is defined in SRU 1.2 but completely re-defined in 2.0. See  .
  7. Result Set Time to Live. In SRU 1.2 the client can supply the parameter resultSetTTL, however no mechanism is provided for the server to acknowledge it.  In 2.0, response element <resultSetTTL>  is added. See
  8. Result Count Precision.  In SRU 2.0 response element<resultCountPrecision> is defined. It allows the server to indicate or estimate the accuracy of the result count as reported by response element  <numberOfRecordselement >. See
  9. Search Result Analysis.  In SRU 2.0 The response may provide analysis of the search results. See