Posted by robertDouglass on November 15, 2005 at 6:33pm
Drupal's taxonomy system seems to confuse people to no end, and the complaint that there is no adequate end-user documentation to help the matter is often heard. How would YOU describe the taxonomy system to someone who is interested in trying out Drupal?
Comments
I'd say...
"You can create vocabularies, containing keywords."
"You can specify the relationship and use of those keywords."
"You can tag your content with those keywords."
"You can browse and access your content by keywords."
Seems straightforward to me.
--R.J.
http://www.electric-escape.net/
--R.J.
A categories system for your
An advanced categories system for your stories/data that can optionally be used for complex hierarchical classification.
My take...
Admittedly, I'm used to writing help text for VERY inexperienced users, so if I repeat myself or beat a dead horse, apologies. :-)
---------
Drupal's 'Taxonomy' system can sound daunting, but it doesn't have to be. When all the fancy language is stripped away, Taxonomy is about one thing: organizing your site by attaching descriptive terms to each piece of content.
Those terms might describe what section of your site a particular page belongs to. They might describe what topics are discussed in a given blog post, or what region of the country a photograph was taken in. These terms are organized in separate 'Vocabularies' so that recipe ingredients don't get mixed up with cities in Texas when you're trying to find out what travel-logs were written in Houston, or what soups use potatos.
Setting up these Vocabularies, and the descriptive terms that belong to them, is the first step in organizing your Drupal site. There are different kinds of vocabularies, and understanding how they differ can help you decide the best way to categorize your content.
For example, let's say you're setting up a photo portfolio, and using Taxonomy to keep things organized. First, you might create a 'flat' vocabulary for basic organization called 'Photo Type.' To that vocabulary, you would add the terms 'Portrait,' 'Stop-Action,' 'Landscape,' and so on. Next, to keep track of where the photographs were taken, you might create a hierarchial vocabulary called 'Location.' To it, you could add terms like 'Europe' and 'United States.' In a hierarchial vocabulary, each of those terms can also have sub-terms like 'France' and 'Illinois.' This makes it possible to tag a photo once with the term 'London' and retrieve it later with a broader request like 'Show me all the photos taken in Great Britain.' Finally, to capture notes about each photograph that would be hard to plan in advance, you could add a 'free tagging' vocabulary called 'Keywords.' Rather than defining the terms in advance, a free tagging vocabulary lets you enter in new terms each time you post a piece of content. If two pieces of content share a term, they'yer automatically connected to each other.
With those three vocabularies in place, any new photograph you post to your site can be quickly categorized. Whenever you post a new image, Drupal offers you a list of the available terms in the 'Photo Type' and 'Location vocabularies AND a place to type in terms for your 'Keywords' vocabulary. When posting a photo of your brother's wedding, you might select a Photo Type of 'Portrait,' a Location of 'Paris' (if that's where he was married, naturally!) and type in 'wedding' and 'brother' as keywords.
If you're used to other CMS or blogging systems, these different vocabulary types might be familiar as 'categories' or 'sections' or 'keywords.' It's important to note that nothing requires you to use these different Drupal vocabularies, and different kinds of content can use different vocabularies when it makes sense. News articles and Images might share 'Keywords', but 'Photo Type' obviously only makes sense for one.
Mixing and matching these techniques in Drupal allows you to create the organizational system that best suits your needs. Getting used to it can be tricky at first, but if you take the time to think through your site's organization, the results are worth it.
--
Jeff Eaton | Click Here To Find Out Why Drupal "Sucks"
--
Lullabot! | Eaton's blog | Project: Snowman
that makes it look simple
Thanks for the simple explanation: that makes it clear for me, at least for the common (non-advanced) uses.
I vote this a handbook page!
G'wan get it published!
.dan.
http://www.coders.co.nz/
.dan. is the New Zealand Drupal Developer working on Government Web Standards
It is a powerful professional tool
So you want to know what the taxonomy system is all about?
"The Drupal Taxonomy system is not just any category system. It is a powerful professional tool, build to meet the needs of Information Architecs and Librarians. This means that most people are overwhelmed at first. It also means that it can take some time to learn how to use it. And it means that it will expand with your needs.
Unfortunately not all modules that use the Taxonomy system really understand the philosophy behind this great tool.
That said. Taxonomy can be used for simple tasks too.
For instance, you can build a set of categories to organize your images, or your fora, or your blog postings. You can also build a set of categories to work with a menu system.
The great thing about Taxonomy is, that the taxonomy terms are not part of the content. They are attached to the content. Likewise they are not part of the menu. They are attached to the menu.
This means that you can use taxonomy for more things, and organize more kinds of content along the lines of your "structure".
But to make complex things simple:
If you just need a list of categories. You can build that in taxonomy. It may be enough to meet your needs.
If you want subcategories. You can do that too. It may be enough to meet your needs when you discover that the simple list was too simple.
Now If you need content - nodes - to be categorized with more than one category, taxonomy will let you do that. It may be that tagging your content with a couple of hierarchically organized categories are enough to meet your needs, when you discover, that your content is not just about one "thing" but about more "things".
Then it gets a little more tangled.
If you have A LOT of categories in a tree structure, you may discover, that some subcategories are the same:
example:
Dishes
-Meats
--Beef
---French
----Fried
----Grilled
----Boiled
---Italian
----Fried
----Grilled
----Boiled
---Mexican
----Fried
----Grilled
----Boiled
---German
----Fried
----Grilled
----Boiled--Pork
---French
----Fried
----Grilled
----Boiled
---Italian
----Fried
----Grilled
----Boiled
---Mexican
----Fried
----Grilled
----Boiled
---German
----Fried
----Grilled
----Boiled
--Lamb
---French
----Fried
----Grilled
----Boiled
---Italian
----Fried
----Grilled
----Boiled
---Mexican
----Fried
----Grilled
----Boiled
---German
----Fried
----Grilled
----Boiled
-Poultry
---French
----Fried
----Grilled
----Boiled
---Italian
----Fried
----Grilled
----Boiled
---Mexican
----Fried
----Grilled
----Boiled
---German
----Fried
----Grilled
----Boiled
-Fish
---French
----Fried
----Grilled
----Boiled
---Italian
----Fried
----Grilled
----Boiled
---Mexican
----Fried
----Grilled
----Boiled
---German
----Fried
----Grilled
----Boiled
This structure can be done in a set of smaller hierarchies/lists. This is called faceted metadata.
Choose one from each set, and you have them all combined:
Beef
Pork
Lamb
Poulty
Fish
Fried
Grilled
Boiled
French
Italian
Mexican
German
Taxonomy can do this for you.
And that may be exactly what you want, if you have a large structure with a number of facets. By the way. Facets can be other "stuff" than subjects. As above it can be geography, it can be a classroom structure, it can be a set of courses, it can be a set of moods, it can be a set of media formats. So there are a lot of options here.
Now - there's no guarantee that this will meet your needs. So taxonomy can do even more for you. You may have noticed that some terms are different, but have the same meaning. Synonyms can be entered in the Drupal taxonomy system so that when people search for one word, they will also find the other words that have the same meaning. These words are called terms. And to terms that share the same meaning are - as mentioned above - synonyms.
If all of this is just TOO COMPLEX for you. Taxonomy will let you support "free tagging". This means that you can let users just type in keywords.
This will meet most of your needs. Surely.
If you want to do more with Taxonomy, be sure to learn some Information Architecture or Library Science, but don't bother to look any further for other systems. Very few systems - even very expensive commercial systems - will meet your needs as readily as Drupal."
That is probably what I would say to someone who wanted to know what the taxonomy system is all about.
Gunnar Langemark
http://www.langemark.com
Gunnar Langemark
http://www.langemark.com
Heheh
Gunnar Wins for the most newbie friendly description. Gold Star!
___________________________________--
Tony Wright
Travel Guides (Drupal Site)
Google Adsense Keywords
___________________________________
Tony Wright
Jobby - Helping Geeks Find Jobs and Freelance Ops... Web 2.0 Style!
I have a question a little
I have a question a little more advanced. I am trying to setup a community of blogs, and I want my users to select the taxonomy location (for the blog) through fields in their profile. Anyone know how to do that? If so, much appreciated... this has been bugging me for a while!
---------------------------------------------
Weebly - Online Website Creator
http://www.weebly.com
Hack in sandbox
I wrote a pair of modules that let you do this, somewhat.
http://cvs.drupal.org/viewcvs/drupal/contributions/sandbox/robertdouglass/
Grab the usercategories.module and the nodesingleton.module. This makes it so that each user gets one node that shows up on their user profile pages, and if you assign taxonomy vocabs to this node, you can classify users with taxonomy.
It is for Drupal 4.6.*
Most likely it will not do everything you want the way you want, but it is an interesting hack, and could be expanded upon.
- Robert Douglass
-----
My Drupal book: Building Online Communities with Drupal, phpBB and WordPress
my Drupal book | Twitter | Senior Drupal Advisor, Acquia | Advisor ICanLocalize
Here was one of my latest attempts
http://drupal.org/node/35482 (I didn't feel like copying it here - I wouldn't been too tempted to edit it further)
I do like the previous answers in this thread though :)
--
Anton
--
Anton
Clear and Simple
Taxonomy lets you put your content into categories.
That's it.
I'm so sick of explaining the in's and out's of vocabularies, free tagging, hierarchies, structure, etc - from now on, I'm sticking to the simplest definition I can think of. Perhaps also explain (if it's an extra-curious newbie you're talking to) that terms are the actual categories, and that vocabularies are used to group terms together. Massively over-simplified, I know. But that's what people will understand.
Jeremy Epstein - GreenAsh
Jeremy Epstein - GreenAsh
what taxonomy does NOT do
Robert,
Thanks for asking the question. I think the best way to explain taxonomy is to define the terms and immediately explain what it DOES NOT DO in the core version, without patches and additional modules.
The problem with taxonomy is that it doesn't do what one would expect. If I (a) create a vocabulary topic, with a term News, and a child term, International, and (b) submit a page under the topic International, I would expect the page to have the breadcrumb Home -- News -- International. However, the page shows up with the bottom breadcrumb Home--Content.
It seems that to make breadcrumbs work, one would have to install all kinds of code that Jeremy has kindly written and documented.
To make free tagging work one has to install the free tagging patch.
If we do a search on all the taxonomy issues in this forum, there are often suggestions to use all the add-on modules for taxonomy.
The problem is that taxonomy is not very useful for the newcomer who does not know how to install patches or modules.
I would like to suggest that 4.7 (which thankfully will have free-tagging) also have sql search available in core.
I think if Drupal wants to be friendly to newcomers, Drupal should include stable modules by default (as civicspace does) and let people not use the modules they don't need, instead of taking modules out of core and expect people to know how to install them. Right them, Drupal will probably turn away 90% of people who can't install modules.
ae2005
clarifications
I'm glad you're discussing taxonomy --- many problems do arise from the difference between people's expectations/understandings and the reality of what the core taxonomy module does. Here are some clarifications based on your points above:
I agree with you that breadcrumbs in Drupal are confusing and not always what people expect or want. This isn't so much a feature or bug of taxonomy, as it is of the way breadcrumbs in Drupal are implemented. Please post feature requests and/or test related patches in the issue queue.
When comparing CivicSpace to Drupal, please keep in mind that the CivicSpace people and the Drupal people work very closely together, and are often one and the same. It is intentional that Drupal comes with a slim set of modules and that CivicSpace packs a bunch of modules together. This is a good thing. People who don't want to install modules or apply patches can download CivicSpace. They're still using Drupal, they've just saved themselves some work. If Drupal had tried to include tons of modules, CivicSpace would have a hard time doing what it does.
In the same way, the very presence of so many contributed modules that use the taxonomy system speaks not to a weakness of Drupal or taxonomy, but a strength. It means that people take the general taxonomy framework and are able to do new and creative things with it. If taxonomy itself had tried to do even one or two of the things that the contrib modules do, it probably wouldn't have been flexible enough, or easy enough for developers to understand, and the rest of the contributions would never have been written.
- Robert Douglass
-----
My Drupal book: Building Online Communities with Drupal, phpBB and WordPress
my Drupal book | Twitter | Senior Drupal Advisor, Acquia | Advisor ICanLocalize
One word...
One word... "Tagging"
It is the Web 2.0 version of taxonomy.
David McIntosh
neofactor.com
No Images =[ (A little off topic)
Well, not that I don´t like to read manual pages and handbook. I love to read (especially big heavy old dusted books I can find in the library!), but sometimes I think the Drupal handbooks are a bit too much textual. You know, some graphics here and there help newbies to understand the way things work. Or at least they give our eyes a little bit of rest.
I found the explanations on the above posts not only clarifying but very well written. I belive they should go into official documentation.
But it is true though that Drupal suffers from a "Geek" stigma. The so called "newbies" don´t seem to understand the way Drupal is supposed to work and usualy get angry about not getting answers at the forum and either in the manual pages.
But hey, I´m still on the geek side! I think that if someone wants to have they´re very own feature-rich comunity-driven website they better consider becoming a geek too. Building a website is not easy. The CMS is not the only problem.
But back to the pictures. I think Drupal has a serious problem of presentation. It look´s very geeky and complicated for non-programmers. Drupal.org too look´s kind of harsh too.I think that should be really not because Drupal is not and inherently hard to use software. I believe Mr. Douglass started this thread in a effort to make Drupal better understood. So I will outline my opinions about some Drupal problems, and, obviously, follow them with some ideas for a solution :
1st Problem: Newbies complain they don´t know what the heck Taxonomy is; why they need Nodes; they don´t understand the administration menu; and so and so. I guess most people don´t understand the abstract concepts behind Drupal implementation, and want it to work like some other software they have used before (Word Press, Mambo, Typo3, Nucleus, etc.).
Solution: Unless you guys of the developer team finds out a way to make a system that installs and configures itself without the need of human action, like some type of super AI, there is no way to make dynamic website creation more easy. But we can making the experience of learnig about Drupal more enjoyable and rewarding ! Tutorials, FAQ´s, begginers guides, graphics with arrows and boxes, examples, things like that can work like a brige between the newbie and the havily technical documentation. After you had learned what the softwere does, you feel a lot more motivated to learn how it works.
And, having worked about 2 years with distance education, I must say that color and movement take major role in catching people interest.
2nd Problem: Support is crucial for any type of software. Being Drupal distrubuted to the comunity free of cost, the only way to provide support is using volunteer work. That is not exactly a real problem, but some people forget about that and get very angry about the lack of support they receive.
Solution: Well, that´s a tough one. There seems to be no other way but the comunity forum. I don´t like forums very much, but maybe the new search engine being developed will help a lot people to find answers to frequent questions. I guess the creation of a FAQ section should be at least considered.
3rd Problem: People at the Drupal forums seem to argue a lot. I don´t know, maybe it´s with the internet business, but I think there should be more *peace* in drupal.org forums. I strongly belive that it has something to do with the always blue and white site theme.I think it should be changed. It looks like hospital stuff, you know, bright lights, long white corridors, everything so cool and clean, makes me a bit nervous. I don´t know, forget about problem 3 for now :).
These sugestions should realy take some huge working effort, and I would be pleased to help.
What are your opinions? Let´s make drupal.org newbie friendly?
-- Alexandre Ataide
-- Alexandre Ataide
Nice points, a little off topic
Nice points, Alexandre. The image problem could be solved by installing the inline module here on Drupal.org and giving more people permission to upload files. This would encourage document writers to create and share more graphics as learning aides.
I understand, though, why this hasn't been done. It is much harder to police a large website like this one when people can upload files. Then you have to pay close attention to what they upload! Furthermore, until recently, we were trying to milk the last drop of performance from a tiny little server that was straining under the load. Now that we've got some big iron running the site, perhaps the extra bandwidth of images wouldn't be such a problem.
In the end, I'd be in favor of having images and the inline module here.
Now, back to Taxonomy!
- Robert Douglass
-----
My Drupal book: Building Online Communities with Drupal, phpBB and WordPress
my Drupal book | Twitter | Senior Drupal Advisor, Acquia | Advisor ICanLocalize
thank you
Robert, Neo, and Ataide,
Thank you for your thoughtful comments. If there is an unofficial agreement that Drupal will be lean, and Civicspace will be the loaded up version, that works for me. Off to research the taxonomy add-on modules.
ae2005