Hi,

>From reading the code it is clear that it is designed to allow using several 
>parsers to parse a document in a sequence, until it is successfully parsed. In 
>practice, this does not work because these lines

f (parseResult != null && !parseResult.isEmpty())
        return parseResult;

break the loop even if the parsing has failed because parseResult is not empty 
anyway, it contains a ParseData with ParseStatus.FAILED.
This is easy to fix, for example, by adding a line before the two lines 
mentioned above:

if ( parseResult != null ) parseResult.filter() ;

This will remove failed ParseData objects from the parseResult and leave it 
empty if the parsing had been unsuccessful. I believe that this fix is 
important because it allows use of backup parsers as originally designed and 
thus increase index completeness.

Regards,
Arkadi


Reply via email to