• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

bin/H05-May-2003-12781

lib/Net/H05-May-2003-880367

t/H03-May-2022-8854

ABSTRACTH A D05-May-2003273 21

ChangesH A D15-Apr-2003379 169

INSTALLH A D06-Apr-2003137 117

LICENSEH A D04-Apr-200319.7 KiB378304

MANIFESTH A D15-Apr-2003270 2220

MANIFEST.SKIPH A D04-Apr-2003140 1918

Makefile.PLH A D05-May-2003450 2720

READMEH A D05-May-20034.1 KiB12489

TODOH A D06-Apr-2003594 2411

README

1WARNING
2
3   - THIS MODULE WILL BE REPLACED IN A NUMBER OF DAYS BY Text::vCard
4   - Text::vCard is a joint effort between myself and another developer
5   - It will support a better API, more robust treatment of vCard data
6	 and even writing of vCards
7
8Thanks.
9
10  Jay
11
12
13NAME
14    Net::vCard - Read and write vCard files (RFC 2426). vCard files hold
15    personal information that you would typically find on a business card.
16    Name, numbers, addresses, and even logos. This module can also serve as
17    a base class for other vFile readers.
18
19SYNOPSIS
20      use Net::vCard;
21
22      my $cards=Net::vCard->loadFile( "addresses.vcf" );
23
24      foreach my $card ( @$cards ) {
25
26        print $card->givenName,       " ",  $card->familyName, "\n";
27        print $card->ADR->address,    "\n";
28        print $card->ADR->city,       " ",  $card->ADR->region, "\n";
29        print $card->ADR->postalCode, "\n";
30
31        print $card->ADR("home")->address,    "\n";
32        print $card->ADR("home")->city,       " ",  $card->ADR("home")->region, "\n";
33        print $card->ADR("home")->postalCode, "\n";
34
35      }
36
37MODULE STATUS
38    The current state of this module is a pretty solid parser and internal
39    data structure.
40
41    Now I will be adding get/set handlers for the various properties. As
42    well, I'd really like to get some pathelogical data from different vCard
43    producers. Right now I have a pretty good handle on Apple's Addressbook
44    - which is the whole reason why I wrote this stuff.
45
46    For those who really want to use this module right away
47
48      - go ahead and access the hash values directly for the time being
49      - keep in mind that I will be making a get/set method interface
50      - once that is established you will need to use that interface instead
51
52ACCESSOR METHODS
53  NAME values
54    $vcard->familyName( [ familyName ] )
55    $vcard->givenName( [ givenName ] )
56    $vcard->additionalNames( [ additionalNames ] )
57    $vcard->suffixes( [ suffixes ] )
58    $vcard->prefixes( [ prefixes ] )
59
60  ADDRESSES
61    To access address data:
62
63     $card->ADR( type )->field;
64     $card->ADR( )->city;           # Default address, city field
65     $card->ADR( "home" )->address; # Home address type, address field
66
67    $card->ADR( [type] )->country
68    $card->ADR( [type] )->poBox
69    $card->ADR( [type] )->city
70    $card->ADR( [type] )->region
71    $card->ADR( [type] )->address
72    $card->ADR( [type] )->postalCode
73    $card->ADR( [type] )->extendedAddress
74
75    There are some decisions to be taken wrt ADR values.
76
77    Firstly
78
79    As of now the RFC specifies action to take in the case of unlisted type
80    - the address gets four types - intl, parcel, postal, and work. This
81    implies that several types refer to the same address.
82
83    What I am doing for loading this data is storing the address in a hash
84    entry by the first name and listing the remainder in "_alias" hash key.
85
86    What happens when one of these addresses is updated? Do we copy all the
87    values to unique hash entries or do we update the common copy, requiring
88    the developer to explicitly declare a new address replace the common
89    entry.
90
91    If this doesn't make sense email me and I'll try another explaination.
92
93    Secondly
94
95    What about preferred addresses? For now I am going to let the module
96    user optionally request their preferred address type. If it does not
97    exist then we'll keep looking for less preferred address types like the
98    "pref" that was specified when loading vcard data, and finally the 4
99    default types.
100
101SUPPORT
102    For technical support please email to jlawrenc@cpan.org ... for faster
103    service please include "Net::vCard" and "help" in your subject line.
104
105AUTHOR
106     Jay J. Lawrence - jlawrenc@cpan.org
107     Infonium Inc., Canada
108     http://www.infonium.ca/
109
110COPYRIGHT
111    Copyright (c) 2003 Jay J. Lawrence, Infonium Inc. All rights reserved.
112    This program is free software; you can redistribute it and/or modify it
113    under the same terms as Perl itself.
114
115    The full text of the license can be found in the LICENSE file included
116    with this module.
117
118ACKNOWLEDGEMENTS
119     Net::iCal - whose loading code inspired me for mine
120
121SEE ALSO
122    RFC 2426, Net::iCal
123
124