Hi Bruce,

On Sat, Jul 25, 2015 at 08:12:39AM -0400, Bruce Miller wrote:
> Hi all;
>   I find unindented XML to be virtually impossible
> to debug, but...
  
  :-)

> Frankly, I'm impressed at how good the built-in heuristic
> for formatting works (apparently the rule is: once it sees
> mixed content, it turns off indentation below that level).
> Of course, it isn't "correct" and is occasionally giving me
> really messy problems.
> 
> In principle, and perhaps naively, it seems the Correct rule
> is rather simple, provided you have access to the DTD/Schema/whatever.

 The only correct rule is if there is a character on input it goes
on output, the indentation is a trick but not what the standard suggests

> Namely, if an element allows mixed content, do not add whitespace.
> (and you CAN apply indentation on descendants that do NOT allow mixed
> content).
> 
> Is there some switch or method that I'm overlooking to
> achieve this effect?

  no, indeed this would make sense ... assuming you have a schemas, etc...
but when you serialize a document while the DTD *might* be available
you can't really find out he RNG or XSD associated (or trust them, download
them, etc....) it open a can of worm TBH.

> Is this likely to be relatively easy
> to implement? (I've managed to avoid learning libxml2's C API,
> as I use it via Perl's XML::LibXML.)
> 
> I'd hate to have to give up indentation or write
> my own serializer....

  have you looked at xmllint --pretty 2

it does pretty printing but without adding (or removing) any significant
character, it uses only the non-significant spaces  from within markup
which are discarded at parsing time.

  I know it's not what you asked for but might still be useful :-)

Daniel

> Thanks;
> bruce
> _______________________________________________
> xml mailing list, project page  http://xmlsoft.org/
> xml@gnome.org
> https://mail.gnome.org/mailman/listinfo/xml

-- 
Daniel Veillard      | Open Source and Standards, Red Hat
veill...@redhat.com  | libxml Gnome XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | virtualization library  http://libvirt.org/
_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
xml@gnome.org
https://mail.gnome.org/mailman/listinfo/xml

Reply via email to