anchor.diff:      BinProperty = list_to_binary(Property),
       case re:split(Col, "[~]", [{return,list},unicode]) of
           [] ->
  -            {BinProperty, null};
  +            {BinProperty, null_null_null};
           [Token] ->
               {BinProperty, to_json_object(Type, Token, 0)};
           Tokens when is_list(Tokens) ->
               {BinProperty, [to_json_object(Type, T, 0) || T <- Tokens]}
       end.
   
  +to_json_object(_, "\"\"", _D)-> null;
   to_json_object('ST', Col, _D)-> unicode:characters_to_binary(Col);
   to_json_object('TX', Col, _D)-> unicode:characters_to_binary(Col);
   to_json_object('FT', Col, _D)-> unicode:characters_to_binary(Col);
  
positive.code:             {Tokens, _}  = lists:split(ShortLen, Tokens0),
  
              Data0 = lists:map(fun({{Property, _Type}, []}) ->
                                        {klib:maybe_binary(Property), null};
                                   ({{Property, Type}, Tok}) ->
                                        {klib:maybe_binary(Property),
                                         to_json_object(Type, Tok, Depth+1)}
                                end,
                                lists:zip(TypeDef, Tokens)),
              Data = lists:filter(fun({_,null}) -> false;
                                     (_) -> true end, Data0),
              {Data} %% jsone requres {_} as JSON object
      end.
  
negative.code: 
              Data0 = lists:map(fun({{Property, {maybe, _Type}, _Length, _Text}, ""}) ->
                                        %% ok to skip
                                        {Property, null_null_null};
                                   ({{Property, {maybe, Type}, Length, _Text}, Col}) ->
                                        to_json_object(Property, Type, Length, Col);
  
  