On Sun, Jan 26, 2014 at 1:11 AM, Adam Retter <adam@exist-db.org> wrote:
> +1 "PS Think that FilteringTrigger must be renamed to SAXDocumentTrigger
> (SAXTrigger)"

Agreed, in principle. But I think there is more which should be done.
DocumentTrigger should not extend the ContentHandler and
LexicalHandler interfaces, instead SaxDocumentTrigger should extend

SaxDocumentTrigger should be changed to an interface, with the current
abstractions from FilteringTrigger placed into a class called
IdentitySaxDocumentTrigger which implements SaxDocumentTrigger.

Why two elements? I don't see requirements for that, plus there must be super.method calls and "extends" this will simplify things, so abstract class will be fine here, IMHO.

The following methods should also be moved from DocumentTrigger to

public boolean isValidating();
public void setValidating(boolean validating);

Well ... 
public void setOutputHandler(ContentHandler handler);
public void setLexicalOutputHandler(LexicalHandler handler);
public ContentHandler getOutputHandler();
public ContentHandler getInputHandler();
public LexicalHandler getLexicalOutputHandler();
public LexicalHandler getLexicalInputHandler();

this methods going to be deleted.

By doing this, we will have a clean separation between document
triggers which handle SAX events, and document triggers which do not.
This allows people to ignore SAX if they just want to implement the
simple Document Trigger events of 'before...' and 'after...'.
Dmitriy Shabanov