Data::Stag::HashDB
# parsing a file into a hash my $hdb = Data::Stag::HashDB->new; $hdb->unique_key("ss_details/social_security_no"); $hdb->record_type("person"); my $obj = {}; $hdb->index_hash($obj); Data::Stag->parse(-file=>$fn, -handler=>$hdb); my $person = $obj->{'999-9999-9999'}; print $person->xml; # indexing an existing stag tree into a hash my $personset = Data::Stag->parse($fn); my $hdb = Data::Stag::HashDB->new; $hdb->unique_key("ss_details/social_security_no"); $hdb->record_type("person"); my $obj = {}; $hdb->index_hash($obj); $personset->sax($hdb); my $person = $obj->{'999-9999-9999'}; print $person->xml;
Used for building indexes over Stag files or objects
You need to provide a record_type - this is the type of element that will be indexed
You need to provide a unique_key - this is a single value used to index the record_types
For example, if we have data in the stag structure below, and if ss_no is unique (we assume it is) then we can index all the people in the database using the code above
publicinfo: persondata: person: ss_details: social_security_no: name: address:
There is a subclass of this method callsed Data::Stag::StagDB, which makes the hash persistent
Usage - Returns - Args -
1 POD Error
The following errors were encountered while parsing the POD:
Deleting unknown formatting code N<>
To install Data::Stag, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Data::Stag
CPAN shell
perl -MCPAN -e shell install Data::Stag
For more information on module installation, please visit the detailed CPAN module installation guide.