Release history of XML-FOAF
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib/XML
t
xt
.gitignore
Changes
MANIFEST
MANIFEST.SKIP
Makefile.PL
README

README

NAME
    XML::FOAF - Parse FOAF (Friend of a Friend) data

SYNOPSIS
        use XML::FOAF;
        use URI;
        my $foaf = XML::FOAF->new(URI->new('http://foo.com/my.foaf'));
        print $foaf->person->mbox, "\n";

DESCRIPTION
    *XML::FOAF* provides an object-oriented interface to FOAF (Friend of a
    Friend) data.

USAGE
  XML::FOAF->new($data [, $base_uri ])
    Reads in FOAF data from *$data* and parses it. Returns a *XML::FOAF*
    object on success, "undef" on error. If an error occurs, you can call

        XML::FOAF->errstr

    to get the text of the error.

    *$base_uri* is the base URI to be used in constructing absolute URLs
    from resources defined in your FOAF data, and is required unless *$data*
    is a URI object, in which case the *$base_uri* can be obtained from that
    URI.

    *$data* can be any of the following:

    *   A URI object

        An object blessed into any *URI* subclass. For example:

            my $uri = URI->new('http://foo.com/my.foaf');
            my $foaf = XML::FOAF->new($uri);

        The URI can be either for a FOAF file (for example, the above), or
        an HTML page containing a "<link>" tag for FOAF auto-discovery:

            <link rel="meta" type="application/rdf+xml" title="FOAF" href="http://foo.com/my.foaf" />

        If the URI points to an HTML page with FOAF auto-discovery enabled,
        *XML::FOAF* will parse the HTML to find the FOAF file automatically.

    *   A scalar reference

        This indicates a reference to a string containing the FOAF data. For
        example:

            my $foaf_data = <<FOAF;
            ...
            FOAF
            my $foaf = XML::FOAF->new(\$foaf_data, 'http://foo.com');

    *   A filehandle

        An open filehandle from which the FOAF data can be read. For
        example:

            open my $fh, 'my.foaf' or die $!;
            my $foaf = XML::FOAF->new($fh, 'http://foo.com');

    *   A file name

        A simple scalar containing the name of a file containing the FOAF
        data. For example:

            my $foaf = XML::FOAF->new('my.foaf', 'http://foo.com');

  $foaf->person
    Returns a *XML::FOAF::Person* object representing the main identity in
    the FOAF file.

  $foaf->assurance
    If the FOAF file indicates a PGP signature in *wot:assurance*, the URL
    for the detatched signature file will be returned, "undef" otherwise.

  $foaf->verify
    Attempts to verify the FOAF file using the PGP signature returned from
    *assurance*. *verify* will fetch the public key associated with the
    signature from a keyserver. If no PGP signature is noted in the FOAF
    file, or if an error occurs, "undef" is returned. If the signature is
    invalid, 0 is returned. If the signature is valid, the PGP identity
    (name and email address, generally) of the signer is returned.

    Requires *Crypt::OpenPGP* to be installed.

REFERENCES
    http://xmlns.com/foaf/0.1/

    http://rdfweb.org/foaf/

LICENSE
    *XML::FOAF* is free software; you may redistribute it and/or modify it
    under the same terms as Perl itself.

AUTHOR & COPYRIGHT
    Except where otherwise noted, *XML::FOAF* is Copyright 2003 Benjamin
    Trott, cpan@stupidfool.org. All rights reserved.