NAME
XML::Generator::RFC822::RDF - generate RDF/XML SAX2 events for RFC822 messages
SYNOPSIS
my $folder = Email::Folder->new($path_mbox);
while (my $msg = $folder->next_message()) {
my $writer = XML::SAX::Writer->new();
my $filter = XML::Filter::DataIndenter->new(Handler=>$writer);
my $generator = XML::Generator::RFC822::RDF->new(Handler=>$filter);
$generator->parse($msg);
}
DESCRIPTION
Generate RDF/XML SAX2 events for RFC822 messages.
Messages are keyed using SHA1 digests of Message-IDs and email addresses. In the case of the latter this makes it easier to merge messages with contact data that has been serialized using XML::Generator::vCard::RDF (version 1.3+)
DOCUMENT FORMAT
+ rdf:RDF
+ rdf:Description
@rdf:about = x-urn:ietf:params:rfc822#SHA1([MESSAGEID])
- rfc822:To
@rdf:resource = http://http://xmlns.com/foaf/0.1/mbox_sha1sum#SHA1([EMAILADDRESS])
- rfc822:From
@rdf:resource = http://http://xmlns.com/foaf/0.1/mbox_sha1sum#SHA1([EMAILADDRESS])
- rfc822:Cc
@rdf:resource = http://http://xmlns.com/foaf/0.1/mbox_sha1sum#SHA1([EMAILADDRESS])
- rfc822:Return-Path
@rdf:resource = http://http://xmlns.com/foaf/0.1/mbox_sha1sum#SHA1([EMAILADDRESS])
- rfc822:Delivered-To
@rdf:resource = http://http://xmlns.com/foaf/0.1/mbox_sha1sum#SHA1([EMAILADDRESS])
- rfc822:Reply-To
@rdf:resource = http://http://xmlns.com/foaf/0.1/mbox_sha1sum#SHA1([EMAILADDRESS])
- rfc822:In-Reply-To
@rdf:resource x-urn:ietf:params:rfc822#SHA1([INREPLYTO])
- rfc8822:References
@rdf:resource x-urn:ietf:params:rfc822#SHA1([REFERENCES])
- rfc822:Date [REFORMATTED AS W3CDTF]
- rfc822:[ALLOTHERHEADERS]
+ rfc822:Body
+ rdf:Seq
- rdf:li
@rdf:resource = x-urn:ietf:params:rfc822:Body#SHA1([MESSAGEID])_[n]
# Body/MIME parts
# (1) or more
+ rdf:Description
@rdf:aboout = x-urn:ietf:params:rfc822:Body#SHA1([MESSAGEID])_[n]
- rfc822:content-type
- rdf:value
# To, From, Cc, Return-Path, Delivered-To, Reply-To
# (1) or more
+ rdf:Descripion
@rdf:about = http://xmlns.com/foaf/0.1/mbox_sha1sum#SHA1([EMAILADDRESS])
- vCard:FN
- vCard:EMAIL
# In-Reply-To, References
# (1) or more
+ rdf:Description
@rdf:about = x-urn:ietf:params:rfc822#SHA1([MESSAGEID])
- rfc822:Message-ID
All MIME values are decoded and everything is encoded as UTF-8.
PACKAGE METHODS
__PACKAGE__->new(%args)
This method is inherited from XML::SAX::Base and returns a XML::Generator::RFC822::RDF object. Additionally, the following parameters are allowed :
Brief
Boolean.
If true, the parser will ignore a message's body and all headers except : To, From, Cc, Return-Path, Delivered-To, Reply-To, Date, Subject
Default is false.
OBJECT METHODS
$obj->parse(@messages)
Where @messages is one or more Email::Simple objects.
VERSION
1.1
DATE
$Date: 2004/12/22 23:21:21 $
AUTHOR
Aaron Straup Cope <ascope@cpan.org>
SEE ALSO
LICENSE
Copyright (c) 2004 Aaron Straup Cope. All Rights Reserved.
This is free software, you may use it and distribute it under the same terms as Perl itself.