Difference between revisions of "Frontends:Bookmarks Standard"

From CrossWire Bible Society
Jump to: navigation, search
(A shared format: XML)
(See also: Bookmarks Standard)
 
(37 intermediate revisions by 3 users not shown)
Line 2: Line 2:
  
 
==Feature wish list for format==
 
==Feature wish list for format==
*nested folders
+
'''Bookmark Item:'''
*able to link to specific modules
+
* nested folders
*has a way of adding free text at any given level
+
* able to link to specific modules
*can link to verses, verse ranges, chapters, sections, paragraphes, subverse
+
* has a way of adding free text at any given level (like Description in a Firefox bookmark)
*should utilise as much as possible existing shared/shareable code
+
* can link to verses, verse ranges, chapters, sections, paragraphs, sub-verse
*internationalised
+
* should utilise as much as possible existing shared/shareable code
 +
* internationalised
 +
* time of creation and last read
 +
* color of verse or range
  
'''Kostya Maslyuk wrote:'''
+
'''History Item:'''
* history, history entry in my mind should consists of range user read, place and time user finished, module
+
* range user read - used for forgotten places, determine books and chapters user never read or read long time ago
 +
* place user finished read
 +
* time user finished read
 +
* module
  
==Current formats in use==
+
==Existing standards==
  
 +
===Xiphos Bookmarks Format===
 
Xiphos and BibleCS(?) use this format:
 
Xiphos and BibleCS(?) use this format:
  
Line 32: Line 39:
 
</pre>
 
</pre>
  
==A shared format==
+
; Advantages
At top of XML structure should persists format version attribute.
+
* Format used in popular desktop application
  
Child nodes represent main data sets: bookmarks, history, notes. Each should have information about last synchronization time, application name and version (for debugging).
+
; Disdvantages
 +
* Localization of Folder/caption and Bookmark/description uses html encoded characters like &#40D1 . Maybe it is better to use utf-8 and put it in xml tag text space like <title>Personal</title>?
 +
* Necessity to grow to satisfy all applications needs.
 +
 
 +
=== XBEL ===
 +
There are definitely bookmark formats floating around already which have some amount of standardization.  See the [http://en.wikipedia.org/wiki/XBEL XML Bookmark Exchange Language (XBEL)] and the related links to '''XOXO''' and '''OPML'''.
 +
 
 +
'''Example of XBEL-standardized bookmarks file:'''
 +
<pre>
 +
<?xml version="1.0" encoding="utf-8"?>
 +
<xbel version="1.0">
 +
    <folder id="folder1" added="2010-03-23T13:15:07.512">
 +
        <title>Bible Bookmarks</title>
 +
        <info>
 +
            <metadata owner="ApplicationName" dateadded="1269349684570502" lastmodified="1269511284396136"/>
 +
        </info>
 +
        <folder id="folder2" added="2010-03-23T13:15:07.512">
 +
            <title>My Favorite Places</title>
 +
            <bookmark id="any" added="2010-03-25T10:01:16.473" visited="2010-03-25T10:00:50.972" modified="2010-03-25T10:01:24.549" href="bible://john/#note-N66131">
 +
                <title>John</title>
 +
                <info>
 +
                    <metadata owner="ApplicationName" dateadded="1269349684570502" lastmodified="1269349684648629"/>
 +
                </info>
 +
            </bookmark>
 +
        </folder>
 +
    </folder>
 +
</xbel>
 +
</pre>
 +
 
 +
Metadata came from Firefox [https://addons.mozilla.org/en-US/firefox/addon/8426 SyncPlaces].
 +
 
 +
; Advantages
 +
* Internet bookmarks are very similar to Bible bookmarks.
 +
* It's better to use existing widespread format.
 +
* import local xbel file into browser (that allows to synchronize further through bookmarking service).
 +
* needn't conversion to upload on server.
 +
* wide format infrastructure, [http://xbel.sourceforge.net/ look here].
 +
 
 +
; Disdvantages
 +
* An internet bookmark is not the same as a Bible bookmark, I'm anxious to counter limitations of XBEL.
 +
* On mobile devices, processing complex format with a lots of bookmarks can affect performance.
 +
 
 +
=== OPML ===
 +
One example of the use of [http://en.wikipedia.org/wiki/OPML OPML] for bookmark import/export is the [http://sagerss.com/ Sage] lightweight RSS and Atom feed reader - which is an add-on for Mozilla Firefox.
  
 
==Ways of sharing==
 
==Ways of sharing==
 +
:''Please add your ideas here''.
 +
 +
* local bookmark file replacement
 +
* public internet bookmark sharing service: google.com/bookmarks
  
 
==Current situation==
 
==Current situation==
 
:''Please describe here which front-ends already support local bookmarks, and how?''
 
:''Please describe here which front-ends already support local bookmarks, and how?''
 +
 +
Four of the listed front-ends support exporting of bookmarks.
  
 
* See [[Choosing a SWORD program]] - section '''3.6 Bookmarking, Tagging, Listing and Notes'''. Some significant front-ends are not yet listed in this page. (e.g. PocketSword).
 
* See [[Choosing a SWORD program]] - section '''3.6 Bookmarking, Tagging, Listing and Notes'''. Some significant front-ends are not yet listed in this page. (e.g. PocketSword).
 +
* PocketSword - currently only supports basic bookmarks (add a bookmark for a specific verse, and touch the bookmark and it will show that verse in the context of the entire chapter it appears in - which it does because PocketSword is entirely based around viewing chapters, not a verse or verse range).  I have plans to completely redo bookmarks, to be much more inline with what appears in this page (as of 25/3/2010).  It also similarly supports history:  with one for Bible history and another for Commentary history.
 +
 +
===FireBible===
 +
 +
FireBible is a unique case in that, being a Firefox add-on, it uses the existing bookmarks structure of Mozilla Firefox, with additions to the Firefox menus. Moreover, it also supports [http://en.wikipedia.org/wiki/Uniform_Resource_Identifier URIs] that begin with '''bible:''' and '''sword:''' as extensions to the browser.
 +
 +
== See also ==
 +
* [[Frontends:URI Standard]]
  
[[Category:SWORD Frontends|BookmarksStandard]]
+
[[Category:SWORD Frontends|Bookmarks Standard]]
 +
[[Category:Bookmarks|Bookmarks Standard]]
 +
[[Category:Standards|Bookmarks Standard]]

Latest revision as of 17:52, 26 July 2012

Given the use of more and more mobile devices with SWORD front-ends, a shared bookmark system would be a useful addition.

Feature wish list for format

Bookmark Item:

  • nested folders
  • able to link to specific modules
  • has a way of adding free text at any given level (like Description in a Firefox bookmark)
  • can link to verses, verse ranges, chapters, sections, paragraphs, sub-verse
  • should utilise as much as possible existing shared/shareable code
  • internationalised
  • time of creation and last read
  • color of verse or range

History Item:

  • range user read - used for forgotten places, determine books and chapters user never read or read long time ago
  • place user finished read
  • time user finished read
  • module

Existing standards

Xiphos Bookmarks Format

Xiphos and BibleCS(?) use this format:

<?xml version="1.0"?>
 <SwordBookmarks syntaxVersion="1.0">
   <Folder caption="Personal">
     <Folder caption="What must I do to be saved?">
       <Bookmark modulename="" key="Acts 16:31" moduledescription=" " description="Acts 16:31"/>
       <Bookmark modulename="" key="Eph 2:8,9" moduledescription=" " description="Eph 2:8,9"/>
       <Bookmark modulename="" key="Romans 1:16" moduledescription=" " description="Romans 1:16"/>
     </Folder>
     <Folder caption="What is the Gospel?">
        <Bookmark modulename="" key="1 Cor 15:1-4" moduledescription=" " description="1 Cor 15:1-4"/>
     </Folder>
  </Folder>
</SwordBookmarks>
Advantages
  • Format used in popular desktop application
Disdvantages
  • Localization of Folder/caption and Bookmark/description uses html encoded characters like &#40D1 . Maybe it is better to use utf-8 and put it in xml tag text space like <title>Personal</title>?
  • Necessity to grow to satisfy all applications needs.

XBEL

There are definitely bookmark formats floating around already which have some amount of standardization. See the XML Bookmark Exchange Language (XBEL) and the related links to XOXO and OPML.

Example of XBEL-standardized bookmarks file:

<?xml version="1.0" encoding="utf-8"?>
<xbel version="1.0">
    <folder id="folder1" added="2010-03-23T13:15:07.512">
        <title>Bible Bookmarks</title>
        <info>
            <metadata owner="ApplicationName" dateadded="1269349684570502" lastmodified="1269511284396136"/>
        </info>
        <folder id="folder2" added="2010-03-23T13:15:07.512">
            <title>My Favorite Places</title>
            <bookmark id="any" added="2010-03-25T10:01:16.473" visited="2010-03-25T10:00:50.972" modified="2010-03-25T10:01:24.549" href="bible://john/#note-N66131">
                <title>John</title>
                <info>
                    <metadata owner="ApplicationName" dateadded="1269349684570502" lastmodified="1269349684648629"/>
                </info>
            </bookmark>
        </folder>
    </folder>
</xbel>

Metadata came from Firefox SyncPlaces.

Advantages
  • Internet bookmarks are very similar to Bible bookmarks.
  • It's better to use existing widespread format.
  • import local xbel file into browser (that allows to synchronize further through bookmarking service).
  • needn't conversion to upload on server.
  • wide format infrastructure, look here.
Disdvantages
  • An internet bookmark is not the same as a Bible bookmark, I'm anxious to counter limitations of XBEL.
  • On mobile devices, processing complex format with a lots of bookmarks can affect performance.

OPML

One example of the use of OPML for bookmark import/export is the Sage lightweight RSS and Atom feed reader - which is an add-on for Mozilla Firefox.

Ways of sharing

Please add your ideas here.
  • local bookmark file replacement
  • public internet bookmark sharing service: google.com/bookmarks

Current situation

Please describe here which front-ends already support local bookmarks, and how?

Four of the listed front-ends support exporting of bookmarks.

  • See Choosing a SWORD program - section 3.6 Bookmarking, Tagging, Listing and Notes. Some significant front-ends are not yet listed in this page. (e.g. PocketSword).
  • PocketSword - currently only supports basic bookmarks (add a bookmark for a specific verse, and touch the bookmark and it will show that verse in the context of the entire chapter it appears in - which it does because PocketSword is entirely based around viewing chapters, not a verse or verse range). I have plans to completely redo bookmarks, to be much more inline with what appears in this page (as of 25/3/2010). It also similarly supports history: with one for Bible history and another for Commentary history.

FireBible

FireBible is a unique case in that, being a Firefox add-on, it uses the existing bookmarks structure of Mozilla Firefox, with additions to the Firefox menus. Moreover, it also supports URIs that begin with bible: and sword: as extensions to the browser.

See also