Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/michal-josef-spacek/mets-parse-simple
METS parse class
https://github.com/michal-josef-spacek/mets-parse-simple
mets perl
Last synced: 10 days ago
JSON representation
METS parse class
- Host: GitHub
- URL: https://github.com/michal-josef-spacek/mets-parse-simple
- Owner: michal-josef-spacek
- License: bsd-2-clause
- Created: 2020-02-13T20:00:15.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2020-02-13T20:23:48.000Z (almost 5 years ago)
- Last Synced: 2024-05-02T01:28:32.272Z (8 months ago)
- Topics: mets, perl
- Language: Perl
- Size: 43.9 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README
- Changelog: Changes
- License: LICENSE
Awesome Lists containing this project
README
NAME
METS::Parse::Simple - Simple class for METS parsing.SYNOPSIS
use METS::Parse::Simple;my $obj = METS::Parse::Simple->new;
my $mets_hr = $obj->parse($mets_data);METHODS
"new()"
Constructor."parse($mets_data)"
Parse METS XML data via XML::Simple::XMLin().
Returns hash reference to structure.ERRORS
new():
From Class::Utils::set_params():
Unknown parameter '%s'.EXAMPLE1
use strict;
use warnings;use Data::Printer;
use METS::Parse::Simple;
use Perl6::Slurp qw(slurp);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::Parse::Simple->new;# Parse data.
my $mets_hr = $obj->parse($mets_data);# Dump to output.
p $mets_hr;# Output without argument like:
# Usage: __SCRIPT__ mets_fileEXAMPLE2
use strict;
use warnings;use Data::Printer;
use METS::Parse::Simple;# Example METS data.
my $mets_data = <<'END';
END# Object.
my $obj = METS::Parse::Simple->new;# Parse.
my $mets_hr = $obj->parse($mets_data);# Dump to output.
p $mets_hr;# Output like:
\ {
fileSec {
fileGrp [
[0] {
file [
[0] {
ADMID "IMGPARAM00001",
CREATED "2006-06-20T12:00:00",
FLocat {
LOCTYPE "URL",
xlink:href "file://./003855/003855r.tif"
},
GROUPID 1,
ID "IMG00001",
MIMETYPE "image/tiff",
SEQ 1,
SIZE 5184000
},
[1] {
ADMID "IMGPARAM00002",
CREATED "2006-06-20T12:00:00",
FLocat {
LOCTYPE "URL",
xlink:href "file://./003855/003855v.tif"
},
GROUPID 2,
ID "IMG00002",
MIMETYPE "image/tiff",
SEQ 2,
SIZE 5200228
}
],
ID "IMGGRP",
USE "Images"
},
[1] {
file [
[0] {
ADMID "IMGPARAM00001",
CREATED "2006-06-20T12:00:00",
FLocat {
LOCTYPE "URL",
xlink:href "file://./003855/003855r.pdf"
},
GROUPID 1,
ID "PDF00001",
MIMETYPE "text/pdf",
SEQ 1,
SIZE 251967
},
[1] {
ADMID "IMGPARAM00002",
CREATED "2006-06-20T12:00:00",
FLocat {
LOCTYPE "URL",
xlink:href "file://./003855/003855v.pdf"
},
GROUPID 2,
ID "PDF00002",
MIMETYPE "text/pdf",
SEQ 2,
SIZE 172847
}
],
ID "PDFGRP",
USE "PDF"
}
]
},
xmlns:xlink "http://www.w3.org/TR/xlink"
}DEPENDENCIES
Class::Utils, XML::Simple.REPOSITORY
AUTHOR
Michal Josef Špaček
LICENSE AND COPYRIGHT
© Michal Josef Špaček 2015-2020
BSD 2-Clause LicenseVERSION
0.02