Bibleref Markup

Bibleref is a simple approach to automatically identifying Bible references that are embedded in blog posts and other web pages. This enables search engines, content aggregators, and other automated tools to correctly label the references so they're more easily searchable. Bibleref is part of a general movement toward markup that expresses more semantic, rather than presentational, element.
Quick Start
In a hurry? Check out Bibleref in 60 Seconds!

The Problem

Each days thousands of web pages are posted that include references to Bible verses. A simple query against Technorati for blogs that include the tag "bible" turns up thousands of result. So clearly there are lots of Bible references out there.

Wouldn't it be great if you could:

  • search for web pages that reference particular passages you're interested in
  • find how often specific chapters or verses are mentioned across the web
  • avoiding finding pages whose contents mistakenly resemble a Bible reference

There are lots of possibilities, but unfortunately it's not easy to identify what is (and isn't) a Bible reference. The various ways of representing Bible references in text, while sensible in their context when read by humans, often either don't look like references, or overlap with other things that do look like references (but aren't). Some of the problems:

  • People use a wide variety of different abbreviations for book names: 2 Timothy, 2Tim (with or without a period), 2nd Timothy, IITim, etc.
  • Things that aren't Bible references can look like one to a search engine. For example, "Mark 1" (the first chapter of the Gospel According to Mark) is also a World War I tank, a type of British railway carriage, and one of the first large-scale computers (the Harvard Mark I).
  • Languages other than English use their own names for Biblical books: in French, Jean 3:16, in Spanish, Juan 3:16; etc. This makes it hard to find references from outside one's own linguistic community.

The Solution

Once a span of text is identified as a Bible verse, it can usually be automatically parsed to identify the book, chapter, and verse. So the most important change, which addresses most of the problem, is simply to label Bible references. Existing web standards allow it, and existing editing and blogging tools generally make it easy. The missing pieces are willingness to do it and agreement on an approach.

The Approach

Bibleref requires nothing beyond standard HTML markup (or "plain old semantic HTML") to accomplish the goal of unambiguously identifying Bible references. The heart of the approach is simply to include the identifier 'bibleref' in a class attribute.

In certain cases, the intended reference may not be clear, either because it is expressed in prose that would be hard to parse, or because it relies on context. In these cases, the additional requirements is to specify the reference in the title attribute. This is not required if the reference is clear (though it is allowed).

The reference should be as specific as necessary to capture the author's intent, but chapter and verse references are not required. For example, given the text "... Mark 4 contains the parable of the sower, as well as it's interpretation...", the intended reference does not include any verse numbers, and they are not required.

This overview provides an informal description of the most common cases: see the specification for details.

Citing a Verse (Without Hyperlink)

Add a cite tag with class attribute bibleref.

Example
<cite class="bibleref">2 Tim 2:15</cite>

Citing a Verse (With Hyperlink)

Add a class attribute bibleref to the a element that indicates the hyperlink.

Example
<a href="http://www.gnpcb.org/esv/search/?q=2+Tim+2.15" class="bibleref">2 Tim 2:15</a>

Citing a Verse, Using the title Attribute to Specify the Reference

If the enclosed text does not clearly identify the intended reference, a full reference should be given in the title attribute. The format is flexible, and most common formats should work: see the bibleref specification for details. As many information elements should be included as necessary to capture the author's intent (optional translation identifier, book, chapter, and verse).

Example
(This text would be difficult for computer systems to parse, so the title attribute is used to specify the reference)

In <cite class="bibleref" title="2Tim 2:15">Paul's second epistle to Timothy, the second chapter and the fifteenth verse</cite>, we see ...
Example
(The document context is required to determine the full reference, so the title attribute is required)

Chapter 2 of 2Timothy contains Paul's encouragement to his young assistant ... the "word of truth" in <cite class="bibleref" title="2Tim 2:15">verse 15</cite> refers to ...
Example
(The title attribute is used to specify a particular version)

<cite class="bibleref" title="ESV 2Tim 2:15">the ESV's translation of 2Tim 2:15</cite>

Acknowledgements

  • OpenBible.info contributed several helpful ideas.
  • Several details were clarified by Chris Roberts' implementation of a bibleref page processor.