Interface for a field activator. The field activator is responsible
for activating fields within a specific scope; the caller merely
requests the fields to be activated.
Request to activate the specified field. This method returns the
matcher for the field.
It's also important for the implementor to ensure that it marks whether a Field
is permitted to match a value--that is, to call the setMayMatch(Field, Boolean) method.
param
field The field to activate.
param
initialDepth the 0-indexed depth in the instance document at which the Selector began to match.
Sets whether the given field is permitted to match a value.
This should be used to catch instance documents that try
and match a field several times in the same scope.
param
field The field that may be permitted to be matched.
param
state Boolean indiciating whether the field may be matched.