Re: Help with accessing an unknown set of data generated by XML::Simple
Dale Puckett <[email protected]> Sat, 18 Feb 2012 02:10:25 +0000
| Newsgroups | gmane.comp.lang.perl.xml |
|---|---|
| Message-ID | <CB646476.1B191%[email protected]> |
Thank you Paulo, I have purchased that book and am starting to work through it. Thanks for the tips. Dale On 2/17/12 6:51 PM, "Paulo SantAnna" <[email protected]> wrote: >> But now, I would like to move the quality of my Perl programs up a >>notch and use some of the standard modules to guarantee good XML output. > >Take a look at the Perl & XML book from O'Reilly, also I think the >XML::Smart module has more resources than XML::Simple and handle >better more >complex docs. Other good candidates depending on your task are >XML::XPath and XML:Twig (for large docs and using callbacks) > >Thanks, > >Paulo > >On Fri, Feb 17, 2012 at 2:33 PM, Stephen Wilcoxon <[email protected]> >wrote: >> I think what you want to do should be doable. However, I'm not quite >> following your descriptions. Could you provide a sample $xmldata, >> what the placeholders are you're looking for in it, and what you want >> the output XML to be (or what you want the $xmldata to be prior to >> output)? >> >> On Fri, Feb 17, 2012 at 16:26, Dale Puckett <[email protected]> >>wrote: >>> I have been working with XML for several years now and have always >>>been able to get the job done. But now, I would like to move the >>>quality of my Perl programs up a notch and use some of the standard >>>modules to guarantee good XML output. >>> >>> Unfortunately, I've hit a stumbling block and can't seem to get my >>>head around the solution. >>> >>> I want to read the data from an XML Sample file with XMLin and then be >>>able to access it and manipulate it by retrieving values from our >>>database, asset files and other sources and putting the retuned values >>>back in the XML in place of the placeholders I use in the XML Sample >>>file. Thee placeholders actually tell me where to go to get the data >>>that I am going to return for each ad scheduled for a particular day. >>> >>> Here's what I have tried so far. >>> >>> ----- >>> use strict; >>> use feature 'say'; >>> use XML::Simple; >>> use Data::Dumper; >>> >>> my $xmldata = XMLin('files/test.xml', ForceArray => 1, KeepRoot => 1); >>> my %data = Dumper ($xmldata); >>> >>> my $href = \%data; >>> >>> for my $key (keys %{$href}){ >>> say $key => ${$href}{$key}; >>> say $key => ${$href}{value} >>> } >>> ----- >>> >>> What I want to do is get a list of keys with the values in the XML >>>Sample file into memory so I can access them individual, get the data >>>required for any particular node and eventually write out a complete >>>file with all of the information returned for each ad scheduled that >>>day. >>> >>> The code above returns the same answer as: >>> >>> print Dumper ($xmldata); >>> >>> I've read several tutorials regarding references but I cannot seem to >>>get my head wrapped around it. Does anyone know of a site where I can >>>find example code used by someone trying to accomplish the same task? >>> >>> I already have the code to get the data and write it out. I just need >>>to be able to analyze the XML Sample and write a program to output it >>>for each ad running on a given day. >>> >>> All the tutorials and sample code I have found so far all assumes you >>>know the names of the XML elements. In this case, I don't, and in fact >>>they are different for every project I do so It would be a very long >>>and tedious process to hand code a program to access the keys by hand. >>> >>> All help will really be appreciated. >>> >>> Thanks, >>> >>> Dale >>> ----- >>> Dale L. Puckett, Director of Operations >>> Midwest Division, Brainworks Software Development Corporation >>> 7570 West 21st Street North, Building 1010C, Wichita, KS 67205 >>> [email protected], 631-963-5555 >>> >>> _______________________________________________ >>> Perl-XML mailing list >>> [email protected] >>> To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs >> _______________________________________________ >> Perl-XML mailing list >> [email protected] >> To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs _______________________________________________ Perl-XML mailing list [email protected] To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs