Provided by: librdf-vcard-perl_0.012-1_all bug

NAME

       RDF::vCard::Exporter - export RDF data to vCard format

SYNOPSIS

        use RDF::vCard;

        my $input    = "http://example.com/contact-data.rdf";
        my $exporter = RDF::vCard::Exporter->new(vcard_version => 3);

        print $_ foreach $exporter->export_cards($input);

DESCRIPTION

       This module reads RDF and writes vCards.

   Constructor
       •   "new(%options)"

           Returns a new RDF::vCard::Exporter object.

           Options:

           •   vcard_version - '3' or '4'. This module will happily use vCard 3.0 constructs in
               vCard 4.0 and vice versa. But in certain places it can lean one way or the other.
               This option allows you to influence that.

   Methods
       •   "export_cards($input, %options)"

           Returns a list of vCards found in the input, in no particular order.

           The input may be a URI, file name, RDF::Trine::Model or anything else that can be
           handled by the "rdf_parse" method of RDF::TrineShortcuts.

           Supported options include sort which, if set to true, causes the output to be sorted
           by name (as well as is possible); source which allows you to provide the URL where the
           cards were sourced from; and prodid which allows you to set the product ID used in the
           output.

           (A prodid must be in FPI format to be valid, though the module doesn't check this.
           undef is allowed. By default, RDF::vCard:Exporter uses its own prodid, and unless you
           have a good reason to change this, you should probably let it.)

           e.g.

             my @cards = $exporter->export_cards(
               $some_data,
               sort   => 1,
               source => 'http://bigcorp.example.com/data.rdf',
               prodid => '+//IDN example.net//NONSGML MyScript v 0.1//EN',
               );

           Each item in the list returned is an RDF::vCard::Entity, though that class overloads
           stringification, so you can just treat each item as a string mostly.

       •   "export_card($input, $subject, %options)"

           As per "export_cards" but exports just a single card.

           The subject provided must be an RDF::Trine::Node::Blank or RDF::Trine::Node::Resource
           of type v:VCard.

       •   "is_v3"

           Returns true if this exporter is in vCard 3.0 mode.

       •   "is_v4"

           Returns true if this exporter is in vCard 4.0 mode.

   RDF Input
       Input is expected to use the newer of the 2010 revision of the W3C's vCard vocabulary
       <http://www.w3.org/Submission/vcard-rdf/>. (Note that even though this was revised in
       2010, the term URIs include "2006" in them.)

       Some extensions from the namespace <http://buzzword.org.uk/rdf/vcardx#> are also
       supported. (Namely: vx:usage, vx:kind, vx:gender, vx:sex, vx:dday, vx:anniversary,
       vx:lang, vx:caladruri, vx:caluri, vx:fburl, vx:impp, vx:source.)

       The module author has made the decision not to support FOAF and other RDF vocabularies
       that may be used to model contact information for people and organisations, as they do not
       necessarily map cleanly onto vCard. People hoping to map non-vCard RDF to vCard using this
       module may have some luck pre-processing their RDF using a rules-based reasoner.

   vCard Output
       The output of this module mostly aims at vCard 3.0 (RFC 2426) compliance.  In the face of
       weird input data though, (e.g. an FN property that is a URI instead of a literal) it can
       pretty easily descend into exporting junk, non-compliant vCards.

       Many vCard 4.0 properties, such as the IMPP and KIND, are also supported.

       The vcard_version constructor option allows you to influence how some properties like GEO
       and TEL (which differ between 3.0 and 4.0) are output.

SEE ALSO

       RDF::vCard, HTML::Microformats, RDF::TrineShortcuts.

       <http://www.w3.org/Submission/vcard-rdf/>.

       <http://www.perlrdf.org/>.

AUTHOR

       Toby Inkster <tobyink@cpan.org>.

COPYRIGHT

       Copyright 2011 Toby Inkster

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