anchor.diff:  prod_status(json, Product) ->
   	{"status", Product#product.status}.
   
  +-spec prod_sdate(Prefix, Product) -> Result
  +	when
  +		Prefix :: erlang_term | json,
  +		Product :: list() | #product{},
  +		Result :: undefined | tuple().
  +%% @private
  +prod_sdate(erlang_term, Product) ->
  +	case lists:keyfind("startDate", 1, Product) of
  +		{_, SD} ->
  +			ocs_rest:iso8601(SD);
  +		false ->
  +			undefined
  +	end;
  +prod_sdate(json, Product) ->
  +	case Product#product.start_date of
  +		undefined ->
  +			{"startDate", ""};
  +		SD ->
  +			{"startDate", ocs_rest:iso8601(SD)}
  +	end.
  +
   -spec prod_vf(Prefix, Product) -> Result
   	when
   		Prefix :: erlang_term | json,
  
positive.code: 		Status = prod_status(erlang_term, Object),
  		ValidFor = prod_vf(erlang_term, Object),
  		Descirption = prod_description(erlang_term, Object),
  		case prod_offering_price(erlang_term, Object) of
  			{error, StatusCode} ->
  				{error, StatusCode};
  			Price ->
  				Product = #product{price = Price, name = Name, valid_for = ValidFor,
  					is_bundle = IsBundle, status = Status, description = Descirption},
  				case add_product1(Product) of
  					ok ->
  						add_product2(Name, Object);
  
negative.code: 	IsBundle = prod_isBundle(json, Prod),
  	Name = prod_name(json, Prod),
  	Status = prod_status(json, Prod),
  	StartDate = prod_sdate(json, Prod),
  	case prod_offering_price(json, Prod) of
  		{error, StatusCode} ->
  			{error, StatusCode};
  		OfferPrice ->
  			Json = {struct, [ID, Descirption, Href, StartDate,
  				IsBundle, Name, Status, ValidFor, OfferPrice]},
  			Body = mochijson:encode(Json),
  			Headers = [{content_type, "application/json"}],
  