This interface defines two signatures of the
visit method; one taking a
Node, the other a
Property. When an object implementing this interface is passed
to
Item.accept(ItemVisitor visitor) the appropriate
visit method is automatically called, depending on whether the
Item in question is a
Node or a
Property. Different implementations of this interface can be
written for different purposes. It is, for example, possible for the
visit(Node node) method to call
accept on the
children of the passed node and thus recurse through the tree performing some
operation on each
Item.