Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer

Re: removing namespaces with XML::Twig?

by mirod (Canon)
on Jun 12, 2012 at 07:08 UTC ( #975702=note: print w/ replies, xml ) Need Help??

in reply to removing namespaces with XML::Twig?

As mentioned above, you need to set each tag to a non-prefixed version of itself.

_all_ triggers a handler on each tag, tag gives you the tag name and set_tag sets it:

#!/usr/bin/perl use strict; use warnings; use XML::Twig; XML::Twig->new( start_tag_handlers => { _all_ => sub { my $tag= $_->ta +g; $tag=~ s{^[^:]*:}{}; $_->set_tag( $tag); } }, keep_spaces => 1, # to keep for +mating ) ->parse( \*DATA) ->print; __DATA__ <a:houses> <a:house> <a:sq_footage/> <a:address/> </a:house> <a:house> <a:sq_footage/> <a:address/> </a:house> </a:houses>

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://975702]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (2)
As of 2016-08-25 04:59 GMT
Find Nodes?
    Voting Booth?
    The best thing I ever won in a lottery was:

    Results (353 votes). Check out past polls.