User Tools

Site Tools


g2:choosing

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
g2:choosing [2011/01/12 10:16]
fgm [Choosing a glossary-type module] expanded for DDD code sprint
g2:choosing [2011/02/22 08:25] (current)
fgm
Line 1: Line 1:
 Back to [[g2:​start|G2 main]] Back to [[g2:​start|G2 main]]
- 
- 
- 
- 
- 
  
 ====== Choosing a glossary-type module ====== ====== Choosing a glossary-type module ======
  
-G2 is not intended as a direct ​replacement for the glossary module already available with drupal ​for quite some time nowIt was designed for slightly different needs, and this page is here to help you choose which module you should probably be using, or if you should really write your own. Lexicon ​has been evolved from glossary to accomodate yet another set of requirements,​ and glossify started with needs similar to glossary, but evolved to a much more diverse set of features; only those relevant to glossaries should be listed here. +None of the glossary modules ​is intended as a plug-in ​replacement for the original ​glossary module already available with drupal ​since its humble beginningsEach of the alternatives ​was designed for slightly different needs, and this page is here to help you choose which module you should probably be using, or if you should really write your own. Lexicon evolved from glossary to accomodate yet another set of requirements,​ and glossify started with needs similar to glossary, but evolved to a much more diverse set of features; only those relevant to glossaries should be listed here.
- +
-^ Feature ​                          ​^ ​ Glossary ​         ^  G2                          ^  Glossify ​ ^ Lexicon ^  Refactoring ​         ^  +
-^ Drupal-related ​                   ^                    ^                              ^            ^         ​^ ​                      ^ +
-| Drupal 7.x                        |  No                |  No(t yet)                   ​| ​ No(t yet) |  Yes    |  Yes                  | +
-| Drupal 6.x                        |  Yes               ​| ​ Yes                         ​| ​ Yes       ​| ​ Yes    |  No                   | +
-| Drupal 5.x                        |  Yes               ​| ​ Yes                         ​| ​ Yes       ​| ​ No     ​| ​ No                   | +
-| Drupal 4.7.x                      |  Yes               ​| ​ Yes                         ​| ​ No        |  No     ​| ​ No                   | +
-| Drupal 4.6.x                      |  Yes               ​| ​ No                          |  No        |  No     ​| ​ No                   | +
-| AJAX                              |  No                |  Some autocompletion ​        ​| ​           |         ​| ​                      | +
-| Storage ​                          ​| ​ terms             ​| ​ nodes, single content type  |            |         ​| ​ any entity ​          | +
-^ Services provided ​                ​^ ​                   ^                              ^            ^         ​^ ​                      ^ +
-| multiple glossaries on one site   ​| ​ Yes               ​| ​ No                          |            |         ​| ​ Yes                  | +
-| RSS feeds on entries ​             |  core              |  No                          |            |         ​| ​                      |  +
-| RSS feeds on additional vocabularies |  No             ​| ​ core                        |            |         ​| ​ core                 | +
-| classify entries ​                 |  No                |  core taxonomy ​              ​| ​           |         ​| ​ core fields ​         | +
-| commenting on entries ​            ​| ​ No                |  core                        |            |         ​| ​ core, only on node storage ​ | +
-| private editorial information ​    ​| ​ No                |  Yes                         ​| ​           |         ​| ​ core fields ​         | +
-| alphabar maintenance ​             |  automatic ​        ​| ​ manual ​                     |            |         ​| ​                      | +
-| content filtering, automatic ​     |  Yes               ​| ​ No                          |            |         ​| ​ Yes                  | +
-| content filtering, explicit ​      ​| ​ No                |  Yes, dfn element ​           |            |         ​| ​ Yes, custom element ​ | +
-| feature blocks ​                   |  No                |  alphabar \\ latest \\ top \\ random \\ word of the day  | +
-| remote glossaries ​                ​| ​ No                |  Yes, limited ​               |            |         ​| ​ Yes                  | +
-| Security ​                         |  core              |  core \\ XML-RPC access control \\ XML-RPC throttling ​ | | | | +
-^ 3rd party integration ​            ​^ ​                   ^                              ^            ^         ​^ ​                      ^ +
-| [[http://​wiki.audean.com/​g2/​wishlist|Quality Agent]] |  No  |  No                     ​| ​           |         ​| ​ Yes                  | +
-| Views: basic                      |  core              |  core + specific ​            ​| ​           |         ​| ​ core + specific ​     | +
-| Views: default views              |  No                |  No                          |            |         ​| ​ Yes                  | +
-| [[http://​wiki.audean.com/​g2/​wishlist|Wikipedia]] ​ |  No  |  No                        |            |         ​| ​ Yes, with i18n       | +
-| [[http://​wiki.audean.com/​g2/​wishlist|Zeitgeist]] |  No  |  No                         ​| ​           |         ​| ​ Yes                  | +
-^ Performance ​                      ​^ ​                   ^                              ^            ^         ​^ ​                      ^ +
-| memory needs/​number of entries ​   |  proportional ​     |  constant ​                   |            |         ​| ​                      | +
-| speed on small glossaries ​        ​| ​ faster ​           |  slower ​                     |            |         ​| ​                      | +
-| speed on large glossaries ​        ​| ​ slower with size  |  remains constant ​           |            |         ​| ​                      | +
-^ Themeing ​                         ^                    ^                              ^            ^         ​^ ​                      ^ +
-| - search form                     ​| ​ Yes               ​| ​ core                        |            |         ​| ​                      | +
-| - node overview ​                  ​| ​ Yes               ​| ​ core                        |            |         ​| ​                      | +
-| - definition fields ​              ​| ​ n.a.              |  Yes                         ​| ​           |         ​| ​ core fields ​         | +
-| - each feature block              |  n.a.              |  Yes                         ​| ​           |         ​| ​                      | +
-| Implementation ​                   |  Templates ​        ​| ​ Theme functions ​            ​| ​           |         ​| ​ Templates ​           | +
-^ Developer features ​               ^                    ^                              ^            ^         ​^ ​                      ^ +
-| XML-RPC API                       ​| ​ No                |  alphabar \\ latest \\ top \\ random \\ word of the day  | +
-| UI module separate from Data API  |  No                |  No                          |            |         ​| ​ Yes                  | +
- +
- +
-Obviously, in all cases, a "​No"​ actually means: "roll your own +
-", as in all Open Source software. +
- +
- +
- +
-===== Rationale for G2 specificities ​ ===== +
- +
- +
- +
-  * Optimization for large glossaries: this is the need expressed by OSInet, which funded development,​ to support its 5000+ term glossary of computing, for which glossary.module,​ even when coupled with flexinode to bind blob content to terms, is not really efficient enough. +
- +
-  * Single glossary: multiple glossaries were not necessary to OSInet, which funded development +
- +
-  * Explicit linking to terms with dfn elements:  +
- +
-    * limits system workload+
  
-    * allows invisible marking of entries made of other entries. Think: XML-RPC, points ​to XML and to RPC with glossary.module and various wiki filters, but can point to 'XML-RPC' with G2Wrapping XML-RPC in quotes is necessary to allow linking to this entry in glossary, but the quotes remain visible, degrading the UI.+Left-to-right order by date of creationEmpty cells means info not yet availablePlease contribute !
  
-    * allows redactor-level choice ​of +TODO: import "​features discussion"​ from the [[g2/​choosing_next|2008 glossary comparison table]], which updated the very obsolete http://​drupal.org/​node/​266511,​ currently unavailable for edit except to members ​of the Drupal doc team due to the Full HTML format, but has now become partly obsolete itself. The 2008 chart is now imported.
  
-      * whether to link to an entryglossary always links if the term matches, which is not always meaningful ("​and"​ can be present in a glossary and you don't want "​and"​ to be linked from in all nodes on the site).+TODOdocument ​the new [[http://​drupal.org/​project/​atrium_glossary|Atrium Glossary]].
  
-      ​* where to link to an entry: glossary ​allows only predefined set of positions ​(first, last or all matches)+^ Feature ​                          ​^ ​ Glossary ​         ^  G2                          ^  Glossify ​  ^ Lexicon ^  G2 Refactoring ​      ​^  Atrium Glossary ​ ^ 
 +^ Drupal-related ​                   ^                    ^                              ^             ​^ ​        ​^ ​                      ​^ ​ ^ 
 +| Drupal 7.x                        |  No                |  Yes                         ​| ​ No(t yet)  |  Yes    |  Yes                  |  No   | 
 +| Drupal 6.x                        |  Yes               ​| ​ Yes                         ​| ​ Yes        |  Yes    |  No                   ​| ​ Yes  | 
 +| Drupal 5.x                        |  Yes               ​| ​ Yes                         ​| ​ Yes        |  No     ​| ​ No                   ​| ​ No   | 
 +| Drupal 4.7.x                      |  Yes               ​| ​ Yes                         ​| ​ No         ​| ​ No     ​| ​ No                   ​| ​ No   | 
 +| Drupal 4.6.x                      |  Yes               ​| ​ No                          |  No         ​| ​ No     ​| ​ No                   ​| ​ No   | 
 +| Earlier Drupal versions ​          ​| ​ Yes               ​| ​ No                          |  No         ​| ​ No     ​| ​ No                   ​| ​ No   | 
 +| AJAX                              |  No                |  Some autocompletion ​        ​| ​            ​| ​        ​| ​                      | 
 +| Storage ​                          ​| ​ terms             ​| ​ nodes, 1 content type       ​| ​ nodes (types ?) |    |  any entity ​          | 
 +| Revision support ​                 |  No                |  core                        |  core       ​| ​        ​| ​                      | 
 +| Simpletest ​                       |  No                |  A few                       ​| ​            ​| ​        ​| ​ Yes                  | 
 +^ Services provided ​                ​^ ​                   ^                              ^             ​^ ​        ​^ ​                      ^ 
 +| multiple glossaries on one site   ​| ​ Yes               ​| ​ No                          |  No         ​| ​        ​| ​ Yes                  | 
 +| RSS feeds on entries ​             |  core              |  No                          |  core (?)   ​| ​        ​| ​                      |  
 +| RSS feeds on additional vocabularies |  No             ​| ​ core                        |  core       ​| ​        ​| ​ core                 | 
 +| classify entries ​                 |  No                |  core taxonomy ​              ​| ​ core taxonomy ​ |     ​| ​ core fields ​         | 
 +| commenting on entries ​            ​| ​ No                |  core                        |  core       ​| ​        ​| ​ core, only on node storage ​ | 
 +| private editorial information ​    ​| ​ No                |  Builtin ​                    ​| ​ Use CCK    |         ​| ​ core fields ​         | 
 +| alphabar maintenance ​             |  automatic ​        ​| ​ manual ​                     |             ​| ​        ​| ​ defaults + override ​ | 
 +| remote glossaries ​                ​| ​ No                |  Yes, limited ​               |             ​| ​        ​| ​ Yes                  | 
 +| steganographic content protection |                    |  No                          |             ​| ​        ​| ​ Yes                  | 
 +| RDF information ​                  ​| ​                   |  No                       ​| ​  ​| ​  ​| ​ [[http://​drupal.org/​node/​1029544|Yes]] ​ | 
 +^ i18n                              ^                    ^                              ^             ​^ ​        ​^ ​                      ^ 
 +| Translation template supplied ​    ​| ​ Yes               ​| ​ Yes                         ​| ​            ​| ​        ​| ​                      | 
 +| Multilingual blocks ​              ​| ​                   |  No                          |             ​| ​        ​| ​                      | 
 +| Translatable content ​             |  Use i18nterms ​    ​| ​ Use i18ncontent ​            ​| ​ Use i18ncontent ​ |   ​| ​                      | 
 +^ Feature blocks ​                   ^                    ^                              ^             ​^ ​        ​^ ​                      ^ 
 +| Alphabar ​                         |  No                |  Yes                         ​| ​ Use Views  |         ​| ​ Default View         | 
 +| Daily                             ​| ​ Yes               ​| ​ Yes                         ​| ​ Use Views  |         ​| ​ Default View         | 
 +| Latest ​                           |  No                |  Yes                         ​| ​ Use Views  |         ​| ​ Default View         | 
 +| Random ​                           |  Yes               ​| ​ Yes                         ​| ​ Use Views  |         ​| ​ Default View         | 
 +| Search ​glossary ​                  |  Yes               ​| ​ No                          |  No         ​| ​        ​| ​ Yes                  | 
 +^ Content filtering ​                ​^ ​                   ^                              ^             ​^ ​        ​^ ​                      ^ 
 +| Input, automatic ​                 |  Yes               ​| ​ No                          |  No         ​| ​        ​| ​ Yes                  | 
 +| Input, automatic, stop list       ​| ​ Single language ​  ​| ​ No                          |  No         ​| ​        ​| ​ i18n support ​        | 
 +| Input, explicit ​                  ​| ​ No                |  Yes, dfn element ​           |  No         ​| ​        ​| ​ Yes, custom element ​ | 
 +| Output, automatic ​                ​| ​ No                |  No                          |  Yes        |         ​| ​                      | 
 +| auto "​title"​ on links             ​| ​ No                |  No                          |             ​| ​        ​| ​ Teaser / Disambiguation ​       | 
 +| Disambiguation pages              |  n.a.              |  Yes, limited ​               |             ​| ​        ​| ​ default + override ​  | 
 +| Disambiguation targeting in links |  n.a.              |  No                          |             ​| ​        ​| ​ Yes, on explicit ​    | 
 +^ 3rd party integration ​            ​^ ​                   ^                              ^             ​^ ​        ​^ ​                      ^ 
 +| [[http://​wiki.audean.com/​g2/​wishlist|Quality Agent]] |  No  |  No                     ​| ​            ​| ​        ​| ​ Yes                  | 
 +| Views: basic                      |  core              |  core + specific ​            ​| ​            ​| ​        ​| ​ core + specific ​     | 
 +| Views: default views              |  No                |  No                          |             ​| ​        ​| ​ Yes                  | 
 +| [[http://​wiki.audean.com/​g2/​wishlist|Wikipedia]] ​ |  No  |  No                        |             ​| ​        ​| ​ Yes, with i18n       | 
 +| [[http://​wiki.audean.com/​g2/​wishlist|Zeitgeist]] |  No  |  No                         ​| ​            ​| ​        ​| ​ Yes                  | 
 +^ Performance ​                      ​^ ​                   ^                              ^             ​^ ​        ​^ ​                      ^ 
 +| memory needs/​number ​of entries ​   |  O(n             ​| ​ O(1)                        |  O(n) (?)   ​| ​        ​| ​                      | 
 +| speed on small glossaries ​        ​| ​ faster ​           |  slower ​                     |  slower ​    ​| ​        ​| ​                      | 
 +| speed on large glossaries ​        ​| ​ slower with size  |  remains constant ​           |  slower with size  |  |                       | 
 +^ Themeing ​                         ^                    ^                              ^             ​^ ​        ​^ ​                      ^ 
 +| - home page                       ​| ​                   |  core                        |             ​| ​        ​| ​                      | 
 +| - search form                     ​| ​ Yes               ​| ​ core                        |  core       ​| ​        ​| ​                      | 
 +| - node overview ​                  ​| ​ Yes               ​| ​ core                        |  core       ​| ​        ​| ​                      | 
 +| - definition fields ​              ​| ​ n.a.              |  Yes                         ​| ​ Use CCK    |         ​| ​ core fields ​         | 
 +| - each feature block              |  n.a.              |  Yes                         ​| ​ Use Views  |         ​| ​                      | 
 +| Specific class on glossary links  |                    |  Yes                         ​| ​ Yes        |         ​| ​                      | 
 +| Implementation ​                   |  Templates ​        ​| ​ Theme functions ​            ​| ​            ​| ​        ​| ​ Templates ​           | 
 +^ Developer features ​               ^                    ^                              ^             ​^ ​        ​^ ​                      ^ 
 +| XML-RPC API                       ​| ​ No                |  alphabar \\ latest \\ top \\ random \\ word of the day  |  No  |   ​| ​       | 
 +| Web services security ​            ​| ​ n.a.              |  IP-based access control \\ throttling ​ |  n.a.  |   ​| ​                      | 
 +| UI module separate from Data API  |  No                |  No                          |             ​| ​        ​| ​ Yes                  |
  
-  * nodes vs terms: this is the most salient difference. ​ 
  
-    * Using custom nodes (g2_entry ​in g2.module) allows large definitionswith the complete drupal feature set for nodes+Obviously, ​in all casesa "​No"​ actually means: "roll your own"as in all Open Source software.
  
-    * Using terms (glossary.module) allows definitions to be bound to custom nodes instead of being nodes on their own+====== Documentation ======
  
-  * Alphabar maintenancelarge glossaries will most of the time use all available initials, so the processing cost of maintaining it is not justifiable+  * Glossary 
 +    * [[http://​cvs.drupal.org/​viewvc.py/​drupal/​contributions/​modules/​glossary/​README.txt?​view=markup|README]] 
 +    * [[http://​drupal.org/​node/​196880|Handbook]] 
 +  * G2 
 +    * [[http://​cvs.drupal.org/​viewvc.py/​drupal/​contributions/​modules/​g2/​README.txt?​view=markup|README]] 
 +    * [[http://​wiki.audean.com/​g2/​start|Wiki]] 
 +  * Glossify 
 +    * [[http://​cvs.drupal.org/​viewvc.py/​drupal/​contributions/​modules/​glossify/​README.TXT?​view=markup&​pathrev=DRUPAL-6--1|README]]
  
  
g2/choosing.1294823785.txt.gz · Last modified: 2011/01/12 10:16 by fgm