Item2127: select new parent from list includes the topic we're setting the parent for.
Priority: Enhancement
Current State: No Action Required
Released In:
Target Release: n/a
Applies To: Engine
Component:
Branches:
oops
so, not only should the engine stop me from setting myself to be my own parent, the UI shouldn't suggest that its an ok thing to do.
--
SvenDowideit - 21 Sep 2009
Why? Why shouldn't a topic be its own parent? It's not like the relationship actually
means anything. Yes, it's a cycle, but only a trivial case of the more general cycle problem.
I don't think any action is required.
--
CrawfordCurrie - 14 Dec 2009
Because it looks illogical and unthinking. Why would you want to keep the possibility to link to itself?
--
ArthurClemens - 14 Dec 2009
i wouldn't want to make such a restriction in the actual
engine which would prevent such a linkage, but it seems like a desirable UI enhancement.
--
WillNorris - 14 Dec 2009
This type of thing kills my applications using
DBQUERY
and
DBRECURSE
. Specifically my ajax topic browser then has menus where a topic shows itself under its own list of children, so the user can then keep navigating deeper and deeper into the same list of topic children until they get bored...
But perhaps that's DBCachePlugin's problem, or my problem for not excluding the topic from the search.
--
PaulHarvey - 15 Dec 2009
While I sympathise with the sentiment, I'm afraid there is nothing to dictate
how the topic parent should be used. If you are going to be strict about the definition of a topic as a node in a classification hierarchy, then no, a topic cannot be it's own parent. But there are practical scenarios in which it makes sense. Consider a web that comprises a set of discrete subgraphs, one for each person's "stuff". So I have a topic, "ArthursStuff", and another topic, "WillsStuff", but I have no "super-topic" to parent these topics; and I want a search for
"parent.name='ArthursStuff'"
to hit the ArthursStuff topic, because it is
de facto a member of that subgraph.
OK, so it's a contrived example, and I'm not saying it's a good idea - personally, I have
never thought the TOPICPARENT relation was a good idea - but the fact remains that you can do it, have always been able to do it, and there is nothing in the definition of TOPICPARENT that should prevent it. As I pointed out above, self-parenting is only a degenerate case of a self-referential cycle. If you are going to disallow it in the interests of ensuring acyclic relations, then you also have to disallow A -> B -> A cycles. As Paul observes, the fact of
DBRECURSE
is a problem in that plugin, not in the underlying TOPICPARENT concept.
--
CrawfordCurrie - 15 Dec 2009