Bible Tags

The CMS system includes a tagset dealing with the issue of referencing bibles inside website articles. The ability to easily and cleanly quote bible passages was one of the original development goals behind this system. This page explains each of the tags available in the bible tagset.

Like the rest of the Iapetos/cms system considerable attention has been put into making sure that each interesting part of displayed bible quotes is properly spanned with unique class="" attributes. This is deliberate, and allows website style guides to radically effect how bible quotes are displayed. A full discussion is beyond the scope here. Use your browser's "view source" function to see styles around specific parts of displayed bible quotes in order to learn the handles available for style modification.

Enabling bible tagset

All of the tags in this tagset start with <bible: and to use these tags on an article the bible tagset must be enabled. This is done with a PythonOption line in the apache configuration file for the site. (Or the .htaccess file if the apache config file is not available.) An example:

PythonOption cms.tagsets                 "{'base':'base','bible':'bible'}"

This example turns on both base and bible tagsets, which is the normal case. The bible set REQUIRES the base set to function correctly.

In this example, the tagset name, and the prefix found in the files are the same, it is possible, but NOT RECOMMENDED, to change the prefix: {'bbl':'bible'} would cause all tags to be required to start with <bbl: instead of bible. By changing to a non-standard prefix, the HTML of articles cannot be easily moved to websites using a different convention.

The PythonOption value is handled under a Python "eval" environment, and is a dictionary of tagset prefix strings as keys and the values as modules names.

Once enabled, the following tags are available in this tagset.

bible:quote

The most basic and common tag is used to quote single verses. This is done with the <bible:quote/> tag. An example:

<bible:quote book="John" chapter="3" verse="16"/>

This generates an HTML block level element, a quote box, which provides the quote, with the default version displayed and the other available versions as links across the bottom of the box. The sample tag given above renders like this:

40 John 3:16
16For God so loved the world that he gave his only begotten Son, that whoever believes in him should not perish, but have eternal life.

There are common variations on this theme. To quote more than one verse, the count of total verses is added as an additional parameter:

<bible:quote book="John" chapter="3" verse="16" count="2"/>

And of course it renders like this:

40 John 3:16-17
16For God so loved the world that he gave his only begotten Son, that whoever believes in him should not perish, but have eternal life.
17For God did not send his Son into the world to condemn the world; but that the world should be saved by him.

As a matter of style on most of our websites we allow the person reading the article to select their favorite version. If, for some reason, only a certain version will do, this can be forced by adding the version="" parameter, like this:

<bible:quote version="asv" book="John" chapter="3" verse="16"/>

Which is rendered slightly differently. The box is there, but there is no ability to change versions.

40 John 3:16
16For God so loved the world, that he gave his only begotten Son, that whosoever believeth on him should not perish, but have eternal life.

This tag has a natural limit on the amount of text that will be quoted. It will never quote past the end of a chapter, even if the count is higher than the number of verses in a chapter.

The tag requires the book="" parameter, but the rest are optional, and default to values of "1"

<bible:quote book="40" chapter="3" verse="16"/>

Is rendered as:

40 John 3:16
16For God so loved the world that he gave his only begotten Son, that whoever believes in him should not perish, but have eternal life.

The book parameter can also be provided as a number from the IBF Book Number series. In that series John is book 40, so the following example works as expected:

<bible:quote book="40" chapter="3"/>

Is rendered as:

40 John 3
11 1There was at that place a man of the Pharisees, named Nicodemus, a leader of the Jews;
2he came at night to Jesus and said to him, Rabbi, we know that you are a teacher sent from God; for no man can do these miracles that you are doing unless God is with him.
3Jesus answered, saying to him, Truly, truly, I say to you, If a man is not born again, he cannot see the kingdom of God.


12 4Nicodemus said to him, How can an old man be born again? Can he enter a 2nd time into his mother's womb and be born?
5Jesus answered, saying to him, Truly, truly, I say to you, If a man is not born of water and the Spirit, he cannot enter into the kingdom of God.
6What is born of flesh is flesh; and what is born of the Spirit is spirit.
7Do not be surprised because I have told you that you all must be born again.
8The wind blows where it pleases, and you hear its sound; but you do not know where it comes from, nor where it goes; such is every man who is born of the Spirit.


13 9Nicodemus answered, saying to him, How can these things be?
10Jesus answered, You are a teacher of Israel, yet you do not understand these things?
11Truly, truly, I say to you, We speak only what we know, and we testify only to what we have seen; yet you do not accept our testimony.
12If I have told you about things in lands and you do not believe, then how will you believe me if I tell you about things in skies?
13No man has ascended to the skies except him who came down from the skies, even the Son of man, who is in the skies.
14Just as Moses lifted up the serpent in the wilderness, so the Son of man is ready to be lifted up;
15so that every man who believes in him should not perish, but have eternal life.
16For God so loved the world that he gave his only begotten Son, that whoever believes in him should not perish, but have eternal life.
17For God did not send his Son into the world to condemn the world; but that the world should be saved by him.
18He who believes in him will not be condemned; and he who does not believe has already been condemned for not believing in the name of the only begotten Son of God.
19And this is the judgment, that light has come into the world, yet men have loved darkness more than light, because their works were evil.
20For everyone who does detestable things hates the light, and he does not come to the light, because his works cannot be covered.
21But he who does truthful things comes to the light, so that his works may be known, that they are done through God.


14 22After these things, Jesus and his disciples came to the land of Judea, and he remained there and baptized with them.
23John was also baptizing at the spring of Aenon near to Shalim, because there were great quantities of water there; and they came and were baptized.
24For John was not yet cast into prison.
25Now it happened that a dispute arose between one of John's disciples and a Jew about the ceremony of purifying.
26So they came to John and told him, Teacher, he who was with you at the Jordan crossing, concerning whom you testified, look, he is also baptizing and a great many are coming to him.
27John answered, saying to them, No man can receive anything by his own will, except it is given to him from the skies.
28You yourselves bear witness that I said, I am not the Messiah, but only a messenger to go before him.
29He who has a bride is the bridegroom; and the best man of the bridegroom is he who stands up and listens to him, and rejoices greatly because of the bridegroom's voice; in this, my joy is fulfilled.
30He must become greater and I lesser.
31For he who has come from above, is above all; and he who is of the land is of the land, and he speaks from the land; but he who has come from the skies, is above all.
32And he testifies of what he has seen and heard, yet no man accepts his testimony.
33He who accepts his testimony, has set his seal that God is true.
34For he, whom God has sent, speaks the words of God; for God did not give the Spirit by measure.
35The Father loves the Son, and has placed everything under his hand.
36He who believes in the Son, has eternal life; and he who does not obey the Son, will not see life, but the wrath of God will remain on him.

bible:quoterange

There are rarely times when a very large passage needs to be quoted, or, when the quote goes past a chapter. The <bible:quoterange/> tag provides support for this type of long quote.

<bible:quoterange bookstart="66" chapterstart="12" versestart="16"
                     bookstop="66" chapterstop="13" versestop="2"/>

Is rendered as the following:

66 Revelation 12:16-33
16But the land helped the woman, and the land opened its mouth and swallowed up the water which the dragon had spouted out of his mouth.
17And the dragon was enraged at the woman, and he went to make war with the rest of her children, who keep the commandments of God and have the testimony of Jesus.


39 1And as I stood on the sand of the shore, I saw a wild animal rise up out of the sea, having 10 horns and 7 heads, and on his horns 10 crowns, and on his heads blasphemous words.
2And the wild animal which I saw was like a leopard, and his feet were like the feet of a bear, and his mouth like the mouth of a lion; and the dragon gave him his power and his throne and great authority.

bible:footnote

Full inline quotes are often distracting, especially when the text of the referenced verse is not needed to understand the flow of an article. For this case the bible:footnote tag provides an easy way to get a footnote with the full bible cite, and an optional comment, but without taking up the space for a full quote.

The following is a sample paragraph, the bible:footnote tag provides the information that makes up the note. The content is placed at the bottom of the page, as it is in this page. The example:

<p>One day I was looking for a verse.  Not sure where it 
was.<bible:footnote book="John" chapter="3" verse="16" 
comment="Later I asked a friend where to find it."/>
I was at a loss of where to find it.</p>

Is rendered as:

One day I was looking for a verse. Not sure where it was.1 I was at a loss of where to find it.

Note how the actual foot note is found at the bottom of the displayed page, as it is here. The page foot notes are given numbers, sequentially, starting at number 1, and assigned to each foot note on the page. Non bible footnotes can also be interspersed.2

The major difference between the <base:footnote/> tag and the <bible:footnote/> tag is that the <bible:footnote/> form shows up in the index to scripture references generated using the build tools. So, if you are noting a scripture address the bible form should be used. All other footnotes should use the base:footnote form.

Because the <bible:footnote/> tag is an extension to the <base:footnote/> tag it is also possible to reference a previous footnote. For example:

<p>When someone asked me who helped find the verse I would not
say.<base:footnote repeat="last"/></p>

Renders like this:

When someone asked me who helped find the verse I would not say.2

It is also possible to reference any other previous footnote by number in the repeat="" parameter to the tag. Another example:

<p>The story was getting old.  I would not tell them
the verse.<base:footnote repeat="1"/></p>

Is rendered as:

The story was getting old. I would not tell them the verse.1

bible:cite

An alternative to the use of footnotes is the use of a citation of the direct reference to a scripture address. The <bible:cite/> tag is used in that case.

The appeal of this form is that there isn't a huge list of footnotes, but at the expense of reading past a citation. An example:

<p>Academics is a mixed bag.  Some call it a tradition of
men.<bible:cite book="Mark" chapter="7" verse="8"/>  While others
ask what alternative do we have?</p> 

Is rendered as:

Academics is a mixed bag. Some call it a tradition of men (42 Mark 7:8). While others ask what alternative do we have?

bible:dot

Dots are used as decorations in various ways. As a convention we put book numbers into circles on many of our websites. We do this using a set of shapes provided by the <bible:dot/> tag.

<bible:dot number="55" color="#aaa"/>

Is rendered as:

55

Notes On Rendering

This tag generates unicode values from the symbols sections in that code system. It is touchy as to support, requiring a browser with both full Unicode support and support in the underlying fonts.

Browsers known to support in their current versions:

  • Firefox -- Yes
  • Epiphany -- Yes
  • Opera -- Yes
  • Safari -- Untested
  • Konqueror -- Yes
  • MSIE -- Untested

Alternative Shapes

The shape can be varied as well.

<p>
Circle: <bible:dot shape="circle" number="11" color="#aaa"/>
<br/>
Diamond: <bible:dot shape="diamond" number="55" color="#afa"/>
<br/>
Down: <bible:dot shape="down" number="55" color="#afa"/>
<br/>
Ellipse: <bible:dot shape="ellipse" number="55" color="#f88"/>
<br/>
Hexagon: <bible:dot shape="hexagon" number="33" color="#faa"/>
<br/>
Left: <bible:dot shape="left" number="23" color="#faf"/>
<br/>
Parallelogram: <bible:dot shape="parallelogram" number="44" color="#aaf"/>
<br/>
Pentagon: <bible:dot shape="pentagon" number="55" color="#aff"/>
<br/>
Rectangle: <bible:dot shape="rectangle" number="66" color="#ffa"/>
<br/>
Right: <bible:dot shape="right" number="49" color="#ddd"/>
<br/>
Square: <bible:dot shape="square" number="23" color="#faf"/>
<br/>
Star: <bible:dot shape="star" number="39" color="#ffa" />
<br/>
Up: <bible:dot shape="up" number="59" color="#fa8"/>
</p>

Circle: 11
Diamond: 55
Down: 55
Ellipse: 55
Hexagon: 33
Left: 23
Parallelogram: 44
Pentagon: 55
Rectangle: 66
Right: 49
Square: 23
Star: 39
Up: 59

bible:dotdefault

Often the values used for dots are the same across an entire page. The <bible:dotdefault> tag is used to set defaults for use on all following tags. (Until the defaults are changed.)

<bible:dotdefault color="#ff0" shape="hexagon"/>

<p>

<bible:dot number="5"/>  This case...
<br/>
<bible:dot number="10"/> That case..
</p>

<bible:dotdefault color="#faa" shape="square"/>

<p>
<bible:dot number="15" />  This case...
<br/>
<bible:dot number="25" />  That case...
</p>

Is rendered as...

5 This case...
10 That case..

15 This case...
25 That case...


1 John 3:16 -- Later I asked a friend where to find it.   
2 My friend's name was Joe.