I would second that, given that the RDF looks like:
<rdf:Description rdf:ID="etext13218">
<dc:publisher>&pg;</dc:publisher>
<dc:title rdf:parseType="Literal">Don Orsino</dc:title>
<dc:creator>Crawford, F. Marion (Francis Marion) (1854-1909)</dc:cre
+ator>
<dc:language>en</dc:language>
<dc:created>2004-08-19</dc:created>
<dc:rights rdf:resource="&lic;" />
</rdf:Description>
Then all you need is something trivial like this to create a file ready for a MySQL 'load data local infile .....' #!/usr/bin/perl
local $/ = "\n\n";
open RDF, $ARGV[0] or die $!;
while(<RDF>){
next unless m/<rdf:Description rdf:ID="etext(\d+)"/;
my $id = $1;
next unless m/<dc:title[^>]+>([^<\n]+)</;
my $title = $1;
next unless m/<dc:creator>([^<\n]+)</;
my $author = $1;
$title =~ s/\s+/ /g;
$author =~ s/\s+/ /g;
print "$id\t$title\t$author\n";
}
|