PDA

View Full Version : suggestion: tag aliases, tag implications



eriscontrol
10-08-2012, 02:46 AM
Just what it says: Danbooru-style tag aliases and tag implications to make tagging, searching and blacklisting cleaner and easier.

Tag aliases. There are many ways to write the same thing, and not everyone is going to write it the same way. mlp or my little pony? puma, cougar, mountain lion, even catamount? m/m, yaoi or gay? It looks like users are working around this by tagging with several variants of the same tag, but this leaves a lot of room for errors of omission so a user searching for a particular Thing might still need to try several queries before finding what they want. It would serve the community well if there were some way for administrators to define a "canonical" tag and have several aliases that are automatically replaced with the canonical form when a submission is saved.

One of the more useful (if hacky) uses of this system on e621 is the invalid_tag alias. Popular subjective or "troll" tags (anatomically_incorrect, crappy, poorly_animated, sexy) and so-ubiquitous-as-to-be-useless tags (arms, legs, furry) are aliased to this tag, preventing users applying them to submissions they don't like or just cluttering up the tags with useless chaff like common, ordinary body parts.

See e621's list of tag aliases (http://e621.net/tag_alias) for an example of such a system in action.

Tag implications. Sometimes, the presence of one thing implies the presence of another. Not all My Little Pony fan-art features Pinkie Pie, but all art featuring Pinkie Pie necessarily features My Little Pony. Wolves, dogs and jackals are all canines, and a user searching "canine" likely wants to see them all. Users can apply all these tags themselves, but why should they have to? An implication means that the implied tag is automatically added to any submission that has the requisite tag when the tags are saved. A species tag might imply a broader taxon, or a character's name might imply the TV show or comic book that they come from. Again, I refer you to e621's list of implications (http://e621.net/tag_implication) for an example of an effective system.

To reiterate: aliases are for tags that mean the same thing; implications are for "A is a kind of B"-type relationships.

These can both be applied as a one-time computation when a submission is saved, although adding new aliases and implications will obviously require existing submissions to be updated as well.

For the devs, Danbooru source code is here on GitHub (https://github.com/r888888888/danbooru). Most of the relevant logic is in app/models/tag_{alias,implication}.rb.

GingerM
10-08-2012, 01:24 PM
Just what it says: Danbooru-style tag aliases and tag implications to make tagging, searching and blacklisting cleaner and easier.

Tag aliases. ==8<---

Tag implications. ===8<---

===8<---

Seconded!

Morphology
10-08-2012, 01:33 PM
I like this idea! I'm helping make sure everything is properly tagged currently, especially in regards to filters, and this will make that job a lot easier.

eriscontrol
11-03-2012, 07:32 PM
I like this idea! I'm helping make sure everything is properly tagged currently, especially in regards to filters, and this will make that job a lot easier.

Oh lord, yes. I can imagine that job getting out of hand pretty quickly without a feature like this. I have a pretty hard time keeping tags straight on things where I'm the only one tagging because I tend to forget what my "canonical" tag spellings are. Good to see one of the mods likes this idea, anyway—maybe there's some hope.

Stay tuned for more; I'm about to edit the main post with a bit about invalid tags.