Class XmlQParserPlugin

  • All Implemented Interfaces:
    AutoCloseable, SolrInfoBean, SolrMetricProducer, NamedListInitializedPlugin

    public class XmlQParserPlugin
    extends QParserPlugin
    The XmlQParserPlugin extends the QParserPlugin and supports the creation of queries from XML.

    Example:

     <BooleanQuery fieldName="description">
     <Clause occurs="must">
     <TermQuery>shirt</TermQuery>
     </Clause>
     <Clause occurs="mustnot">
     <TermQuery>plain</TermQuery>
     </Clause>
     <Clause occurs="should">
     <TermQuery>cotton</TermQuery>
     </Clause>
     <Clause occurs="must">
     <BooleanQuery fieldName="size">
     <Clause occurs="should">
     <TermsQuery>S M L</TermsQuery>
     </Clause>
     </BooleanQuery>
     </Clause>
     </BooleanQuery>
     
    You can configure your own custom query builders for additional XML elements. The custom builders need to extend the SolrQueryBuilder or the SolrSpanQueryBuilder class.

    Example solrconfig.xml snippet:

    <queryParser name="xmlparser" class="XmlQParserPlugin">
     <str name="MyCustomQuery">com.mycompany.solr.search.MyCustomQueryBuilder</str>
     </queryParser>