Why not adopt me?
NAME
Religion::Bible::Reference - canonicalize shorthand bible references
VERSION
version 0.011
$Id: /my/cs/projects/bibleref/trunk/lib/Religion/Bible/Reference.pm 27795 2006-11-11T02:06:40.791057Z rjbs $
SYNOPSIS
use Religion::Bible::Reference;
my $quote = bibref("jn8:32");
print "($quote)"; # (John 8:32)
print $quote->book; # John
DESCRIPTION
This module converts simple text descriptions of bible references and ranges into objects that stringify into a canonical form.
WARNING! This module is mostly an idea and not so much a guaranteed interface or well-tested implementation. If you're interested in either of those existing, you should let me know.
FUNCTIONS
bibref($ref_string)
This function is exported by default, and constructs a new Religion::Bible::Reference
Reference strings must be a book followed by a list of chapters, verses, or ranges. The following are all valid ranges:
Pro 23:12, 23:15-17
st.jn8:32
Song of Solomon 8:7-8
2 John 1
METHODS
Religion::Bible::Reference->new($ref_string)
This method acts just like the exported bibref
function.
$self->stringify
This method returns a string representing the reference, using the canonical book name.
$class->canonicalize_book($book_abbrev)
If possible, this method returns the canonical name of the book whose abbreviation was passed.
validate_verse
$class->validate_verse($book, $chapter, $verse)
This method returns true if the given book, chapter, and verse exists; otherwise it returns false.
iterator
my $iterator = $bibref->iterator;
while (my $verse = $iterator->next) {
my $text = retrieve($verse);
print "$text\n";
}
AUTHOR
Ricardo Signes, <rjbs@cpan.org>
TODO
allow Text::Abbrev instead of registered abbrevs
clean up regex/lists
make public the interface to load modules of books and abbreviations
make an interface to unload modules
BUGS
Please report any bugs or feature requests to bug-religion-bible-reference@rt.cpan.org
, or through the web interface at http://rt.cpan.org. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.
COPYRIGHT
Copyright 2005-2006 Ricardo Signes, All Rights Reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.