NAME

WWW::Finger::Webfinger - WWW::Finger module for Webfinger

VERSION

0.08

DESCRIPTION

Webfinger is currently a very unstable specification, with implementation details changing all the time. Given this instability, it seems prudent to describe the protocol, as implemented by this package.

Given an e-mail-like identifier, the package will prepend "acct:" to it, assuming that the identifier doesn't already have a URI scheme. This identifier will now be called [ident].

The package looks up the host-meta file associated with the host for [ident]. It is assumed to be formatted according to the draft-hammer-hostmeta-05 Internet Draft http://tools.ietf.org/html/draft-hammer-hostmeta-05 and XRD Working Draft 10 <http://www.oasis-open.org/committees/download.php/35274/xrd-1.0-wd10.html>. Both these drafts are dated 19 November 2009.

A link template will be extracted from the host-meta for the host using either of the following two relationships: http://lrdd.net/rel/descriptor, http://www.iana.org/assignments/relation/lrdd. (Neither is prioritised, so if both exist and have different templates, hilarity will ensue.)

The token "{uri}" in the link template will be replaced with the URL-encoded version of [ident] to create an account descriptor URI.

The account descriptor URI is fetched via HTTP GET with an Accept header asking for RDF/XML, Turtle, RDF/JSON or XRD. The result is parsed for account description data if it has status code 200 (OK).

The following relationships/properties are understood in the account description:

  • http://xmlns.com/foaf/0.1/name

  • http://xmlns.com/foaf/0.1/homepage

  • http://webfinger.net/rel/profile-page

  • http://xmlns.com/foaf/0.1/weblog

  • http://xmlns.com/foaf/0.1/mbox

  • http://webfinger.net/rel/avatar

  • http://xmlns.com/foaf/0.1/img

  • http://xmlns.com/foaf/0.1/depiction

  • http://ontologi.es/sparql#endpoint

SEE ALSO

WWW::Finger, XRD::Parser.

http://code.google.com/p/webfinger/.

AUTHOR

Toby Inkster, <tobyink@cpan.org>

COPYRIGHT AND LICENSE

Copyright (C) 2009-2010 by Toby Inkster

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.1 or, at your option, any later version of Perl 5 you may have available.