anchor.diff:      [ escape_props_check(L, Options) || L <- V ];
   escape_props_check1(<<"website">>, V, _Options) ->
       escape_value(sanitize_uri(unescape(V)));
  +escape_props_check1(<<"@id">>, V, _Options) ->
  +    escape_value(sanitize_uri(unescape(V)));
   escape_props_check1(<<"is_a">>, L, Options) when is_list(L) ->
       sanitize_list_check(L, Options);
   escape_props_check1(<<"is_", _/binary>>, V, _Options) ->
  
positive.code: sanitize_type(<<"list">>, V, Options) -> sanitize_list(V, Options);
  sanitize_type(<<"int">>, V, _Options) -> sanitize_int(V);
  sanitize_type(<<"unsafe">>, V, _Options) -> V;
  sanitize_type(_, V, _Options) -> escape_value(V).
  
  sanitize_list(L, Options) when is_list(L) ->
  
negative.code: escape_link([]) ->
      <<>>;
  escape_link(Text) ->
      case re:run(Text,
              "\\b(([\\w-]+://?|www[.])[^\\s()<>]+(?:\\([\\w\\d]+\\)|([^[:punct:]\\s]|/)))",
              [{capture, first, index}, global])
      of
          {match, Matches} ->
              Matches1 = [ hd(M) || M <- Matches ],
              nl2br(iolist_to_binary(make_links1(0, Matches1, z_convert:to_list(Text), [])));
  