@Override public void ignorableWhitespace(XMLString text,Augmentations augs) throws XNIException {
  if (!fIncludeIgnorableWhitespace || fFilterReject) {
    return;
  }
  if (!fDeferNodeExpansion) {
    Node child=fCurrentNode.getLastChild();
    if (child != null && child.getNodeType() == Node.TEXT_NODE) {
      Text textNode=(Text)child;
      textNode.appendData(text.toString());
    }
 else {
      Text textNode=fDocument.createTextNode(text.toString());
      if (fDocumentImpl != null) {
        TextImpl textNodeImpl=(TextImpl)textNode;
        textNodeImpl.setIgnorableWhitespace(true);
      }
      fCurrentNode.appendChild(textNode);
    }
  }
 else {
    int txt=fDeferredDocumentImpl.createDeferredTextNode(text.toString(),true);
    fDeferredDocumentImpl.appendChild(fCurrentNodeIndex,txt);
  }
}

@ Override public void ignorableWhitespace ( XMLString text , Augmentations augs ) throws XNIException { if ( ! fIncludeIgnorableWhitespace || fFilterReject ) { return ; } if ( ! fDeferNodeExpansion ) { Node child = fCurrentNode . getLastChild ( ) ; if ( child != null && child . getNodeType ( ) == Node . TEXT_NODE ) { Text textNode = ( Text ) child ; textNode . appendData ( text . toString ( ) ) ; } else { Text textNode = fDocument . createTextNode ( text . toString ( ) ) ; if ( fDocumentImpl != null ) { TextImpl textNodeImpl = ( TextImpl ) textNode ; textNodeImpl . setIgnorableWhitespace ( true ) ; } fCurrentNode . appendChild ( textNode ) ; } } else { int txt = fDeferredDocumentImpl . createDeferredTextNode ( text . toString ( ) , true ) ; fDeferredDocumentImpl . appendChild ( fCurrentNodeIndex , txt ) ; } }
ignorable whitespace . for this method to be called , the document source must have some way of determining that the text containing only whitespace characters should be considered ignorable . for example , the validator can determine if a length of whitespace characters in the document are ignorable based on the element content model .
