* <code>false</code> otherwise.
*/
public boolean accept (Node node)
{
CompositeTag tag;
NodeList children;
boolean ret;
ret = false;
if (node instanceof CompositeTag)
{
tag = (CompositeTag)node;
children = tag.getChildren ();
if (null != children)
{
for (int i = 0; !ret && i < children.size (); i++)
if (getChildFilter ().accept (children.elementAt (i)))
ret = true;
// do recursion after all children are checked
// to get breadth first traversal
if (!ret && getRecursive ())
for (int i = 0; !ret && i < children.size (); i++)
if (accept (children.elementAt (i)))
ret = true;
}
}
return (ret);