anchor.diff:                             {owner, giant},
                              {max_items, 1},
                              {body_part, legs},
  -                           {icon, body_part},
                              ?BODY_PART_HANDLERS]},
                     {hands0, [{name, <<"hands">>},
                               {owner, giant},
                               {max_items, 1},
                               {body_part, hands},
  -                            {icon, body_part},
                               ?BODY_PART_HANDLERS]},
   
                     {pants, [{owner, giant},
                              {body_parts, [legs]},
                              {name, <<"pants_">>},
                              {desc, <<"pants">>},
  -                           {icon, clothing},
                              ?ITEM_HANDLERS]},
                     {sword, [{owner, giant},
                              {body_parts, [hands]},
                              {name, <<"sword_">>},
                              {desc, <<"sword">>},
  -                           {icon, weapon},
                              ?ITEM_HANDLERS]},
                     {scroll, [{owner, giant},
                               {body_parts, []},
                               {name, <<"scroll_">>},
                               {desc, <<"scroll">>},
  -                            {icon, book},
                               ?ITEM_HANDLERS]},
                     {shoes, [{owner, giant},
                              {body_parts, [feet]},
                              {name, <<"shoes_">>},
                              {desc, <<"shoes">>},
  -                           {icon, clothes},
                              ?ITEM_HANDLERS]},
                     {bread, [{owner, room},
                              {name, <<"bread_">>},
                              {desc, <<"a loaf of bread">>},
  -                           {icon, food},
                              ?ITEM_HANDLERS]}
                    ]).
   
  
positive.code:                            {attribute, weight1},
                             {attribute, gender1},
                             {attribute, race1},
                             {icon, person},
                             ?CHARACTER_HANDLERS]},
  
                    {height1, [{owner, giant},
                               {type, height},
                               {value, <<"4.0">>},
                               {desc, [value, <<"m tall">>]},
                               {icon, stat},
                               ?ATTRIBUTE_HANDLERS]},
  
                    {weight1, [{owner, giant},
                               {type, weight},
                               {value, <<"400.0">>},
                               {desc, [<<"weighs ">>, value, <<"kg">>]},
                               {icon, stat},
                               ?ATTRIBUTE_HANDLERS]},
  
                    {gender1, [{owner, giant},
                               {type, gender},
                               {value, <<"male">>},
                               {desc, [value]},
                               {icon, stat},
                               ?ATTRIBUTE_HANDLERS]},
  
                    {race1, [{owner, giant},
                             {type, race},
                             {value, <<"giant">>},
                             {desc, [value]},
                             {icon, stat},
                             ?ATTRIBUTE_HANDLERS]},
  
                    {legs0, %% if we name this 'legs' then 'legs' will be known as
  
negative.code:                             {owner, room},
                              %% TODO is the room property used anywhere?
                              {room, room},
                              ?CHARACTER_HANDLERS]},
  
                    {height0, [{owner, player},
                               {type, height},
                               {value, <<"2.2">>},
                               {desc, [value, <<"m tall">>]},
                               ?ATTRIBUTE_HANDLERS]},
  
                    {weight0, [{owner, player},
                               {type, weight},
                               {value, <<"128">>},
                               {desc, [<<"weighs ">>, value, <<"kg">>]},
                               ?ATTRIBUTE_HANDLERS]},
  
                    {gender0, [{owner, player},
                               {type, gender},
                               {value, <<"female">>},
                               {desc, [value]},
                               ?ATTRIBUTE_HANDLERS]},
  
                    {race0, [{owner, player},
                             {type, race},
                             {value, <<"human">>},
                             {desc, [value]},
                             ?ATTRIBUTE_HANDLERS]},
  
                    {giant, [{owner, room},
  