Taxonomy management in eZ PublishThe new eZ Tags datatype
Ivo Lukač
www.netgen.hr/eng
@ eZ Winter Conference 2011, Nice
What is taxonomy?
“Taxonomy is the practice and science of
classification” (wikipedia)
Word comes from the greek word taxis – order,
arrangement (lexical roots)
Taxonomic schemes are usualy organized in tree
structures using parent-child relationship
“Hierarchical taxonomy is a tree structure of classifications
for a given set of objects” (mathematical definition)
Well known example of taxonomy is the Biological
Taxonomy which classifies all plants and animals
Examples from IT domain:
File systems with directories
Web sites with pages
Taxonomy in CMS
Hierarchy of pages – how the pages are structured
Types of pages – what kind of information pages hold
Page attributes (meta data)
TAXONOMIES ARE USED ALL THE TIME
3 general types:
CLOSED (predefined, prefilled)
OPEN (“folksonomy”, user tags)
DYNAMIC (facets generated depending on the context)
eZ Publish – taxonomy tools today (1)
Node tree structure
Classes
Sections
Datatypes:
ezselection
ezoption
ezobjectrelation(s)
ezkeyword
Extensions:
ezfind
Community efforts:
ezlabel (3.x)
ezobjectrelationbrowse
eZ Publish – taxonomy tools today (2)
NODE TREE
Good for web page categories
User policies appliable
Combining more taxonomies is pain
CLASSES & SECTIONS
Good for pages type, user policies appliable
no hierarchy, can’t be open
FOR CONTENT HIERARCHY & TYPES OF WEB PAGES
eZ Publish – taxonomy tools today (3)
SELECTION DATATYPE
Can’t be open, no hierarchy, hard to maintaine
Good only for small “never ever going to change” sets
OBJECT RELATION(S) DATATYPE
Can be open, easier to maintaine, bad performancewise
KEYWORD DATATYPE
Can be open, but can’t be closed, no hierarchy
LIMITED POSSIBILITIES FOR PAGE ATTRIBUTES
A quick poll
WHAT DATATYPES DO YOU USE FOR TAXONOMIES?
Selection dataype: ~10
Objectrelation dataype: ~25
Keyword datatype: ~15
Other/Community extensions: ~3
Do we need a better tool?
Yes, we need a good taxonomy tool
WHY?
To build better site navigation
To give better search results
To reduce redundancy
To have easier data management
TO HAVE BETTER USER EXPERIENCE
eZ Tags datatype
Not a silver bullet,
but close
eZ Tags – a new tool (1)
IN MASTER BRANCH READY FOR 4.5
Combined open and closed taxonomy system
Hierarchy similar to node tree
Special database tables
Management interface
“Sexy” editing
Suggestions (powered with eZ Find)
Tag view
Extended attribute filter for content list/tree fetch
eZ Tags – a new tool (2)
IN DEVELOPMENT BRANCH
Synonyms
Merging
Management interface search
Attribute level segmentation
eZ Tags – in action
Croatian Independent Software Exportes (a web under devel)
Members shared blog with:
Post type tags
segmented, predefined, small set, closed
Geo location tags
segmented, partially defined, open
Business tags
segmented, predefined, closed
Technology tags
segmented, empty, open now/closed later
Other tags
open
eZ Tags – in action
eZ Tags – in action
eZ Tags – in action
eZ Tags – a new tool (3)
IDEAS FOR FUTURE
Multilanguage
if synonyms are not enough
Better suggestions
based on other attributes content
Import
e.g. why not import Dewey Decimal
Integration with url alias subsystem
to avoid module/view in url
Advanced filter views (with AND/OR)
e.g. /tags/and/France/IT+industry
e.g. /tags/or/France/Germany/Norway
eZ Tags - try it out
https://github.com/ezsystems/eztags
Feedbacks:
http://projects.ez.no/eztags
eZ Tags - special credits
Bård Farstad (@bardfarstad) – initiating
development and pushing it to 4.5
Edi Modrić (@emodric) – server side
Petar Španja (@periklo) – client side
Questions?