MyXML – генератор XML

На днях озадачился небходимостью сгенерировать небольшой XML документ средствами Perl, но лезть в дебри CPAN, в поисках подходящих модулей стало лень. С другой стороны, обходиться банальным «print» тоже не хотелось, так как время от времени генерировать XML просто необходимо. Посему открыл текстовый редактор и начал ваять, а точнее доводить до ума некогда начатый, но так и не дописанный pakage, позволяющий генерировать простой XML. Не на что выдающееся я естественно претендовать не собираюсь, но показать что в итоге получилось почему то захотелось.
Итак, сам pakage можно скачать тут, а вот простой пример того, что с ним можно делать:

#!/usr/bin/perl
use strict;
use base::MyXML;
our $top = MyXML->GXM(«1.0″,»utf-8″)->{«header»};
our $tag = MyXML->GXD(
«content»,
join(»,
MyXML->GXDM(«elem»,['type=app','name="Console"'],)->{«result»},
MyXML->GXDM(«elem»,['type=app','name="Editor"'],)->{«result»},
MyXML->GXDM(«elem»,['type=app','name="Player"'],)->{«result»},
),
['name="Soft"'],
)->{«result»}
open(FH,»>data.xml»);
print (FH $top.»n»);
print (FH $tag.»n»);
close(FH);

в итоге получился такой вот документ:

<?xml version=»1.0″ encoding=»utf-8″?>
<content name=»Soft»>
<elem type=»app» name=»Console» id=»1.1″ />
<elem type=»app» name=»Editor» id=»1.2″ />
<elem type=»app» name=»Player» id=»1.3″ />
</content>

На последок все же пару слов о MyXML. В распоряжении разработчика предоставляются 3 метода (пока 3 ;) , а именно GXM(формирующий заголовок документа), GXD(формирующий открывающий, закрывающий теги, атрибуты по необходимости, и собственно, то, что между тегами заключено) и GXDM(формирующий «пустой тег» с атрибутами по необходимости).

Вы можете отслеживать комментарии к этой записи с помощью RSS 2.0. Вы можете оставить комментарий, или использовать trackback с вашего сайта.

Добавить комментарий

XHTML: Можно использовать эти теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>