final HashMap<String, Analyzer> dtAnalyzers = new HashMap<String, Analyzer>();
dtAnalyzers.put(XSDDatatype.XSD_STRING, new WhitespaceAnalyzer(LuceneTestCase.TEST_VERSION_CURRENT));
config.put(KeywordConfigurationKeys.DATATYPES_ANALYZERS, dtAnalyzers);
final NodeBooleanQuery complex = new NodeBooleanQuery();
complex.add(new NodeRegexpQuery(new Term(df, "[a-z]\\/[123]")), NodeBooleanClause.Occur.MUST);
complex.add(new NodeTermQuery(new Term(df, "/etc/init.d/")), Occur.MUST);
complex.add(new NodeTermQuery(new Term(df, "/etc/init[.]d/lucene/")), Occur.SHOULD);
this._assertSirenQuery(config, complex, "+/[a-z]\\/[123]/ +\"/etc/init.d/\" OR \"/etc\\/init\\[.\\]d/lucene/\" ");
Query re = new NodeRegexpQuery(new Term(df, "http.*"));
this._assertSirenQuery(config, re, "/http.*/");
re = new NodeRegexpQuery(new Term(df, "http~0.5"));
this._assertSirenQuery(config, re, "/http~0.5/");
re = new NodeRegexpQuery(new Term(df, "boo"));
this._assertSirenQuery(config, re, "/boo/");
this._assertSirenQuery(config, new NodeTermQuery(new Term(df, "/boo/")), "\"/boo/\"");
this._assertSirenQuery(config, new NodeTermQuery(new Term(df, "/boo/")), "\\/boo\\/");
config.put(ConfigurationKeys.DEFAULT_OPERATOR, Operator.OR);
final NodeBooleanQuery two = new NodeBooleanQuery();
two.add(new NodeRegexpQuery(new Term(df, "foo")), Occur.SHOULD);
two.add(new NodeRegexpQuery(new Term(df, "bar")), Occur.SHOULD);