code: @Override
      public Query query(Schema schema) {
          BooleanQuery luceneQuery = new BooleanQuery();
          luceneQuery.setBoost(boost);
          for (Condition query : must) {
              luceneQuery.add(query.query(schema), Occur.MUST);
          }
          for (Condition query : should) {
              luceneQuery.add(query.query(schema), Occur.SHOULD);
          }
          for (Condition query : not) {
              luceneQuery.add(query.query(schema), Occur.MUST_NOT);
          }
          return luceneQuery;
      }
docs: {@inheritDoc}