###### @rss[local_file;remote_file][src;xml;list;now;date;title;link;description] # проверяем локальный файл, - если его дата изменения более чем на # день старее текущего времени, грузим его с внешнего сервера $src[^file::stat[$local_file]] $now[^date::now[]] ^if($src.mdate < $now-1){ # пытаемся загрузить и проверить внешний XML файл и сохранить его # если не удается загрузка и/или проверка, обрабатываем исключение и ничего не делаем ^try{ # Загрузка внешнего файла $src[^file::load[text;$remote_file]] # проверка, - пытаемся создать объект класса xdoc из внешнего XML $xml[^xdoc::create{^untaint{$src.text}}] ^src.save[text;$local_file] }{ $exception.handled(1) } } # всегда создаем объект класса xdoc из XML файла на локальном диске # разумеется он должен всегда существовать. При удачной загрузке с # внешнего сервера, он ещё и постоянно обновляется $xml[^xdoc::load[$local_file]] # хэш элементов item из файла $list[^xml.select[/rss/channel/item]] # Название канала
^xml.selectString[string(/rss/channel/description)]
# Список материалов