Development/TaggingSystem

Tagging system

Purpose

The purpose of the tagging system is to put study objects (verses, outline sections, etc.) into categories / assign keywords in order to easily find the material later on. Furthermore a tagging system would be very useful for

  • general observation
  • topic studies
  • big picture studies / patterning
  • the analysis of different aspects of a passage / book

Implementation

Data model

Tags can basically created and assigned for all objects in the text view including:

  • Single verses
  • Outline sections
  • Arbitrary passages
  • Chapters (?)
  • A whole book (?)

Each object can have any desired number of tags.

The tags are created within a hierarchy, i.e:

  • Gifts
    • Teaching
      • Value of teaching
      • Example of teaching
      • False teaching
    • Pastoring
      • Heart of the shepherd
      • A pastor (person)
      • ...
  • God's character
    • Love
    • Grace
    • Mercy
    • Compassion
    • Holiness
    • ...

Attributes of a tag:

  • user_id
  • parent_id
  • short_text
  • long_text
  • created_at
  • updated_at

User interface (UI)

The UI will have a new mode switch displayed in the top menu. The switch is used to switch the current activity/mode. With Version 0.2 there will be two modes:

  • Outlining (already available from 0.1)
  • Tagging (will be implemented for 0.2)

Depending on the mode switch the object context menu (shown hovering over the reference or the section title, etc.) will be changed accordingly. Whereas in the outlining mode you'll have the outlining-buttons, in the tagging mode you will only have one button to assign a tag. Eventually there will be additional buttons, though. After clicking on the "Assign tag" button a window containing the tag hierarchy will be opened. Within this window the user can manage the existing tags and select the tag(s) for the currently focused object.

Furthermore the left hand panel will be extended with a new tab for "Tags". This tab will have the following content:

  • Currently focused object (verse / outline-section / ...)
  • Table with a list of tags and the assigned objects

In General the left hand panel is always displayed within the context of the currently selected bible book. That means, that you will only see the objects, which belong to the currently shown bible book. This is how the "Tags" tab could look like:


Currently focused:

Item: John 3:16

Assigned tags: God, Love, World, Salvation, Eternal life

Overview:

TagTagged items
Eternal lifeJohn 3:16; John 5:24; John 10:10b
LoveJohn 3:16; John 21:15-17

Besides that tag context view it is imaginable that there could be a tag navigation for the whole bible. This would have to be described in detail. In General you would have a display of the tag hierarchy; you could then click on i.e. the associated verse references in order to see the appropriate passages. Furthermore there could be a special "verse list view", which would show all verses associated with particular tag(s) including the complete text of the verses. It should be possible to export such verse lists both as PDF and as editable files (RTF / Plaintext).