Using
XML::XSH2:
register-namespace a http://www.w3.org/2005/Atom ;
register-namespace y http://www.youtube.com/xml/schemas/2015 ;
register-namespace m http://search.yahoo.com/mrss/ ;
my $html := create html ;
open videos.xml ;
my $head := insert element head into $html/html;
my $title_text = /a:feed/a:title/text() ;
insert text $title_text into &{ insert element title into $head } ;
my $body := insert element body into $html/html ;
insert text $title_text into &{ insert element h3 into $body } ;
copy /a:feed/a:author/a:name/text() into &{ insert element b into $bod
+y } ;
my $list := insert element ul into $body ;
for my $entry in /a:feed/a:entry {
my $item := insert element li into $list ;
my $anchor := insert element a into $item ;
copy $entry/a:title/text() into $anchor ;
copy $entry/a:link/@href into &{ insert attribute 'href=""' into $
+anchor } ;
my $desc = $entry/m:group/m:description/text() ;
$desc ||= '--' ;
my $para := insert element p into $item ;
copy $desc into &{ insert element i into $para } ;
}
save :F html :r $html ;
map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]