anchor.diff:          if List.isEmpty attr then writeTag name info w writeFunc value
           else
               w.Write('<'); w.Write(name);
  -            attr |> List.iter (fun (k, v) -> w.Write(' '); w.Write(k); w.Write("=\""); w.Write(v); w.Write("\""))
  +            attr |> List.iter (fun (k, v) -> w.Write(' '); w.Write(k); w.Write("=\""); writeAttributeValue w v; w.Write("\""))
               w.Write('>');
               writeFunc info w value
               w.Write("</"); w.Write(name); w.Write('>')
  
positive.code:     open System
      open System.IO
  
      open Extensions
      open Utils
  
  
negative.code:     /// Try to determine one of a special serialization
      /// function, i.e. Exception, Uri
      let getSpecialWriters (t : Type) = fun () ->
          if t = typeof<Uri> then
              ValueTypeSerializer.getInnerTextWriter XmlConfig.Instance.SpecialCharEncoding
              |> injectWriteTag
              |> Some
  