class LuceneDocumentStructure {

    public static Query newSeekQuery( Value... values )
    {
        BooleanQuery.Builder builder = new BooleanQuery.Builder();
        for ( int i = 0; i < values.length; i++ )
        {
            ValueEncoding encoding = ValueEncoding.forValue( values[i] );
            builder.add( encoding.encodeQuery( values[i], i ), BooleanClause.Occur.MUST );
        }
        return builder.build();
    }

    private  LuceneDocumentStructure();

}