Alvis::Pipeline 0.11 review
DownloadAlvis::Pipeline is a Perl extension for passing XML documents along the Alvis pipeline. SYNOPSIS use Alvis::Pipeline; $in =
|
|
Alvis::Pipeline is a Perl extension for passing XML documents along the Alvis pipeline.
SYNOPSIS
use Alvis::Pipeline;
$in = new Alvis::Pipeline::Read(host => "harvester.alvis.info",
port => 16716,
spooldir => "/home/alvis/spool");
$out = new Alvis::Pipeline::Write(port => 29168);
while ($xml = $in->read(1)) {
$transformed = process($xml);
$out->write($transformed);
}
This module provides a simple means for components in the Alvis pipeline to pass documents between themselves without needing to know about the underlying transfer protocol. Pipe objects may be created either for reading or writing; components in the middle of the pipeline will create one of each. Pipes support exactly one method, which is either read() or write() depending on the type of the pipe. The granularity of reading and writing is the XML document; neither smaller fragments nor larger aggregates can be transferred.
The documents expected to pass through this pipeline are those representing documents acquired for, and being analysed by, Alvis. These documents are expressed as XML contructed according to the specifications described in the Metadata Format for Enriched Documents. However, while this is the motivating example pipeline that led to the creation of this module, there is no reason why other kinds of documents should not also be passed through pipeline using this software.
The pipeline protocol is described below, to facilitate the development of indepedent implementations in other languages.
Requirements:
Perl
Alvis::Pipeline 0.11 search tags