anchor.diff:                                , Unexpected
                                 , Callbacks
                                 );
  +
   %% Expected something else
   validate(ParentKey, E, A, Unexpected, Callbacks) ->
     validate_simple(ParentKey, E, A, Unexpected, Callbacks).
  
positive.code:            , Keys
             ).
  
  
  %% Validate when unexpected values show up
  %% Expected anything
  validate_simple(_Key, undefined = _E, _A, ?MATCH_ANY, _Callbacks) ->
    {pass, []};
  %% validate_simple(_Key, [] = _E, _A, ?MATCH_ANY) ->
  %%   {pass, []};
  %% Not expected and undefined
  validate_simple( _Key
                 , ?UNEXPECTED = _E
  
negative.code:                , _Callbacks
                 ) ->
    {pass, []};
  
  %% Not expected
  validate_simple(Key, undefined = E, A, ?UNEXPECTED, _Callbacks) ->
    {unexpected, {Key, E, A}};
  
  %% Expected undefined
  validate_simple(Key, undefined = _E, A, Unexpected, Callbacks) ->
    validate_primitive(Key, Unexpected, A, Callbacks);
  
  %% Expected but undefined
  validate_simple(Key, E, undefined = A, _Unexpected, _Callbacks) ->
    {not_equal, {Key, E, A}};
  
  %% Otherwise
  validate_simple(Key, E, A, _Unexpected, Callbacks) ->
    validate_primitive(Key, E, A, Callbacks).
  