Впереди грядет Perl6 в котором многое уделено работой с XSLT поэтому пред этим надо по быстрому разобраться с XML на перле. Есть несколько молулей для работы с XML, но наиболее близким по синтаксису к DOMDocument в PHP мне показался модуль XML::DOM.
Для начала, пришлось устанавливать его из портов под FreeBSD. Под рутом итрпавился в путь
cd /usr/ports/textproc/p5-XML-DOM
и там запустил make install
После установки для теста создал простейший документ
#!/usr/bin/perl
use XML::DOM;
my $doc = XML::DOM::Document->new;
my $xml_pi = $doc->createXMLDecl ('1.0');
my $root = $doc->createElement('html');
my $body = $doc->createElement('body');
$root->appendChild($body);
print $xml_pi->toString;
print $root->toString;
Сохранив файл и дав ему права на запуск получаю вот такой вывод
<?xml version="1.0"?><html><body/></html>
Из не совсем привычных вещей это два принта для вывода одного файла. Но, как говориться, кудаж без этого в perl, было бы странно, будь оно не так. Не стоит переживать, в этом случае print служит вызовом метода класса,
print $xml_pi->toString; - вызывает метод который добавляет версию к документу
print $root->toString; - выводит сам документ