elfuchsjekyll / vosao

Automatically exported from code.google.com/p/vosao
0 stars 0 forks source link

Taxonomy Feature - High Level Requirements #165

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Notes as to what a taxonomy feature might do. 

Allow authors to

* Create of a virtual hierarchy ("tree") of taxonomy categories.

* Browse a taxonomy hierarchy from any page and select a category.

* Place a page in multiple taxonomies and multiple categories within a
taxonomy.

* Browse a taxonomy hierarchy directly and remove pages from categories, or
browse the main tree to add pages to a category.

* Traverse a taxonomy in code has if it were the main tree structure (using
parallel commands, or by adding a taxonomy parameter to existing commands,
or by optionally including the taxonomy in the path). 

(some alternatives)

** $service.findPageChildrenOrdered(path, [tree], [count])
Where tree is "root" or the name of a hierarchy

** $service.findTreeChildrenOrdered(path, tree, [count])

** $service.findPageChildrenOrdered([tree:]path, [count])

* Utilize a taxonomy as if it were the root tree in plugins, such as site
map or menu plugins. 

Original issue reported on code.google.com by ted.husted on 20 Mar 2010 at 1:57

GoogleCodeExporter commented 9 years ago
On Tue, Mar 16, 2010 at 6:05 AM, Alexander Oleynik <kinyelo@gmail.com> wrote:
> Also I think we have to add taxonomy for pages. I don't know how this will
> be implemented yet but may be by additional field to page entity or custom
> properties for pages or "category, tags" subsystem.
> Looking forward for discussion of this topic before it's implementation in
> 0.4

Original comment by ted.husted on 20 Mar 2010 at 1:59

GoogleCodeExporter commented 9 years ago
Support for page index within hierarchy may also be nice to have (such for 
navigation
button implementation).
Like:
$service.findPageChildrenOrdered(path, [tree], [index], [count])
$service.findTreeChildrenOrdered(path, tree, [index], [count])
$service.findPageChildrenOrdered([tree:]path, [index], [count])

Original comment by art...@gmail.com on 22 Mar 2010 at 1:33

GoogleCodeExporter commented 9 years ago
Implemented as tags tree. 

Added Velocity services for taxonomy access:

in templates 

$service.tag.getTree()
$service.tag.getTree("auto")
$service.tag.getTags("/page/url")
$service.tag.getPagesById(25) // 25 is id of TagEntity
$service.tag.getPagesByPath("/auto/audi") // /auto/audi is tag path in tags tree

Implementation class:

http://code.google.com/p/vosao/source/browse/trunk/kernel/src/main/java/org/vosa
o/velocity/impl/TagVelocityServiceImpl.java

Original comment by kinyelo@gmail.com on 29 Mar 2010 at 4:03

GoogleCodeExporter commented 9 years ago
Implemented

Original comment by kinyelo@gmail.com on 11 Apr 2010 at 10:36