METS::Files - Class for METS files manipulation.
use METS::Files; my $obj = METS::Files->new( 'mets_data' => $mets_data, ); my @files = $obj->get_use_files($use); my @types = $obj->get_use_types;
new()
Constructor.
mets_data
METS data. Parameter is required. Default value is undef.
get_use_files($use)
Get "USE" files. Returns array with files.
get_use_types()
Get "USE" types. Returns array with types.
new(): Parameter 'mets_data' is required. From Class::Utils::set_params(): Unknown parameter '%s'.
use strict; use warnings; use Data::Printer; use METS::Files; use Perl6::Slurp qw(slurp); # Arguments. if (@ARGV < 1) { print STDERR "Usage: $0 mets_file\n"; exit 1; } my $mets_file = $ARGV[0]; # Get mets data. my $mets_data = slurp($mets_file); # Object. my $obj = METS::Files->new( 'mets_data' => $mets_data, ); # Get files. my $files_hr; foreach my $use ($obj->get_use_types) { $files_hr->{$use} = [$obj->get_use_files($use)]; } # Dump to output. p $files_hr; # Output without arguments like: # Usage: __SCRIPT__ mets_file
use strict; use warnings; use Data::Printer; use METS::Files; # Example METS data. my $mets_data = <<'END'; <?xml version="1.0" encoding="UTF-8"?> <mets xmlns:xlink="http://www.w3.org/TR/xlink"> <fileSec> <fileGrp ID="IMGGRP" USE="Images"> <file ID="IMG00001" CREATED="2006-06-20T12:00:00" ADMID="IMGPARAM00001" MIMETYPE="image/tiff" SEQ="1" SIZE="5184000" GROUPID="1"> <FLocat LOCTYPE="URL" xlink:href="file://./003855/003855r.tif" /> </file> <file ID="IMG00002" CREATED="2006-06-20T12:00:00" ADMID="IMGPARAM00002" MIMETYPE="image/tiff" SEQ="2" SIZE="5200228" GROUPID="2"> <FLocat LOCTYPE="URL" xlink:href="file://./003855/003855v.tif" /> </file> </fileGrp> <fileGrp ID="PDFGRP" USE="PDF"> <file ID="PDF00001" CREATED="2006-06-20T12:00:00" ADMID="IMGPARAM00001" MIMETYPE="text/pdf" SEQ="1" SIZE="251967" GROUPID="1"> <FLocat LOCTYPE="URL" xlink:href="file://./003855/003855r.pdf" /> </file> <file ID="PDF00002" CREATED="2006-06-20T12:00:00" ADMID="IMGPARAM00002" MIMETYPE="text/pdf" SEQ="2" SIZE="172847" GROUPID="2"> <FLocat LOCTYPE="URL" xlink:href="file://./003855/003855v.pdf" /> </file> </fileGrp> </fileSec> </mets> END # Object. my $obj = METS::Files->new( 'mets_data' => $mets_data, ); # Get files. my $files_hr; foreach my $use ($obj->get_use_types) { $files_hr->{$use} = [$obj->get_use_files($use)]; } # Dump to output. p $files_hr; # Output: # \ { # Images [ # [0] "file://./003855/003855r.tif", # [1] "file://./003855/003855v.tif" # ], # PDF [ # [0] "file://./003855/003855r.pdf", # [1] "file://./003855/003855v.pdf" # ] # }
Class::Utils, Error::Pure, METS::Parse::Simple, Readonly.
https://github.com/michal-josef-spacek/METS-Files
Michal Josef Špaček mailto:skim@cpan.org
http://skim.cz
© Michal Josef Špaček 2015-2020 BSD 2-Clause License
0.01
To install METS::Files, copy and paste the appropriate command in to your terminal.
cpanm
cpanm METS::Files
CPAN shell
perl -MCPAN -e shell install METS::Files
For more information on module installation, please visit the detailed CPAN module installation guide.