Vocabulary Relationships / Hierarchy and Usability
I've been trying to wrap my head around this for a while and I'm running into a roadblock in terms of providing good usability to community members vs. correct information architecture. As an example, let's say I'm running a website about plants, and visitors can add articles about different plants. This is just a crude example to help understand the problem. When a visitor goes to create a new article, they can categorize it as follows:
Plant Part
- Color
-- Produce
For Plant Part, the options are "Fruit" and "Flower". For Color, "Red" and "White". And for Produce "Rosa glauca" and "Red Delicious".
The problem is, both fruits and flowers can have red varieties. So, if I wanted to represent this taxonomy hierarchy in a single vocabulary, I would have to add the term "Red" under both "Fruit" and "Flower". This is not ideal because it duplicates the term and it doesn't allow visitors to view the category for all red plants (regardless of whether they are looking for a fruit or flower).
If I separate "Plant Part", "Color" and "Produce" into separate vocabularies then the information architecture will be better (no duplicated terms and better categorization). However, from a usability standpoint this is not acceptable because the user will be presented with options that shouldn't be available. For example, if the user chooses "Fruit" for plant part, they should not see the options for flowers. And, if a user chooses "Red" for color, they should not see any options for blue fruits.
I am aware of the hierarchical select module but it does not solve this issue. It only makes it easier to select terms within a single vocabulary.
My question is if there is any way to relate terms across vocabularies so that they are conditional. This would be ideal. If a user chooses "Fruit" from the plant part vocabulary, then only related terms in the "Color" vocabulary would then be displayed for the next option. Is this at all possible?

Good question
I'm facing the same problem and I'm really interested on how to solve it !
If you found something, just let me know ;)
-Pol-
hierarchy: 2 == multiple
while there is poor to none support for multiple parent relationships,
taxonomymodule contemplates it in its schemayou may check
taxonomy.install'hierarchy' => array(...
'description' => 'The type of hierarchy allowed within the vocabulary. (0 = disabled, 1 = single, 2 = multiple)',
),
would solve your use case to have "red" being child of several parents at the same time?
the obvious question after that one would be, which modules will help you to visually administrate them, or even use them
I don't know how does Hierarchical Select behave regarding multiple parent hierarchies