NAME
HTML::Microformats::Format::hCard - the hCard microformat
SYNOPSIS
use HTML::Microformats::DocumentContext;
use HTML::Microformats::Format::hCard;
my $context = HTML::Microformats::DocumentContext->new($dom, $uri);
my @cards = HTML::Microformats::Format::hCard->extract_all(
$dom->documentElement, $context);
foreach my $card (@cards)
{
print $card->get_fn . "\n";
}
DESCRIPTION
HTML::Microformats::Format::hCard inherits from HTML::Microformats::Format. See the base class definition for a description of property getter/setter methods, constructors, etc.
Additional Method
to_vcard
This method exports the hCard as a vCard 3.0. It requires RDF::vCard to work, and will throw an error at run-time if it's not available.
to_vcard4
This method exports the hCard as a vCard 3.0. It requires RDF::vCard to work, and will throw an error at run-time if it's not available.
to_vcard4_xml
This method exports the hCard as a vCard XML. It requires RDF::vCard and XML::LibXML to work, and will throw an error at run-time if it's not available.
MICROFORMAT
HTML::Microformats::Format::hCard supports hCard as described at http://microformats.org/wiki/hcard, with the following additions:
vCard 4.0 terms
This module includes additional property terms taken from the latest vCard 4.0 drafts. For example the property 'impp' may be used to mark up instant messaging addresses for a contact.
The vCard 4.0 property 'kind' is used to record the kind of contact described by the hCard (an individual, an organisation, etc). In many cases this is automatically inferred.
Embedded species microformat
If the species microformat (see HTML::Microformats::Format::species) is found embedded within an hCard, then this is taken to be the species of a contact.
Embedded hMeasure
If the hMeasure microformat (see HTML::Microformats::Format::hMeasure) is found embedded within an hCard, and no 'item' property is provided, then the measurement is taken to pertain to the contact described by the hCard.
RDF OUTPUT
Data is returned using the W3C's vCard vocabulary (http://www.w3.org/2006/vcard/ns#) with some supplemental terms from Toby Inkster's vCard extensions vocabulary (http://buzzword.org.uk/rdf/vcardx#) and occasional other terms.
After long deliberation on the "has-a/is-a issue", the author of this module decided that the holder of a vCard and the vCard itself should be modelled as two separate resources, and this is how the data is returned. Some information about the holder of the vCard can be inferred from information about the vCard; for instance, the vCard's fn property can be used to determin the holder's foaf:name. This module uses FOAF (http://xmlns.com/foaf/0.1/) to represent information about the holder of the vCard.
BUGS
Please report any bugs to http://rt.cpan.org/.
SEE ALSO
HTML::Microformats::Format, HTML::Microformats.
AUTHOR
Toby Inkster <tobyink@cpan.org>.
COPYRIGHT AND LICENCE
Copyright 2008-2012 Toby Inkster
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
DISCLAIMER OF WARRANTIES
THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.