[prev in list] [next in list] [prev in thread] [next in thread]
List: perl-beginners
Subject: XML Sructure creation not working
From: Punit Jain <contactpunitjain () gmail ! com>
Date: 2015-11-20 22:24:23
Message-ID: CAFXWBQLf=HANHiXAEhw+XM3LAG9md_fL+z6_c3yW0LZX5xRnjw () mail ! gmail ! com
[Download RAW message or body]
Hi,
I am facing an issue with my script while creating a XML .
Below is required structure :-
<opt>
<rule disabled="false" logged="false">
<appliedToList>
<appliedTo>
<name>xyz</name>
<isValid>true</isValid>
<type>Distri</type>
<value>123</value>
</appliedTo>
</appliedToList>
</rule>
</opt>
However I am getting below o/p
<opt>
<rule name="appliedToList">
<appliedTo>
<name>xyz</name>
<isValid>true</isValid>
<type>Distri</type>
<value>123</value>
</appliedTo>
</rule>
</opt>
My current code is :-
#!/usr/bin/perl
use strict;
use warnings;
use FindBin qw();
use lib "$FindBin::Bin/../lib";
use IO::Handle;
use XML::Simple;
use Data::Dumper ;
my $xmls = XML::Simple->new(ForceArray => 1);
my $contents = { rule =>{appliedToList=> { appliedTo => [ ] } } };
push @{ $contents->{rule}->{appliedToList}->{appliedTo} }, {
name => ['test'],
value => ['123'],
name => [ 'xyz' ],
type => ['Distri'],
isValid => [ 'true' ],
};
open my $xml, '>', "output.xml" or die $!;
$xml->print($xmls->XMLout($contents));
$xml->close();
Any insights on what I am doing wrong ?
Regards,
Punit
[Attachment #3 (text/html)]
<div dir="ltr">Hi,<div><br></div><div>I am facing an issue with my script while \
creating a XML .</div><div><br></div><div>Below is required structure \
:-</div><div><br></div><div><div><opt></div><div><rule \
disabled="false" logged="false"><br></div><div> \
<appliedToList></div><div> <appliedTo></div><div> \
<name>xyz</name></div><div> \
<isValid>true</isValid></div><div> \
<type>Distri</type></div><div> \
<value>123</value></div><div> </appliedTo></div><div> \
</appliedToList></div><div></rule></div><div></opt></div></div><div><br></div><div>However \
I am getting below o/p</div><div><br></div><div><div><opt></div><div> \
<rule name="appliedToList"></div><div> \
<appliedTo></div><div> <name>xyz</name></div><div> \
<isValid>true</isValid></div><div> \
<type>Distri</type></div><div> \
<value>123</value></div><div> </appliedTo></div><div> \
</rule></div><div></opt></div></div><div><br></div><div><br></div><div>My \
current code is :-</div><div><br></div><div><div>#!/usr/bin/perl</div><div><br></div><div> \
use strict;</div><div> use warnings;</div><div> use FindBin qw();</div><div> \
use lib "$FindBin::Bin/../lib";</div><div> use IO::Handle;</div><div> \
use XML::Simple;</div><div>use Data::Dumper ;</div><div><br></div><div> my $xmls = \
XML::Simple->new(ForceArray => 1);</div><div><br></div><div> my \
$contents = { rule =>{appliedToList=> { appliedTo => [ ] } } \
};</div><div><br></div><div> push @{ \
$contents->{rule}->{appliedToList}->{appliedTo} }, {</div><div> \
name => ['test'],</div><div> value => \
['123'],</div><div> name => [ 'xyz' \
],</div><div> type => ['Distri'],</div><div> \
isValid => [ 'true' ],</div><div> \
};</div><div><br></div><div> open my $xml, '>', \
"output.xml" or die $!;</div><div> \
$xml->print($xmls->XMLout($contents));</div><div> \
$xml->close();</div></div><div><br></div><div>Any insights on what I am doing \
wrong ?</div><div><br></div><div>Regards,</div><div>Punit</div></div>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic