NAME
Person::ID::CZ::RC - Perl class for Czech RC identification.
SYNOPSIS
use Person::ID::CZ::RC;
my $obj = Person::ID::CZ::RC->new(%params);
my $alternate = $obj->alternate;
my $checksum = $obj->checksum;
my $day = $obj->day;
my $error = $obj->error;
my $is_valid = $obj->is_valid;
my $month = $obj->month;
my $rc = $obj->rc;
my $serial = $obj->serial;
my $sex = $obj->sex;
my $year = $obj->year;
METHODS
new
my $obj = Person::ID::CZ::RC->new(%params);
Constructor.
rc
Input Czech RC identification.
It is required.
Returns instance of object.
alternate
my $alternate = $obj->alternate;
Get flag, that means alternate RC identification.
Returns 0/1.
checksum
my $checksum = $obj->checksum;
Get checksum.
Returns string with one number character or '-'.
day
my $day = $obj->day;
Get day of birth.
Returns string with day.
error
my $error = $obj->error;
Get error.
Returns error string or undef.
is_valid
my $is_valid = $obj->is_valid;
Get flag, that means validity of rc identification.
Returns 0/1.
month
my $month = $obj->month;
Get month of birth.
Returns string with month.
rc
my $rc = $obj->rc;
Get rc identification.
Returns string with rc identification.
serial
my $serial = $obj->serial;
Get serial part of rc identification.
Returns string with three numbers.
sex
my $sex = $obj->sex;
Get flag, that means sex of person.
Returns male/female string.
year
my $year = $obj->year;
Get year of birth.
Returns string with year.
ERRORS
new():
Parameter 'rc' is required.
From Class::Utils::set_params():
Unknown parameter '%s'.
EXAMPLE1
use strict;
use warnings;
use Person::ID::CZ::RC;
# Object.
my $obj = Person::ID::CZ::RC->new(
'rc' => '840501/1330',
);
# Get error.
my $error = $obj->error || '-';
# Print out.
print "Personal number: ".$obj->rc."\n";
print "Year: ".$obj->year."\n";
print "Month: ".$obj->month."\n";
print "Day: ".$obj->day."\n";
print "Sex: ".$obj->sex."\n";
print "Serial: ".$obj->serial."\n";
print "Checksum: ".$obj->checksum."\n";
print "Alternate: ".$obj->alternate."\n";
print "Valid: ".$obj->is_valid."\n";
print "Error: ".$error."\n";
# Output:
# Personal number: 840501/1330
# Year: 1984
# Month: 05
# Day: 01
# Sex: male
# Serial: 133
# Checksum: 0
# Alternate: 0
# Valid: 1
# Error: -
EXAMPLE2
use strict;
use warnings;
use Person::ID::CZ::RC;
# Object.
my $obj = Person::ID::CZ::RC->new(
'rc' => '840230/1337',
);
# Get error.
my $error = $obj->error || '-';
# Print out.
print "Personal number: ".$obj->rc."\n";
print "Year: ".$obj->year."\n";
print "Month: ".$obj->month."\n";
print "Day: ".$obj->day."\n";
print "Sex: ".$obj->sex."\n";
print "Serial: ".$obj->serial."\n";
print "Checksum: ".$obj->checksum."\n";
print "Alternate: ".$obj->alternate."\n";
print "Valid: ".$obj->is_valid."\n";
print "Error: ".$error."\n";
# Output:
# Personal number: 840230/1337
# Year: 1984
# Month: 02
# Day: 30
# Sex: male
# Serial: 133
# Checksum: 7
# Alternate: 0
# Valid: 0
# Error: Date isn't valid.
EXAMPLE3
use strict;
use warnings;
use Person::ID::CZ::RC;
# Object.
my $obj = Person::ID::CZ::RC->new(
'rc' => '840229/1330',
);
# Get error.
my $error = $obj->error || '-';
# Print out.
print "Personal number: ".$obj->rc."\n";
print "Year: ".$obj->year."\n";
print "Month: ".$obj->month."\n";
print "Day: ".$obj->day."\n";
print "Sex: ".$obj->sex."\n";
print "Serial: ".$obj->serial."\n";
print "Checksum: ".$obj->checksum."\n";
print "Alternate: ".$obj->alternate."\n";
print "Valid: ".$obj->is_valid."\n";
print "Error: ".$error."\n";
# Output:
# Personal number: 840229/1330
# Year: 1984
# Month: 02
# Day: 29
# Sex: male
# Serial: 133
# Checksum: 0
# Alternate: 0
# Valid: 0
# Error: Checksum isn't valid.
EXAMPLE4
use strict;
use warnings;
use Person::ID::CZ::RC;
# Object.
my $obj = Person::ID::CZ::RC->new(
'rc' => '840229/133',
);
# Get error.
my $error = $obj->error || '-';
# Print out.
print "Personal number: ".$obj->rc."\n";
print "Year: ".$obj->year."\n";
print "Month: ".$obj->month."\n";
print "Day: ".$obj->day."\n";
print "Sex: ".$obj->sex."\n";
print "Serial: ".$obj->serial."\n";
print "Checksum: ".$obj->checksum."\n";
print "Alternate: ".$obj->alternate."\n";
print "Valid: ".$obj->is_valid."\n";
print "Error: ".$error."\n";
# Output:
# Personal number: 840229/133
# Year: 1984
# Month: 02
# Day: 29
# Sex: male
# Serial: 133
# Checksum: -
# Alternate: 0
# Valid: 0
# Error: Format of rc identification hasn't checksum.
EXAMPLE5
use strict;
use warnings;
use Person::ID::CZ::RC;
# Object.
my $obj = Person::ID::CZ::RC->new(
'rc' => '840229|1330',
);
# Get error.
my $error = $obj->error || '-';
# Print out.
print "Personal number: ".$obj->rc."\n";
print "Year: ".$obj->year."\n";
print "Month: ".$obj->month."\n";
print "Day: ".$obj->day."\n";
print "Sex: ".$obj->sex."\n";
print "Serial: ".$obj->serial."\n";
print "Checksum: ".$obj->checksum."\n";
print "Alternate: ".$obj->alternate."\n";
print "Valid: ".$obj->is_valid."\n";
print "Error: ".$error."\n";
# Output:
# Personal number: 840229|1330
# Year: -
# Month: -
# Day: -
# Sex: -
# Serial: -
# Checksum: -
# Alternate: -
# Valid: 0
# Error: Format of rc identification isn't valid.
DEPENDENCIES
Class::Utils, DateTime, English, Error::Pure.
SEE ALSO
- Business::DK::CPR
-
Danish CPR (SSN) number generator/validator
- No::PersonNr
-
Check Norwegian Social security numbers
- Person::ID::CZ::RC::Generator
-
Perl class for Czech RC identification generation.
- Se::PersonNr
-
Module for validating and generating a Swedish personnummer.
REPOSITORY
https://github.com/michal-josef-spacek/Person::ID::CZ::RC
AUTHOR
Michal Josef Špaček mailto:skim@cpan.org
LICENSE AND COPYRIGHT
© Michal Josef Špaček 2013-2023
BSD 2-Clause License
VERSION
0.05