in reply to Updating XML while preserving formatting

This works (mostly); I found indentation on the root node breaks it but it might be right for what you're doing.

use strict; use warnings; use XML::LibXML; use Test::More tests => 2; my $parser = XML::LibXML->new(); $parser->keep_blanks(1); my $dom_one = $parser->parse_string(xml_one()); is( $dom_one->serialize(), xml_one(), "Serialized xml_one is the same as original" ); my $dom_two = $parser->parse_string(xml_two()); is( $dom_two->serialize(), xml_two(), "Serialized xml_two is the same as original" ); sub xml_one { <<""; <?xml version="1.0"?> <stuff> <andjunk> muhuminah </andjunk> </stuff> } sub xml_two { <<""; <?xml version="1.0"?> <stuff> <andjunk> muhuminah</andjunk> </stuff> } __END__ 1..2 ok 1 - Serialized xml_one is the same as original ok 2 - Serialized xml_two is the same as original

Replies are listed 'Best First'.
Re^2: Updating XML while preserving formatting
by John M. Dlugosz (Monsignor) on May 08, 2009 at 15:00 UTC
    my $parser = XML::LibXML->new(); $parser->keep_blanks(1);
    Awesome. Another reason to wish XMLlib was available on this platform.