MARC 1.07
Sponsored Links
MARC 1.07 Ranking & Summary
File size:
0.079 MB
Platform:
Any Platform
License:
Perl Artistic License
Price:
Downloads:
899
Date added:
2007-05-15
Publisher:
MARC Development team
MARC 1.07 description
MARC is a Perl extension to manipulate MAchine Readable Cataloging records.
SYNOPSIS
use MARC;
# constructors
$x=MARC->new();
$x=MARC->new("filename","fileformat");
$x->openmarc({file=>"makrbrkr.mrc",format=>"marcmaker",
increment=>"5", lineterm=>"n",
charset=>%char_hash});
$record_num=$x->createrecord({leader=>"00000nmm 2200000 a 4500"});
# input/output operations
$y=$x->nextmarc(10); # increment
$x->closemarc();
print $x->marc_count();
$x->deletemarc({record=>2,field=>110});
$y=$x->selectmarc([4,21-50,60]);
# character translation
my %inc = %{$x->usmarc_default()}; # MARCMaker input charset
my %outc = %{$x->ustext_default()}; # MARCBreaker output charset
# data queries
@records = $x->searchmarc({field=>"245"});
@records = $x->searchmarc({field=>"260",subfield=>"c",
regex=>"/19../"});
@records = $x->searchmarc({field=>"245",notregex=>"/huckleberry/i"});
@results = $x->getvalue({record=>12,field=>856,subfield=>u});
# header and control field operations
$rldr = $x->unpack_ldr($record);
print "Desc is $rldr->{Desc}";
next if ($x->bib_format($record) eq SERIALS);
$rff = $x->unpack_008($record);
last if ($rff->{Date1}=~/00/ or $rff->{Date2}=~/00/);
# data modifications
$x->addfield({record=>"2", field=>"245",
i1=>"1", i2=>"4", ordered=>y, value=>
[a=>"The adventures of Huckleberry Finn /",
c=>"Mark Twain ; illustrated by E.W. Kemble."]});
my $update245 = {field=>245,record=>2,ordered=>y};
my @u245 = $x->getupdate($update245);
$x->deletemarc($update245);
$x->addfield($update245, @u245_modified);
# outputs
$y = $x->output({format=>"marcmaker", charset=>%outc});
$x->output({file=>">>my_text.txt",format=>"ascii",record=>2});
$x->output({file=>">my_marcmaker.mkr",format=>"marcmaker",
nolinebreak=>y,lineterm=>n});
$x->output({file=>">titles.html",format=>"html", 245=>"Title: "});
# manipulation of individual marc records.
@recs = $x[1..$#$x];
grep {$_->unpack_ldr() && 0} @recs;
@LCs = grep {$_->unp_ldr{Desc} eq a &&
$_->getvalue({field=>040}) =~/DLCc_.DLC/} @recs;
foreach my $rec (@LCs) {
print $rec->output({format=>usmarc});
}
# manipulation as strings.
foreach my $rec (@LCs) {
my $stringvar = $rec->as_string();
$stringvar=~s[^(
100s # main entries of this stripe..
..s # (dont care about indicators)
c_.s*
)(S) # take the first letter..
] [
${1}uc($2) # and upcase it. All authors have
# upcase first letters in my library.
]xm; # x means ignore whitespace and allow
# embedded comments.
$rec->from_string($stringvar);
my ($i2,$article) = $stringvar =~/245 .(.) c_.(.{0,9})/;
$article = substr($article,0,$i2) if $i2=~/d/;
print "article $article is not common" unless $COMMON_ARTS{$article};
}
MARC.pm is a Perl 5 module for reading in, manipulating, and outputting bibliographic records in the USMARC format. You will need to have Perl 5.004 or greater for MARC.pm to work properly. Since it is a Perl module you use MARC.pm from one of your own Perl scripts. To see what sorts of conversions are possible you can try out a web interface to MARC.pm which will allow you to upload MARC files and retrieve the results (for details see the section below entitled "Web Interface").
However, to get the full functionality you will probably want to install MARC.pm on your server or PC. MARC.pm can handle both single and batches of MARC records. The limit on the number of records in a batch is determined by the memory capacity of the machine you are running. If memory is an issue for you MARC.pm will allow you to read in records from a batch gradually. MARC.pm also includes a variety of tools for searching, removing, and even creating records from scratch.
SYNOPSIS
use MARC;
# constructors
$x=MARC->new();
$x=MARC->new("filename","fileformat");
$x->openmarc({file=>"makrbrkr.mrc",format=>"marcmaker",
increment=>"5", lineterm=>"n",
charset=>%char_hash});
$record_num=$x->createrecord({leader=>"00000nmm 2200000 a 4500"});
# input/output operations
$y=$x->nextmarc(10); # increment
$x->closemarc();
print $x->marc_count();
$x->deletemarc({record=>2,field=>110});
$y=$x->selectmarc([4,21-50,60]);
# character translation
my %inc = %{$x->usmarc_default()}; # MARCMaker input charset
my %outc = %{$x->ustext_default()}; # MARCBreaker output charset
# data queries
@records = $x->searchmarc({field=>"245"});
@records = $x->searchmarc({field=>"260",subfield=>"c",
regex=>"/19../"});
@records = $x->searchmarc({field=>"245",notregex=>"/huckleberry/i"});
@results = $x->getvalue({record=>12,field=>856,subfield=>u});
# header and control field operations
$rldr = $x->unpack_ldr($record);
print "Desc is $rldr->{Desc}";
next if ($x->bib_format($record) eq SERIALS);
$rff = $x->unpack_008($record);
last if ($rff->{Date1}=~/00/ or $rff->{Date2}=~/00/);
# data modifications
$x->addfield({record=>"2", field=>"245",
i1=>"1", i2=>"4", ordered=>y, value=>
[a=>"The adventures of Huckleberry Finn /",
c=>"Mark Twain ; illustrated by E.W. Kemble."]});
my $update245 = {field=>245,record=>2,ordered=>y};
my @u245 = $x->getupdate($update245);
$x->deletemarc($update245);
$x->addfield($update245, @u245_modified);
# outputs
$y = $x->output({format=>"marcmaker", charset=>%outc});
$x->output({file=>">>my_text.txt",format=>"ascii",record=>2});
$x->output({file=>">my_marcmaker.mkr",format=>"marcmaker",
nolinebreak=>y,lineterm=>n});
$x->output({file=>">titles.html",format=>"html", 245=>"Title: "});
# manipulation of individual marc records.
@recs = $x[1..$#$x];
grep {$_->unpack_ldr() && 0} @recs;
@LCs = grep {$_->unp_ldr{Desc} eq a &&
$_->getvalue({field=>040}) =~/DLCc_.DLC/} @recs;
foreach my $rec (@LCs) {
print $rec->output({format=>usmarc});
}
# manipulation as strings.
foreach my $rec (@LCs) {
my $stringvar = $rec->as_string();
$stringvar=~s[^(
100s # main entries of this stripe..
..s # (dont care about indicators)
c_.s*
)(S) # take the first letter..
] [
${1}uc($2) # and upcase it. All authors have
# upcase first letters in my library.
]xm; # x means ignore whitespace and allow
# embedded comments.
$rec->from_string($stringvar);
my ($i2,$article) = $stringvar =~/245 .(.) c_.(.{0,9})/;
$article = substr($article,0,$i2) if $i2=~/d/;
print "article $article is not common" unless $COMMON_ARTS{$article};
}
MARC.pm is a Perl 5 module for reading in, manipulating, and outputting bibliographic records in the USMARC format. You will need to have Perl 5.004 or greater for MARC.pm to work properly. Since it is a Perl module you use MARC.pm from one of your own Perl scripts. To see what sorts of conversions are possible you can try out a web interface to MARC.pm which will allow you to upload MARC files and retrieve the results (for details see the section below entitled "Web Interface").
However, to get the full functionality you will probably want to install MARC.pm on your server or PC. MARC.pm can handle both single and batches of MARC records. The limit on the number of records in a batch is determined by the memory capacity of the machine you are running. If memory is an issue for you MARC.pm will allow you to read in records from a batch gradually. MARC.pm also includes a variety of tools for searching, removing, and even creating records from scratch.
MARC 1.07 Screenshot
MARC 1.07 Keywords
MARC
MARC.pm
MAchine Readable Cataloging
MAchine
MARC 1.07
LCs
machine readable cataloging records
to manipulate
perl extension
machine readable
cataloging records
records
record
Perl
format
field
Bookmark MARC 1.07
MARC 1.07 Copyright
WareSeeker periodically updates pricing and software information of MARC 1.07 full version from the publisher, so some information may be slightly out-of-date. You should confirm all information before relying on it. Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future development of MARC 1.07 Edition. Download links are directly from our publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed
Featured Software
Want to place your software product here?
Please contact us for consideration.
Contact WareSeeker.com
Related Information
tower records
public records
guinness world records
records hollywood
death records
criminal records
marriage records
birth records
MARC standards
military records
recordset
machine readable cataloging marc
history of machine readable cataloging
records registry
recordonline
formatting
machine readable cataloging record
mla format
Related Software
MARC::XML is a subclass of MARC.pm to provide XML support. Free Download
The Argus Open Project is focused on developing network activity audit strategies. Free Download
xdict project is a dictionary for translating words from German to English (and vice versa). Free Download
Emilda is an Integrated Library System that features an OPAC. Free Download
Time::Format is a Perl module for easy-to-use date/time formatting. Free Download
App::Manager is a Perl module for installing, managing and uninstalling software packages. Free Download
MARC::Errorchecks is a Perl module with a collection of MARC 21/AACR2 error checks. Free Download
MARC::Charset is a Perl module to convert MARC-8 encoded strings to UTF-8. Free Download
Latest Software
Popular Software
Favourite Software