On Mon, Aug 02, 2004 at 05:23:39PM +0200, Nicolas Mailhot wrote: > On lun, 2004-08-02 at 10:38 -0400, Konstantin Ryabitsev wrote: > > On Mon, 2004-08-02 at 14:11 +0200, Nicolas Mailhot wrote: > > > It's especially sad to see an app like evolution (which is supposed to > > > be coded by elite Gnome people) abuse gconf files in so many ways > > > they're almost as bad as a serialised binary blobs. > > > > > > (take a look at .gconf/apps/evolution/mail/%gconf.xml if you don't know > > > what I'm talking about). > > > > So, you're trying to say that it's wrong to use GCONF's XML format to > > store some more entity-escaped XML? :) > > I'm saying putting escaped content in a config file does not improve > it's overall legibility, yes. > > Or are you telling me something like : > [...] > > is human-parsable ? The purpose is not to be human parsable in that case. I don't see that being a programming error at all. It's XML, XML has to be consumed by a parser and parsers have to unescape the piece of text anyway, so I really don't see why you complain. I can give you XML examples which are just readable or unreadable. The key is that it's unicode text. > (not to mention the escaped content won't be validated by your average > xml engine since it masquerades as text data - stringvalue indeed:() If you get the content of the node once parsed and feed it a parser you will get 100% well formedness checking. BTW using "validated" there is a misusage "validating" in XML means checking conformance to a DTD or a schemas. It's precisely to be able to validate the gconf data that you need to put it as a blob inside a TEXT or CDATA section. Perfectly legitimate code in that specific case (gconf backend could be anything, LDAP, database, whatever), what is important is the functionnality of gconf independantly of the backend. I'm very annoying w.r.t. XML design rules but in that case it just make sense, sorry. Daniel -- Daniel Veillard | Red Hat Desktop team http://redhat.com/ veillard@xxxxxxxxxx | libxml GNOME XML XSLT toolkit http://xmlsoft.org/ http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/