XML::Feedで使うXML::Atomのas_xmlが吐くXMLにxmlnsがつきまくる件
こっちでもsyntax highlightついたんだったっけ.ということで.
自分の環境(XML-Atom-0.25)だと,なんか全部の要素にxmlnsついちゃうのが,なんとも.
とりあえず消してみたけど間違ってるかなぁ.回りくどい事してるような気がしてならない.
use XML::Atom::Base; use XML::LibXML; { my $code = \&XML::Atom::Base::as_xml; no warnings 'redefine'; *XML::Atom::Base::as_xml = sub { my $xml = $code->(@_); $xml =~ s!\s*xmlns\:default\d*="[^\"]+"!!g; # remove xmlns:default my $parser = XML::LibXML->new; $parser->clean_namespaces(1); my $doc = $parser->parse_string($xml); $doc->documentElement->setNamespace('http://www.w3.org/2005/Atom', ''); return $doc->toString(1); }; }