Scroll to navigation

User::Identity::Location(3) User Contributed Perl Documentation User::Identity::Location(3)


User::Identity::Location - physical location of a person


   is a User::Identity::Item


 use User::Identity;
 use User::Identity::Location;
 my $me   = User::Identity->new(...);
 my $addr = User::Identity::Location->new(...);
 $me->add(location => $addr);
 # Simpler
 use User::Identity;
 my $me   = User::Identity->new(...);
 my $addr = $me->add(location => ...);


The "User::Identity::Location" object contains the description of a physical location of a person: home, work, travel. The locations are collected by a User::Identity::Collection::Locations object.

Nearly all methods can return "undef". Some methods produce language or country specific output.

Extends "DESCRIPTION" in User::Identity::Item.


Extends "METHODS" in User::Identity::Item.


Extends "Constructors" in User::Identity::Item.

Create a new location. You can specify a name as first argument, or in the OPTION list. Without a specific name, the organization is used as name.

 -Option      --Defined in          --Default
  country                             undef
  country_code                        undef
  description   User::Identity::Item  undef
  fax                                 undef
  name          User::Identity::Item  <required>
  organization                        undef
  parent        User::Identity::Item  undef
  pc                                  undef
  phone                               undef
  pobox                               undef
  pobox_pc                            undef
  postal_code                         <value of option pc>
  state                               undef
  street                              undef


Extends "Attributes" in User::Identity::Item.

The city where the address is located.
The country where the address is located. If the name of the country is not known but a country code is defined, the name will be looked-up using Geography::Countries (if installed).
Each country has an ISO standard abbreviation. Specify the country or the country code, and the other will be filled in automatically.
Inherited, see "Attributes" in User::Identity::Item
One or more fax numbers, like phone().
Create an address to put on a postal mailing, in the format as normal in the country where it must go to. To be able to achieve that, the country code must be known. If the city is not specified or no street or pobox is given, undef will be returned: an incomplete address.


 print $uil->fullAddress;
 print $user->find(location => 'home')->fullAddress;
$obj->name( [$newname] )
Inherited, see "Attributes" in User::Identity::Item
The organization (for instance company) which is related to this location.
One or more phone numbers. Please use the international notation, which starts with '+', for instance "+31-26-12131". In scalar context, only the first number is produced. In list context, all numbers are presented.
Post Office mail box specification. Use "P.O.Box 314", not simple 314.
The postal code related to the Post-Office mail box. Defined by new() option "pobox_pc".
The postal code is very country dependent. Also, the location of the code within the formatted string is country dependent.
The state, which is important for some countries but certainly not for the smaller ones. Only set this value when you state has to appear on printed addresses.
Returns the address of this location. Since Perl 5.7.3, you can use unicode in strings, so why not format the address nicely?


Extends "Collections" in User::Identity::Item.

$obj->add($collection, $role)
Inherited, see "Collections" in User::Identity::Item
$obj->addCollection( $object | <[$type], %options> )
Inherited, see "Collections" in User::Identity::Item
Inherited, see "Collections" in User::Identity::Item
$obj->parent( [$parent] )
Inherited, see "Collections" in User::Identity::Item
Inherited, see "Collections" in User::Identity::Item
Inherited, see "Collections" in User::Identity::Item
Inherited, see "Collections" in User::Identity::Item


Extends "Searching" in User::Identity::Item.

$obj->find($collection, $role)
Inherited, see "Searching" in User::Identity::Item


The first argument is an object, but not of a class which extends User::Identity::Collection.
Either the specified $type does not exist, or that module named $class returns compilation errors. If the type as specified in the warning is not the name of a package, you specified a nickname which was not defined. Maybe you forgot the 'require' the package which defines the nickname.
The $class did compile, but it was not possible to create an object of that class using the options you specified.
If you add a collection, it must either by a collection object or a list of options which can be used to create a collection object. In the latter case, the type of collection must be specified.
The collection with $name does not exist and can not be created.


This module is part of User-Identity distribution version 1.02, built on April 17, 2023. Website:


Copyrights 2003-2023 by [Mark Overmeer <>]. For other contributors see ChangeLog.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See

2023-04-18 perl v5.40.0