Sponsored Content
Full Discussion: Parse XML file
Top Forums Programming Parse XML file Post 302810863 by leemalloy on Wednesday 22nd of May 2013 03:44:34 PM
Old 05-22-2013
Parse XML file

How do I get the field info for tags ID, NAME, DESCRIPTION. Below is my current code put I can't get beyond the first_child of the file.

Code:
use strict;
use warnings;
use XML::SimpleImage;
use DataImage::Dumper;
use XML::Twig;

my $t=XML::Twig->new(twig_handlers => {DATA_RECORD => \&dr});
$t->parsefile('C:\\Documents and Settings\fmall\\Desktop\\garth.xml');

sub dr {
my ($t, $dr) = @_;
print $dr->first_child('ID')->text,"\n";
print $dr->first_child('NAME')->text, "\n";
#print $dr->children('DESCRIPTION')->text(), "\n";
print $dr->sibling(1,'DETAILS')->text, "\n";
# print $item->first_child('DESCRIPTION')->text(),"\n";
print "\n";
}

Code:
<main>
<DATA_RECORD>
<ID>637</ID>
<NAME>flewatchr_ntfymmscap_up_asuser</NAME>
<FOLDERID>1054</FOLDERID>
<MODIFIED>11/8/2007 5:59:51 PM</MODIFIED>
<DETAILS>
<DEPENDENCY_FILE NAME="flewatchr_ntfymmscap_up_asuser" UID="4CD4ED0C22D5">
<AGENT AGENTTYPE="REMOTE" LOGIC="" UID="C9004C97163C"/>
<DESCRIPTION>I NEED THIS INFO</DESCRIPTION> 
<ATTRIBUTES>
<WATCH_SIZE>YES</WATCH_SIZE>
<VALUE>60</VALUE>
<OPERATION>STABLE</OPERATION>
<SOURCE_PATH>\\fs06\sys\misdata\xfer\backup\ntfmmsup[SYSTEM.VARIABLE.day_number].txt</SOURCE_PATH>
</ATTRIBUTES>
</DEPENDENCY_FILE>
</DETAILS>
</DATA_RECORD>
</main>


Last edited by jim mcnamara; 05-22-2013 at 05:45 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to parse a XML file using PERL and XML::DOm

I need to know the way. I have got parsing down some nodes. But I was unable to get the child node perfectly. If you have code please send it. It will be very useful for me. (0 Replies)
Discussion started by: girigopal
0 Replies

2. Shell Programming and Scripting

Parse XML file

Hi, I need to parse the following XML data enclosed in <a> </a> XML tag using shell script. <X> ..... </X> <a> <b> <c>data1</c> <c>data2</c> </b> <d> <c>data3</c> </d> </a> <XX> ... </XX> (5 Replies)
Discussion started by: viki
5 Replies

3. Shell Programming and Scripting

Parse String in XML file

Hello All, I am new to this and I need to parse an XML file. Here's the XML Input File: <Report version="1.2"> <summary fatals="0" testcases="1" expected_fails="0" unexpected_passes="0" warnings="9" tests="21" errors="0" fails="1" passes="20" /> <testresult... (4 Replies)
Discussion started by: racbern
4 Replies

4. Shell Programming and Scripting

How can I parse xml file?

How can I parse file containing xml ? I am sure that its best to use perl - but my perl is not very good - can someone help? Example below contents of file containing the xml - I basically want to parse the file and have each field contained in a variable.. ie. I want to store the account... (14 Replies)
Discussion started by: frustrated1
14 Replies

5. Shell Programming and Scripting

Parse an XML task list to create each task.xml file

I have an task definition listing xml file that contains a list of tasks such as <TASKLIST <TASK definition="Completion date" id="Taskname1" Some other <CODE name="Code12" <Parameter pname="Dog" input="5.6" units="feet" etc /Parameter> <Parameter... (3 Replies)
Discussion started by: MissI
3 Replies

6. Emergency UNIX and Linux Support

How to parse the following xml file

Hi, I have the following file Example.xml <?xml version="1.0" encoding="iso-8859-1"?> <html><set label="09/07/29" value="1241.90"/> </html> Can any one help me in parsing this xml file I want to retrive the attribute values of the tag set Example I want to... (3 Replies)
Discussion started by: Raji_gadam
3 Replies

7. Shell Programming and Scripting

parse xml file

Hello all, Given the following extract from a xml file with multiple <JOB> .... </JOB> entries <JOB APPLICATION="APP" APR="0" AUG="0" AUTHOR="AUT" AUTOARCH="0" CMDLINE="/tmp/test1 %%var" CONFIRM="1" CREATION_DATE="20100430" CREATION_TIME="130739" ... (2 Replies)
Discussion started by: cabrao
2 Replies

8. UNIX for Dummies Questions & Answers

Parse xml file

HI Guys, Input .XML <xn:MeContext id="L0307"> <xn:ManagedElement id="1"> <xn:VsDataContainer id="1"> <xn:attributes> <xn:vsDataType>vsDataENodeBFunction</xn:vsDataType> ... (3 Replies)
Discussion started by: pareshkp
3 Replies

9. Shell Programming and Scripting

Parse XML File.

HI Guys I have Below XML File : <xn:SubNetwork id="XYZ"> <xn:SubNetwork id="C01"> <xn:MeContext id="CO1"> <xn:ManagedElement id="1"> <un:RncFunction id="1"> <un:UtranCell id="NY431"> ... (2 Replies)
Discussion started by: pareshkp
2 Replies

10. Shell Programming and Scripting

Parse xml file

I am trying to create a shell script that will parse an xml file (file attached). awk '/Id v=/ { print }' Test.xml | sed 's!<Id v=\"\(.*\)\"/>!\1!' > output.txt An output.txt file is created but it is empty. It should contain the value 222159 in it. Thanks. (7 Replies)
Discussion started by: cmccabe
7 Replies
Template::Plugin::XML::Style(3pm)			User Contributed Perl Documentation			 Template::Plugin::XML::Style(3pm)

NAME
Template::Plugin::XML::Style - Simple XML stylesheet transfomations SYNOPSIS
[% USE xmlstyle table = { attributes = { border = 0 cellpadding = 4 cellspacing = 1 } } %] [% FILTER xmlstyle %] <table> <tr> <td>Foo</td> <td>Bar</td> <td>Baz</td> </tr> </table> [% END %] DESCRIPTION
This plugin defines a filter for performing simple stylesheet based transformations of XML text. Named parameters are used to define those XML elements which require transformation. These may be specified with the USE directive when the plugin is loaded and/or with the FILTER directive when the plugin is used. This example shows how the default attributes "border="0"" and "cellpadding="4"" can be added to <table> elements. [% USE xmlstyle table = { attributes = { border = 0 cellpadding = 4 } } %] [% FILTER xmlstyle %] <table> ... </table> [% END %] This produces the output: <table border="0" cellpadding="4"> ... </table> Parameters specified within the USE directive are applied automatically each time the "xmlstyle" FILTER is used. Additional parameters passed to the FILTER directive apply for only that block. [% USE xmlstyle table = { attributes = { border = 0 cellpadding = 4 } } %] [% FILTER xmlstyle tr = { attributes = { valign="top" } } %] <table> <tr> ... </tr> </table> [% END %] Of course, you may prefer to define your stylesheet structures once and simply reference them by name. Passing a hash reference of named parameters is just the same as specifying the named parameters as far as the Template Toolkit is concerned. [% style_one = { table = { ... } tr = { ... } } style_two = { table = { ... } td = { ... } } style_three = { th = { ... } tv = { ... } } %] [% USE xmlstyle style_one %] [% FILTER xmlstyle style_two %] # style_one and style_two applied here [% END %] [% FILTER xmlstyle style_three %] # style_one and style_three applied here [% END %] Any attributes defined within the source tags will override those specified in the style sheet. [% USE xmlstyle div = { attributes = { align = 'left' } } %] [% FILTER xmlstyle %] <div>foo</div> <div align="right">bar</div> [% END %] The output produced is: <div align="left">foo</div> <div align="right">bar</div> The filter can also be used to change the element from one type to another. [% FILTER xmlstyle th = { element = 'td' attributes = { bgcolor='red' } } %] <tr> <th>Heading</th> </tr> <tr> <td>Value</td> </tr> [% END %] The output here is as follows. Notice how the end tag "</th>" is changed to "</td>" as well as the start tag. <tr> <td bgcolor="red">Heading</td> </tr> <tr> <td>Value</td> </tr> You can also define text to be added immediately before or after the start or end tags. For example: [% FILTER xmlstyle table = { pre_start = '<div align="center">' post_end = '</div>' } th = { element = 'td' attributes = { bgcolor='red' } post_start = '<b>' pre_end = '</b>' } %] <table> <tr> <th>Heading</th> </tr> <tr> <td>Value</td> </tr> </table> [% END %] The output produced is: <div align="center"> <table> <tr> <td bgcolor="red"><b>Heading</b></td> </tr> <tr> <td>Value</td> </tr> </table> </div> AUTHOR
Andy Wardley COPYRIGHT
Copyright (C) 2001-2006 Andy Wardley. All Rights Reserved. This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. SEE ALSO
Template::Plugin perl v5.8.8 2008-03-01 Template::Plugin::XML::Style(3pm)
All times are GMT -4. The time now is 07:48 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy