=encoding euc-jp =head1 NAME XML::FOAF - FOAF (Friend of a Friend) データを解析 =head1 SYNOPSIS use XML::FOAF; use URI; my $foaf = XML::FOAF->new(URI->new('http://foo.com/my.foaf')); print $foaf->person->mbox, "\n"; =head1 DESCRIPTION I は FOAF (Friend of a Friend) データのオブジェクト指向インタフェースを 提供します。 =head1 USAGE =head2 XML::FOAF->new($data [, $base_uri ]) I<$data> から FOAF データを読み込んで解析します。成功したならば、 I オブジェクトを返し、エラーの場合は C を返します。 もしエラーが発生したならば、 XML::FOAF->errstr を呼びましょう。エラーについて説明したテキストを取得できます。 I<$base_uri> は FOAF で定義されたリソースから絶対 URL を構築するために 使われる規定 URI です。I<$data> が URI オブジェクトではないときに必要となります。 URI オブジェクトであれば、そのオブジェクトから I<$base_uri> を取得します。 I<$data> は次の中の何れかになります: =over 4 =item * A URI object(URI オブジェクト) I のサブクラスのオブジェクトです。例えば次のようにします: my $uri = URI->new('http://foo.com/my.foaf'); my $foaf = XML::FOAF->new($uri); URI としては、(上の例のように)FOAF ファイルか若しくは FOAF 自動探索のための ClinkE> タグが使われた HTML ページを与えることができます。 もし、URI が FOAF の自動探索を有効にした HTML 文書を指し示しているならば、 I は HTML を解析して自動的に FOAF ファイルを見つけだします。 =item * A scalar reference(スカラーリファレンス) FOAF データの文字列のリファレンスを与えます。例えば次のようにします: my $foaf_data = <new(\$foaf_data, 'http://foo.com'); =item * A filehandle(ファイルハンドル) FOAF データのファイルを開いたファイルハンドルを与えます。例えば次のようにします: open my $fh, 'my.foaf' or die $!; my $foaf = XML::FOAF->new($fh, 'http://foo.com'); =item * A file name(ファイル名) FOAF データのファイルのファイル名を単純なスカラー値として与えます。 例えば次のようにします: my $foaf = XML::FOAF->new('my.foaf', 'http://foo.com'); =back =head2 $foaf->person FOAF ファイルからその代表的な象徴である I オブジェクトを 返します。 =head2 $foaf->assurance もし、FOAF ファイル内で I として PGP シグネチャがあれば、 シグネチャファイルの URL を返します。そうでないならば undef を返します。 =head2 $foaf->verify I から返された PGP シグネチャを使って FOAF ファイルの検証を 試みます。I は、鍵サーバ(keyserver)からそのシグネチャの 公開鍵を取得します。FOAF ファイルに PGP シグネチャがない場合と エラーが発生した場合には、C を返します。もし、正当なシグネチャ であれば、署名の PGP identity(大抵は、名前と電子メールアドレス)を 返します。 =head1 REFERENCES http://xmlns.com/foaf/0.1/ http://rdfweb.org/foaf/ =head1 LICENSE I is free software; you may redistribute it and/or modify it under the same terms as Perl itself. =head1 AUTHOR & COPYRIGHT Except where otherwise noted, I is Copyright 2003 Benjamin Trott, cpan@stupidfool.org. All rights reserved. =head1 翻訳について 翻訳者:IWAI, Masaharu Eiwaim.sub@gmail.comE Perlドキュメント日本語訳 Project にて、 Perlモジュール、ドキュメントの翻訳を行っております。 L, L, L =cut