No, I think you misunderstand, I’ll try to clarify…
Under the hood, DT of course treats Groups and Tags pretty much identically. So far as I can figure out there are three significant bits of state:
– A flag attached to each group/tag saying if it is “Group-like” or “Tag-like” for some UI behaviors (e.g. icon)
– Another flag attached to each group/tag that corresponds to the “Exclude from Tagging” checkbox for the group
– A per-database flag that corresponds to the “Exclude Groups from Tagging” checkbox for the database
Also, observe that new groups are created with Exclude from Tagging unchecked (this is significant).
Clearly, a group is not treated as a tag if either the per-group Exclude from Tagging is checked or the per-database “Exclude Groups from Tagging” is checked. Conversely, a group is treated as a tag if both Exclude from Tagging and Exclude Groups from Tagging are unchecked.
Now, the default (with recent DT versions) for the per-database Exclude Groups from Tagging is checked. So, the default case is groups are not treated as tags. That’s fine, and is a wise choice since I would imagine most users want to keep groups and tags separate. But what if you do want to use some/all groups as tags?
OK, so now you uncheck the per-database Exclude Groups from Tagging checkbox. What happens? All your groups suddenly become tags, because all those groups were created with the default per-group setting for Exclude from Tagging, which is unchecked.
Is this good behavior? I think this depends on your use-case:
(1) Most/All groups are used as tags. For this set of users, the current behavior is perfect. Users can happily tag and organize using both the group hierarchy and the tag model. I would guess these users would make the occasional group as Exclude from Tagging, but these would be few.
(2) Few groups are used as tags. For this set of users, things are not so clean. They just want to use a few select groups as tags (for reasons explained below).
Why is (2) more cumbersome? Well the problem is the starting point is to make all groups tags and then “opt out” groups that should not be tags. As noted in an earlier reply, the initial bulk opt-out can be made less painful using a smart group. But that doesnt help with newly created groups, and means that every time a group is created you need to manually opt it out of tagging by setting the Exclude from Tagging checkbox for the group. Trust me, this gets boring fast.
What would make the workflow better for the second set of users? Well, since most newly created groups are not going to be used as tags (for these users), creating a group with Exclude from Tagging set on by default would be ideal. A group would be created as a non-tag group, and could be changed to a tag on the rare occasion when that was desirable.
But of course, this doesnt work for the first set of users, who like the current behavior of newly created groups behaving like tags.
Hence my suggestion. It seems to me that what is needed is a global (or maybe per-database) setting “Newly Created Groups and Excluded from Tagging” that would make everyone happy. All this does is control how the “Exclude from Tagging” setting on a group is set when that group is created.
This makes both sets of users (1) and (2) happy. Set (1) will leave the new setting unchecked, and newly created groups will be created with tagging enabled. Set (2) can enable the new setting, and newly created groups are created with tagging disabled. Everyone is happy, and there was much rejoicing!
And my use case? I have dozens of projects in a database, each with its own project folder for files and docs etc. However I have a need to occasionally mark individual items within other non-project folders as significant for a project, and for this I use a tag. So there is a /Projects/Foo group to store all the Foo project items, and a “Foo” tag so that I can tag other items that are relevant. (I can do this with replicas, but a tag seemed more appropriate as it helps highlight the “home” group for the item.)
But (I reasoned) to see all items that are part of the Foo project, I need a smart group that shows the contents of the /Projects/Foo group OR any item tagged with the Foo tag. OK, not too hard, but awkward, as I need a smart group for every project. So I reasoned that I could simply enable the /Projects/Foo group as a tag, and then voila!, no need for a smart group.
So this logic put me in user set (2) … I need most of my groups opted out of tagging but a select few manually opted-in. Hence my ask for a more streamlined way to create new groups that are not tags (in a database that doesnt have “Exclude Groups from Tagging” checked).
(sorry for long post)