NAME

Geo::TigerLine::Record::1 - TIGER/Line 2006 Complete Chain Basic Data Record

SYNOPSIS

use Geo::TigerLine::Record::1;

@records = Geo::TigerLine::Record::1->parse_file($fh);
@records = Geo::TigerLine::Record::1->parse_file($fh, \&callback);

$record = Geo::TigerLine::Record::1->new(\%fields);

$record->rt();
$record->version();
$record->tlid();
$record->side1();
$record->source();
$record->fedirp();
$record->fename();
$record->fetype();
$record->fedirs();
$record->cfcc();
$record->fraddl();
$record->toaddl();
$record->fraddr();
$record->toaddr();
$record->friaddl();
$record->toiaddl();
$record->friaddr();
$record->toiaddr();
$record->zipl();
$record->zipr();
$record->aianhhfpl();
$record->aianhhfpr();
$record->aihhtlil();
$record->aihhtlir();
$record->census1();
$record->census2();
$record->statel();
$record->stater();
$record->countyl();
$record->countyr();
$record->cousubl();
$record->cousubr();
$record->submcdl();
$record->submcdr();
$record->placel();
$record->placer();
$record->tractl();
$record->tractr();
$record->blockl();
$record->blockr();
$record->frlong();
$record->frlat();
$record->tolong();
$record->tolat();

DESCRIPTION

This is a class representing record type 1 of the TIGER/Line 2006 census geographic database. Each object is one record. It also contains methods to parse TIGER/Line record type 1 files and turn them into objects.

This is intended as an intermediate format between pulling the raw data out of the simplistic TIGER/Line data files into something more sophisticated (a process you should only have to do once). As such, it's not very fast, but its careful, easy to use and performs some verifications on the data being read.

As this class is autogenerated by mk_parsers, think before you modify this file. It's OO, so consider sub-classing instead.

Accessors

These are simple get/set accessors for each field of a record generated from the TIGER/Line 2006 data dictionary. They perform some data validation.

rt
$data = $record->rt();
$record->rt($data);

Record Type.

Expects alphanumeric data of no more than 1 characters. $data cannot be blank and should be left justified.

version
$data = $record->version();
$record->version($data);

Version Number.

Expects numeric data of no more than 4 characters. $data cannot be blank and should be left justified.

tlid
$data = $record->tlid();
$record->tlid($data);

TIGER/Line ID, Permanent 1-Cell Number.

Expects numeric data of no more than 10 characters. $data cannot be blank and should be right justified.

side1
$data = $record->side1();
$record->side1($data);

Single-Side Source Code.

Expects numeric data of no more than 1 characters. $data can be blank and should be right justified.

source
$data = $record->source();
$record->source($data);

Linear Segment Source Code.

Expects alphanumeric data of no more than 1 characters. $data can be blank and should be left justified.

fedirp
$data = $record->fedirp();
$record->fedirp($data);

Feature Direction, Prefix.

Expects alphanumeric data of no more than 2 characters. $data can be blank and should be left justified.

fename
$data = $record->fename();
$record->fename($data);

Feature Name.

Expects alphanumeric data of no more than 30 characters. $data can be blank and should be left justified.

fetype
$data = $record->fetype();
$record->fetype($data);

Feature Type.

Expects alphanumeric data of no more than 4 characters. $data can be blank and should be left justified.

fedirs
$data = $record->fedirs();
$record->fedirs($data);

Feature Direction, Suffix.

Expects alphanumeric data of no more than 2 characters. $data can be blank and should be left justified.

cfcc
$data = $record->cfcc();
$record->cfcc($data);

Census Feature Class Code.

Expects alphanumeric data of no more than 3 characters. $data cannot be blank and should be left justified.

fraddl
$data = $record->fraddl();
$record->fraddl($data);

Start Address, Left.

Expects alphanumeric data of no more than 11 characters. $data can be blank and should be right justified.

toaddl
$data = $record->toaddl();
$record->toaddl($data);

End Address, Left.

Expects alphanumeric data of no more than 11 characters. $data can be blank and should be right justified.

fraddr
$data = $record->fraddr();
$record->fraddr($data);

Start Address, Right.

Expects alphanumeric data of no more than 11 characters. $data can be blank and should be right justified.

toaddr
$data = $record->toaddr();
$record->toaddr($data);

End Address, Right.

Expects alphanumeric data of no more than 11 characters. $data can be blank and should be right justified.

friaddl
$data = $record->friaddl();
$record->friaddl($data);

Start Imputed Address Flag, Left.

Expects alphanumeric data of no more than 1 characters. $data can be blank and should be left justified.

toiaddl
$data = $record->toiaddl();
$record->toiaddl($data);

End Imputed Address Flag, Left.

Expects alphanumeric data of no more than 1 characters. $data can be blank and should be left justified.

friaddr
$data = $record->friaddr();
$record->friaddr($data);

Start Imputed Address Flag, Right.

Expects alphanumeric data of no more than 1 characters. $data can be blank and should be left justified.

toiaddr
$data = $record->toiaddr();
$record->toiaddr($data);

End Imputed Address Flag, Right.

Expects alphanumeric data of no more than 1 characters. $data can be blank and should be left justified.

zipl
$data = $record->zipl();
$record->zipl($data);

ZIP Code, Left.

Expects numeric data of no more than 5 characters. $data can be blank and should be left justified.

zipr
$data = $record->zipr();
$record->zipr($data);

ZIP Code, Right.

Expects numeric data of no more than 5 characters. $data can be blank and should be left justified.

aianhhfpl
$data = $record->aianhhfpl();
$record->aianhhfpl($data);

FIPS 55 Code (American Indian/Alaska Native Area/Hawaiian Home Land), 2000 Left.

Expects numeric data of no more than 5 characters. $data can be blank and should be left justified.

aianhhfpr
$data = $record->aianhhfpr();
$record->aianhhfpr($data);

FIPS 55 Code (American Indian/Alaska Native Area/Hawaiian Home Land), 2000 Right.

Expects numeric data of no more than 5 characters. $data can be blank and should be left justified.

aihhtlil
$data = $record->aihhtlil();
$record->aihhtlil($data);

American Indian/Hawaiian Home Land Trust Land Indicator, 2000 Left.

Expects alphanumeric data of no more than 1 characters. $data can be blank and should be left justified.

aihhtlir
$data = $record->aihhtlir();
$record->aihhtlir($data);

American Indian/Hawaiian Home Land Trust Land Indicator, 2000 Right.

Expects alphanumeric data of no more than 1 characters. $data can be blank and should be left justified.

census1
$data = $record->census1();
$record->census1($data);

Census Use 1.

Expects alphanumeric data of no more than 1 characters. $data can be blank and should be left justified.

census2
$data = $record->census2();
$record->census2($data);

Census Use 2.

Expects alphanumeric data of no more than 1 characters. $data can be blank and should be left justified.

statel
$data = $record->statel();
$record->statel($data);

FIPS State Code, 2000 Left (always filled both sides, except at U.S. boundaries).

Expects numeric data of no more than 2 characters. $data can be blank and should be left justified.

stater
$data = $record->stater();
$record->stater($data);

FIPS State Code, 2000 Right (always filled both sides, except at U.S. boundaries).

Expects numeric data of no more than 2 characters. $data can be blank and should be left justified.

countyl
$data = $record->countyl();
$record->countyl($data);

FIPS County Code, 2000 Left (always filled both sides, except at U.S. boundaries).

Expects numeric data of no more than 3 characters. $data can be blank and should be left justified.

countyr
$data = $record->countyr();
$record->countyr($data);

FIPS County Code, 2000 Right (always filled both sides, except at U.S. boundaries).

Expects numeric data of no more than 3 characters. $data can be blank and should be left justified.

cousubl
$data = $record->cousubl();
$record->cousubl($data);

FIPS 55 Code (County Subdivision), 2000 Left.

Expects numeric data of no more than 5 characters. $data can be blank and should be left justified.

cousubr
$data = $record->cousubr();
$record->cousubr($data);

FIPS 55 Code (County Subdivision), 2000 Right.

Expects numeric data of no more than 5 characters. $data can be blank and should be left justified.

submcdl
$data = $record->submcdl();
$record->submcdl($data);

FIPS 55 Code (Subbarrio), 2000 Left.

Expects numeric data of no more than 5 characters. $data can be blank and should be left justified.

submcdr
$data = $record->submcdr();
$record->submcdr($data);

FIPS 55 Code (Subbarrio), 2000 Right.

Expects numeric data of no more than 5 characters. $data can be blank and should be left justified.

placel
$data = $record->placel();
$record->placel($data);

FIPS 55 Code (Place/CDP), 2000 Left.

Expects numeric data of no more than 5 characters. $data can be blank and should be left justified.

placer
$data = $record->placer();
$record->placer($data);

FIPS 55 Code (Place/CDP), 2000 Right.

Expects numeric data of no more than 5 characters. $data can be blank and should be left justified.

tractl
$data = $record->tractl();
$record->tractl($data);

Census Tract, 2000 Left.

Expects numeric data of no more than 6 characters. $data can be blank and should be left justified.

tractr
$data = $record->tractr();
$record->tractr($data);

Census Tract, 2000 Right.

Expects numeric data of no more than 6 characters. $data can be blank and should be left justified.

blockl
$data = $record->blockl();
$record->blockl($data);

Census Block Number, 2000 Left.

Expects numeric data of no more than 4 characters. $data can be blank and should be left justified.

blockr
$data = $record->blockr();
$record->blockr($data);

Census Block Number, 2000 Right.

Expects numeric data of no more than 4 characters. $data can be blank and should be left justified.

frlong
$data = $record->frlong();
$record->frlong($data);

Start Longitude.

Expects numeric data of no more than 10 characters. $data cannot be blank and should be right justified.

frlat
$data = $record->frlat();
$record->frlat($data);

Start Latitude.

Expects numeric data of no more than 9 characters. $data cannot be blank and should be right justified.

tolong
$data = $record->tolong();
$record->tolong($data);

End Longitude.

Expects numeric data of no more than 10 characters. $data cannot be blank and should be right justified.

tolat
$data = $record->tolat();
$record->tolat($data);

End Latitude.

Expects numeric data of no more than 9 characters. $data cannot be blank and should be right justified.

Data dictionary

This is the original TIGER/Line 2006 data dictionary from which this class was generated.

Record Type 1 - Complete Chain Basic Data Record

Field     BV Fmt Type Beg End Len  Description
RT        No   L   A    1    1  1  Record Type
VERSION   No   L   N    2    5  4  Version Number
TLID      No   R   N    6   15 10  TIGER/Line ID, Permanent 1-Cell Number
SIDE1     Yes  R   N   16   16  1  Single-Side Source Code
SOURCE    Yes  L   A   17   17  1  Linear Segment Source Code
FEDIRP    Yes  L   A   18   19  2  Feature Direction, Prefix
FENAME    Yes  L   A   20   49 30  Feature Name
FETYPE    Yes  L   A   50   53  4  Feature Type
FEDIRS    Yes  L   A   54   55  2  Feature Direction, Suffix
CFCC      No   L   A   56   58  3  Census Feature Class Code
FRADDL    Yes  R   A   59   69 11  Start Address, Left
TOADDL    Yes  R   A   70   80 11  End Address, Left
FRADDR    Yes  R   A   81   91 11  Start Address, Right
TOADDR    Yes  R   A   92  102 11  End Address, Right
FRIADDL   Yes  L   A  103  103  1  Start Imputed Address Flag, Left
TOIADDL   Yes  L   A  104  104  1  End Imputed Address Flag, Left
FRIADDR   Yes  L   A  105  105  1  Start Imputed Address Flag, Right
TOIADDR   Yes  L   A  106  106  1  End Imputed Address Flag, Right
ZIPL      Yes  L   N  107  111  5  ZIP Code, Left
ZIPR      Yes  L   N  112  116  5  ZIP Code, Right
AIANHHFPR Yes  L   N  122  126  5  FIPS 55 Code (American Indian/Alaska Native Area/Hawaiian Home Land), 2000 Right
AIANHHFPL Yes  L   N  117  121  5  FIPS 55 Code (American Indian/Alaska Native Area/Hawaiian Home Land), 2000 Left
AIHHTLIL Yes  L   A   127  127   1 American Indian/Hawaiian Home Land Trust Land Indicator, 2000 Left
AIHHTLIR Yes  L   A   128  128   1 American Indian/Hawaiian Home Land Trust Land Indicator, 2000 Right
CENSUS1  Yes  L   A   129  129   1 Census Use 1
CENSUS2  Yes  L   A   130  130   1 Census Use 2
STATEL   Yes  L   N   131  132   2 FIPS State Code, 2000 Left (always filled both sides, except at U.S. boundaries)
STATER   Yes  L   N   133  134   2 FIPS State Code, 2000 Right (always filled both sides, except at U.S. boundaries)
COUNTYL  Yes  L   N   135  137   3 FIPS County Code, 2000 Left (always filled both sides, except at U.S. boundaries)
COUNTYR  Yes  L   N   138  140   3 FIPS County Code, 2000 Right (always filled both sides, except at U.S. boundaries)
COUSUBL  Yes  L   N   141  145   5 FIPS 55 Code (County Subdivision), 2000 Left
COUSUBR  Yes  L   N   146  150   5 FIPS 55 Code (County Subdivision), 2000 Right
SUBMCDL  Yes  L   N   151  155   5 FIPS 55 Code (Subbarrio), 2000 Left
SUBMCDR  Yes  L   N   156  160   5 FIPS 55 Code (Subbarrio), 2000 Right
PLACEL   Yes  L   N   161  165   5 FIPS 55 Code (Place/CDP), 2000 Left
PLACER   Yes  L   N   166  170   5 FIPS 55 Code (Place/CDP), 2000 Right
TRACTL   Yes  L   N   171  176   6 Census Tract, 2000 Left
TRACTR   Yes  L   N   177  182   6 Census Tract, 2000 Right
BLOCKL   Yes  L   N   183  186   4 Census Block Number, 2000 Left
BLOCKR   Yes  L   N   187  190   4 Census Block Number, 2000 Right
FRLONG   No   R   N   191  200  10 Start Longitude
FRLAT    No   R   N   201  209   9 Start Latitude
TOLONG   No   R   N   210  219  10 End Longitude
TOLAT    No   R   N   220  228   9 End Latitude

AUTHOR

Michael G Schwern <schwern@pobox.com>

SEE ALSO

Geo::TigerLine, mk_parsers