Samuel thinks we could stay with XML and reimplement our own
parsing/dumping without libxml2.
My feeling about this is:
+ We would have a single file format for import/export.
+ Saving would likely be easy (copy-paste from the current code and/or
from the JSON export)
- Parsing would require some work (the libxml2-based parser isn't easy
to modify, but we could adapt the JSON parser)
- Encoding may be annoying. libxml2 does a lot of things to manage
strings properly. There's not a lot of special character in a usual XML
output, but there can be (because the user can annotate the objects).
- I am a bit afraid that we would go from a well-working XML support to
something much less reliable (do we need to be fully XML compliant so
that external programs can load our XML files and play with them?)