anchor.diff:  	%% Charset.
   	charsets_p = [] :: [{binary(), integer()}],
   	charset_a :: undefined | binary(),
  +
  +	%% Whether the resource exists.
  +	exists = false :: boolean(),
   
   	%% Cached resource calls.
   	etag :: undefined | no_call | {strong | weak, binary()},
  
positive.code: 			{error, 500, Req};
  		{halt, Req2, HandlerState2} ->
  			terminate(Req2, State#state{handler_state=HandlerState2});
  		{true, Req2, HandlerState2} ->
  			State2 = State#state{handler_state=HandlerState2},
  			next(Req2, State2, OnTrue);
  		{false, Req2, HandlerState2} ->
  			State2 = State#state{handler_state=HandlerState2},
  			respond(Req2, State2, 422);
  
negative.code: 	is_conflict(Req, State);
  method(Req, State=#state{method=Method})
  		when Method =:= <<"POST">>; Method =:= <<"PATCH">> ->
  	accept_resource(Req, State);
  method(Req, State=#state{method=Method})
  		when Method =:= <<"GET">>; Method =:= <<"HEAD">> ->
  	set_resp_body_etag(Req, State);
  