Difference between revisions of "Projects/PIM/Akonadi/Bookmarks"

< Projects‎ | PIM‎ | Akonadi
Jump to: navigation, search
 
(6 intermediate revisions by 4 users not shown)
Line 13: Line 13:
 
* Site snapshots storage
 
* Site snapshots storage
 
* Search by tag / metadata
 
* Search by tag / metadata
* Full text indexing (stigi)
+
* Full text indexing (Strigi)
  
 
===Other ideas to discuss===
 
===Other ideas to discuss===
 
* Only use tags instead of folders. Epiphany does this, mitigated reactions
 
* Only use tags instead of folders. Epiphany does this, mitigated reactions
* Store it in mysql instead of files
 
 
* Merge bookmarks and history (to get history tagging / rating) : a bookmark may be a properly tagged history entry
 
* Merge bookmarks and history (to get history tagging / rating) : a bookmark may be a properly tagged history entry
 
* Ability to store a page (like the scrapbook firefox plugin)
 
* Ability to store a page (like the scrapbook firefox plugin)
 
+
** I suggest to do this using Basket Note Pads http://basket.kde.org/ [[User:Zeroheure|Zeroheure]] 09:01, 12 January 2009 (UTC)
 +
** why not use existing archive web page extension [[User:Llukas|Llukas]] 14:11, 7 February 2010 (UTC)
 
==Implementation==
 
==Implementation==
 
The consensus seems to be :
 
The consensus seems to be :
Line 28: Line 28:
  
 
We need to define :
 
We need to define :
* which one of Akonadi/Nepomuk we use to export data to standard KDE classes
+
* the new properties to add to bookmarks
 
* what is already done and what is to implement
 
* what is already done and what is to implement
 +
 +
===Potential issues===
 +
* KBookmark* extend QDom while Akonadi works by fetching individual items. Should we emulate a QDom or create new classes ? As the Akonadi implementation will still use bookmarks.xml, the two implementations may be used on the same data.
 +
* A lot of Akonadi KDE api and agents are in kdepimlibs on which kdelibs can't depend.
  
 
===Feature matrix===
 
===Feature matrix===
Line 37: Line 41:
 
{{FeatureInProgress|Storage|Define new attributes to store|xavier.vello@gmail.com|Xavier Vello|}}
 
{{FeatureInProgress|Storage|Define new attributes to store|xavier.vello@gmail.com|Xavier Vello|}}
 
{{FeatureDone|Storage|Local file ressource (in kdepim)||}}
 
{{FeatureDone|Storage|Local file ressource (in kdepim)||}}
{{FeatureTodo|Storage|Database ressource ?||}}
 
 
{{FeatureInProgress|Storage|del.icio.us ressource (in playground)|robertknight@gmail.com|Robert Knight}}
 
{{FeatureInProgress|Storage|del.icio.us ressource (in playground)|robertknight@gmail.com|Robert Knight}}
 
{{FeatureTodo|Storage|Storage of screenshots||}}
 
{{FeatureTodo|Storage|Storage of screenshots||}}

Latest revision as of 15:11, 7 February 2010

This page is about the bookmarks system refactoring for 4.3 using Akonadi / Nepomuk. It's mostly Konqueror-centric, but we must keep in mind the bookmarks system is used by many applications. Comments and ideas are welcome.

Contents

[edit] General picture

[edit] Current state of bookmarks

  • Currently provided classes : KBookmark, KBookmarkGroup, KBookmarksManager and others.
  • Many apps use it : Konqueror, Konsole, Kate, Okular, ... need to keep backwards compatibility.
  • Bookmarks are stored in a per-application XBEL file, parsed by KBookmarksManager.

[edit] Desired features

  • Sync with online services / other sources
  • Rating / tagging / other metadata
  • Site snapshots storage
  • Search by tag / metadata
  • Full text indexing (Strigi)

[edit] Other ideas to discuss

  • Only use tags instead of folders. Epiphany does this, mitigated reactions
  • Merge bookmarks and history (to get history tagging / rating) : a bookmark may be a properly tagged history entry
  • Ability to store a page (like the scrapbook firefox plugin)
    • I suggest to do this using Basket Note Pads http://basket.kde.org/ Zeroheure 09:01, 12 January 2009 (UTC)
    • why not use existing archive web page extension Llukas 14:11, 7 February 2010 (UTC)

[edit] Implementation

The consensus seems to be :

  • Akonadi to handle storage and sync
  • Nepomuk to handle tagging / metadata
  • reuse and extend existing kdelibs/kio API

We need to define :

  • the new properties to add to bookmarks
  • what is already done and what is to implement

[edit] Potential issues

  • KBookmark* extend QDom while Akonadi works by fetching individual items. Should we emulate a QDom or create new classes ? As the Akonadi implementation will still use bookmarks.xml, the two implementations may be used on the same data.
  • A lot of Akonadi KDE api and agents are in kdepimlibs on which kdelibs can't depend.

[edit] Feature matrix

Status Category Description Contact
IN PROGRESS Storage Define new attributes to store Xavier Vello <xavier.vello@gmail.com>
DONE Storage Local file ressource (in kdepim) [mailto: <>]
IN PROGRESS Storage del.icio.us ressource (in playground) Robert Knight <robertknight@gmail.com>
TO DO Storage Storage of screenshots [mailto: <>]
DONE Metadata Tagging of akonadi items Toma <toma@kde.org>
TO DO Metadata Strigi index and search [mailto: <>]
TO DO Libs Port KBookmarks* [mailto: <>]

This page was last modified on 7 February 2010, at 15:11. This page has been accessed 7,084 times. Content is available under Creative Commons License SA 3.0 as well as the GNU Free Documentation License 1.2.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal