A sudden platinum upgrade raffle has appeared!

Should we introduce [color]_thighhighs, [color]_kneehighs, etc.?

Posted under Tags

Should the subtypes of [color]_legwear be individually tagged? Not every single type of legwear, but maybe as granular as this:

  • [color]_socks
  • [color]_kneehighs
  • [color]_thighhighs
  • [color]_pantyhose
  • [color]_leggings

So mainly according to length. The general [color]_legwear tag could then be retained and made an implication.

The [color]_legwear scheme has become pretty anachronistic. It was one of the earliest color tags, precisely because socks/legwear color is so important for a character's identity in anime, almost as much as hair color. Pixiv has for thighhighs, kneehighs, pantyhose, and tights color/pattern tags and dedicated wiki pages that track characters wearing them (one of the few instances where they color tag).
But back then danbooru cautiously chose a really broad term. Now that we are color tagging even stuff like neckerchiefs (which is good), color_legwear has become very muddy, with e.g. leggings lumped together with crew socks. It doesn't help that media like FGO or KanColle are more popular than ever, and they often feature 3+ character shots.

I don't feel strongly about either side of the argument, but I'd like to point out that it's currently very hard to search for specific colored legwear in pictures of 2+ characters, and it's straight out impossible for normal users as they are limited to two tags per search.

I think that with our current system, it's pretty easy to just do a colored legwear + legwear type search and a change would just make things more complicated, along with the taggers having to adapt to another bunch of tags so I'll just say no.

it's straight out impossible for normal users

To be fully honest, this is getting old and we've discussed the same issue a dozen times in the last week. If you have that many problems with 2-tag searches (which isn't a huge bother anyway), you have the following options:

  • Contribute for a long time so you become Builder.
  • Pay 20 or 40 dollars so you have an upgraded account.
  • Go to Gelbooru.

Kilias said:

To be fully honest, this is getting old and we've discussed the same issue a dozen times in the last week.

You missed the part where I said it's hard for other levels too. You have to play the guessing game with exclusion in case of 2+ characters, as the colored_legwear can apply to any of multiple kinds of clothing (thighhighs, leggings, pantyhose, socks, etc).
We already have colored versions of multiple clothing tags such as chokers, shoes, shirts, jackets, coats, etc. I don't see how making a distinction between pantyhose and socks is any different than having different colored tags between sweaters and shirts.

I’m pretty sure we had all those colored legwear tags a while ago and they were nuked in favor of the current system because they were getting too unwieldy.

My forum-fu is weak and I can’t find one of the ancient forum threads for it.

nonamethanks said:

You missed the part where I said it's hard for other levels too. You have to play the guessing game with exclusion in case of 2+ characters, as the colored_legwear can apply to any of multiple kinds of clothing (thighhighs, leggings, pantyhose, socks, etc).
We already have colored versions of multiple clothing tags such as chokers, shoes, shirts, jackets, coats, etc. I don't see how making a distinction between pantyhose and socks is any different than having different colored tags between sweaters and shirts.

You did not even mention other levels in this thread, so I'll assume you said that in another topic.
It's not that hard to me, dunno what you might be talking about. There's always using 1girl/1boy and/or solo which can make things way easier, too.

kittey said:

I’m pretty sure we had all those colored legwear tags a while ago and they were nuked in favor of the current system because they were getting too unwieldy.

We do have a bunch of colored legwear type tags aliased to the colored legwear tags themselves so there has to be a reason why we're not using those and it may be what you just said.

An example:

Yellow_pantyhose is the same as a yellow_legwear pantyhose search.

We should always minimize the amount of tags, especially if it can be replaced by a two tag search.
Two tags searches are possible for anyone.
So no to split the legwear tags again.

The pantyhose/leggings/thighhighs/kneehighs/socks -> legwear debate was decided 6 years ago in topic #8196, and I don't see any reason whatsoever to change it back. The current system works well and is in line with how we do a lot of things here.

Example:

JamaisVu said:

The [color]_legwear scheme has become pretty anachronistic. It was one of the earliest color tags, precisely because socks/legwear color is so important for a character's identity in anime, almost as much as hair color. Pixiv has for thighhighs, kneehighs, pantyhose, and tights color/pattern tags and dedicated wiki pages that track characters wearing them (one of the few instances where they color tag).
But back then danbooru cautiously chose a really broad term.

You've got your history mixed up. Prior to topic #8196, specific tags like black pantyhose and striped thighhighs were the norm. It was a convoluted mess so it got changed to the present tagging style.

Tagging every <color>_<legwear> combination leads to a combinatorial explosion in the number of tags and implications required:

<color>_<legwear> implications

create implication aqua_socks -> aqua_legwear
create implication aqua_kneehighs -> aqua_legwear
create implication aqua_thighhighs -> aqua_legwear
create implication aqua_over-kneehighs -> aqua_thighhighs
create implication aqua_pantyhose -> aqua_legwear
create implication aqua_leggings -> aqua_legwear

create implication aqua_socks -> socks
create implication aqua_kneehighs -> kneehighs
create implication aqua_thighhighs -> thighhighs
create implication aqua_over-kneehighs -> over-kneehighs
create implication aqua_pantyhose -> pantyhose
create implication aqua_leggings -> leggings

create implication black_socks -> black_legwear
create implication black_kneehighs -> black_legwear
create implication black_thighhighs -> black_legwear
create implication black_over-kneehighs -> black_thighhighs
create implication black_pantyhose -> black_legwear
create implication black_leggings -> black_legwear

create implication black_socks -> socks
create implication black_kneehighs -> kneehighs
create implication black_thighhighs -> thighhighs
create implication black_over-kneehighs -> over-kneehighs
create implication black_pantyhose -> pantyhose
create implication black_leggings -> leggings

create implication blue_socks -> blue_legwear
create implication blue_kneehighs -> blue_legwear
create implication blue_thighhighs -> blue_legwear
create implication blue_over-kneehighs -> blue_thighhighs
create implication blue_pantyhose -> blue_legwear
create implication blue_leggings -> blue_legwear

create implication blue_socks -> socks
create implication blue_kneehighs -> kneehighs
create implication blue_thighhighs -> thighhighs
create implication blue_over-kneehighs -> over-kneehighs
create implication blue_pantyhose -> pantyhose
create implication blue_leggings -> leggings

create implication navy_blue_socks -> navy_blue_legwear
create implication navy_blue_kneehighs -> navy_blue_legwear
create implication navy_blue_thighhighs -> navy_blue_legwear
create implication navy_blue_over-kneehighs -> navy_blue_thighhighs
create implication navy_blue_pantyhose -> navy_blue_legwear
create implication navy_blue_leggings -> navy_blue_legwear
create implication navy_blue_legwear -> blue_legwear

create implication navy_blue_socks -> blue_socks
create implication navy_blue_kneehighs -> blue_kneehighs
create implication navy_blue_thighhighs -> blue_thighhighs
create implication navy_blue_over-kneehighs -> blue_over-kneehighs
create implication navy_blue_pantyhose -> blue_pantyhose
create implication navy_blue_leggings -> blue_leggings

create implication brown_socks -> brown_legwear
create implication brown_kneehighs -> brown_legwear
create implication brown_thighhighs -> brown_legwear
create implication brown_over-kneehighs -> brown_thighhighs
create implication brown_pantyhose -> brown_legwear
create implication brown_leggings -> brown_legwear

create implication brown_socks -> socks
create implication brown_kneehighs -> kneehighs
create implication brown_thighhighs -> thighhighs
create implication brown_over-kneehighs -> over-kneehighs
create implication brown_pantyhose -> pantyhose
create implication brown_leggings -> leggings

create implication green_socks -> green_legwear
create implication green_kneehighs -> green_legwear
create implication green_thighhighs -> green_legwear
create implication green_over-kneehighs -> green_thighhighs
create implication green_pantyhose -> green_legwear
create implication green_leggings -> green_legwear

create implication green_socks -> socks
create implication green_kneehighs -> kneehighs
create implication green_thighhighs -> thighhighs
create implication green_over-kneehighs -> over-kneehighs
create implication green_pantyhose -> pantyhose
create implication green_leggings -> leggings

create implication grey_socks -> grey_legwear
create implication grey_kneehighs -> grey_legwear
create implication grey_thighhighs -> grey_legwear
create implication grey_over-kneehighs -> grey_thighhighs
create implication grey_pantyhose -> grey_legwear
create implication grey_leggings -> grey_legwear

create implication grey_socks -> socks
create implication grey_kneehighs -> kneehighs
create implication grey_thighhighs -> thighhighs
create implication grey_over-kneehighs -> over-kneehighs
create implication grey_pantyhose -> pantyhose
create implication grey_leggings -> leggings

create implication orange_socks -> orange_legwear
create implication orange_kneehighs -> orange_legwear
create implication orange_thighhighs -> orange_legwear
create implication orange_over-kneehighs -> orange_thighhighs
create implication orange_pantyhose -> orange_legwear
create implication orange_leggings -> orange_legwear

create implication orange_socks -> socks
create implication orange_kneehighs -> kneehighs
create implication orange_thighhighs -> thighhighs
create implication orange_over-kneehighs -> over-kneehighs
create implication orange_pantyhose -> pantyhose
create implication orange_leggings -> leggings

create implication pink_socks -> pink_legwear
create implication pink_kneehighs -> pink_legwear
create implication pink_thighhighs -> pink_legwear
create implication pink_over-kneehighs -> pink_thighhighs
create implication pink_pantyhose -> pink_legwear
create implication pink_leggings -> pink_legwear

create implication pink_socks -> socks
create implication pink_kneehighs -> kneehighs
create implication pink_thighhighs -> thighhighs
create implication pink_over-kneehighs -> over-kneehighs
create implication pink_pantyhose -> pantyhose
create implication pink_leggings -> leggings

create implication purple_socks -> purple_legwear
create implication purple_kneehighs -> purple_legwear
create implication purple_thighhighs -> purple_legwear
create implication purple_over-kneehighs -> purple_thighhighs
create implication purple_pantyhose -> purple_legwear
create implication purple_leggings -> purple_legwear

create implication purple_socks -> socks
create implication purple_kneehighs -> kneehighs
create implication purple_thighhighs -> thighhighs
create implication purple_over-kneehighs -> over-kneehighs
create implication purple_pantyhose -> pantyhose
create implication purple_leggings -> leggings

create implication red_socks -> red_legwear
create implication red_kneehighs -> red_legwear
create implication red_thighhighs -> red_legwear
create implication red_over-kneehighs -> red_thighhighs
create implication red_pantyhose -> red_legwear
create implication red_leggings -> red_legwear

create implication red_socks -> socks
create implication red_kneehighs -> kneehighs
create implication red_thighhighs -> thighhighs
create implication red_over-kneehighs -> over-kneehighs
create implication red_pantyhose -> pantyhose
create implication red_leggings -> leggings

create implication white_socks -> white_legwear
create implication white_kneehighs -> white_legwear
create implication white_thighhighs -> white_legwear
create implication white_over-kneehighs -> white_thighhighs
create implication white_pantyhose -> white_legwear
create implication white_leggings -> white_legwear

create implication white_socks -> socks
create implication white_kneehighs -> kneehighs
create implication white_thighhighs -> thighhighs
create implication white_over-kneehighs -> over-kneehighs
create implication white_pantyhose -> pantyhose
create implication white_leggings -> leggings

create implication yellow_socks -> yellow_legwear
create implication yellow_kneehighs -> yellow_legwear
create implication yellow_thighhighs -> yellow_legwear
create implication yellow_over-kneehighs -> yellow_thighhighs
create implication yellow_pantyhose -> yellow_legwear
create implication yellow_leggings -> yellow_legwear

create implication yellow_socks -> socks
create implication yellow_kneehighs -> kneehighs
create implication yellow_thighhighs -> thighhighs
create implication yellow_over-kneehighs -> over-kneehighs
create implication yellow_pantyhose -> pantyhose
create implication yellow_leggings -> leggings

create implication multicolored_socks -> multicolored_legwear
create implication multicolored_kneehighs -> multicolored_legwear
create implication multicolored_thighhighs -> multicolored_legwear
create implication multicolored_over-kneehighs -> multicolored_thighhighs
create implication multicolored_pantyhose -> multicolored_legwear
create implication multicolored_leggings -> multicolored_legwear

create implication multicolored_socks -> socks
create implication multicolored_kneehighs -> kneehighs
create implication multicolored_thighhighs -> thighhighs
create implication multicolored_over-kneehighs -> over-kneehighs
create implication multicolored_pantyhose -> pantyhose
create implication multicolored_leggings -> leggings

create implication gradient_socks -> gradient_legwear
create implication gradient_kneehighs -> gradient_legwear
create implication gradient_thighhighs -> gradient_legwear
create implication gradient_over-kneehighs -> gradient_thighhighs
create implication gradient_pantyhose -> gradient_legwear
create implication gradient_leggings -> gradient_legwear
create implication gradient_legwear -> multicolored_legwear

create implication gradient_socks -> multicolored_socks
create implication gradient_kneehighs -> multicolored_kneehighs
create implication gradient_thighhighs -> multicolored_thighhighs
create implication gradient_over-kneehighs -> multicolored_over-kneehighs
create implication gradient_pantyhose -> multicolored_pantyhose
create implication gradient_leggings -> multicolored_leggings

That's ~180 implications for colors alone, which is not the half of it once you consider all the other style/pattern/material tags we also have (of which this is not even a complete list):

<style>_<legwear> implications

create implication argyle_socks -> argyle_legwear
create implication argyle_kneehighs -> argyle_legwear
create implication argyle_thighhighs -> argyle_legwear
create implication argyle_over-kneehighs -> argyle_thighhighs
create implication argyle_pantyhose -> argyle_legwear
create implication argyle_leggings -> argyle_legwear

create implication argyle_socks -> socks
create implication argyle_kneehighs -> kneehighs
create implication argyle_thighhighs -> thighhighs
create implication argyle_over-kneehighs -> over-kneehighs
create implication argyle_pantyhose -> pantyhose
create implication argyle_leggings -> leggings

create implication checkered_socks -> checkered_legwear
create implication checkered_kneehighs -> checkered_legwear
create implication checkered_thighhighs -> checkered_legwear
create implication checkered_over-kneehighs -> checkered_thighhighs
create implication checkered_pantyhose -> checkered_legwear
create implication checkered_leggings -> checkered_legwear

create implication checkered_socks -> socks
create implication checkered_kneehighs -> kneehighs
create implication checkered_thighhighs -> thighhighs
create implication checkered_over-kneehighs -> over-kneehighs
create implication checkered_pantyhose -> pantyhose
create implication checkered_leggings -> leggings

create implication polka_dot_socks -> polka_dot_legwear
create implication polka_dot_kneehighs -> polka_dot_legwear
create implication polka_dot_thighhighs -> polka_dot_legwear
create implication polka_dot_over-kneehighs -> polka_dot_thighhighs
create implication polka_dot_pantyhose -> polka_dot_legwear
create implication polka_dot_leggings -> polka_dot_legwear

create implication polka_dot_socks -> socks
create implication polka_dot_kneehighs -> kneehighs
create implication polka_dot_thighhighs -> thighhighs
create implication polka_dot_over-kneehighs -> over-kneehighs
create implication polka_dot_pantyhose -> pantyhose
create implication polka_dot_leggings -> leggings

create implication plaid_socks -> plaid_legwear
create implication plaid_kneehighs -> plaid_legwear
create implication plaid_thighhighs -> plaid_legwear
create implication plaid_over-kneehighs -> plaid_thighhighs
create implication plaid_pantyhose -> plaid_legwear
create implication plaid_leggings -> plaid_legwear

create implication plaid_socks -> socks
create implication plaid_kneehighs -> kneehighs
create implication plaid_thighhighs -> thighhighs
create implication plaid_over-kneehighs -> over-kneehighs
create implication plaid_pantyhose -> pantyhose
create implication plaid_leggings -> leggings

create implication print_socks -> print_legwear
create implication print_kneehighs -> print_legwear
create implication print_thighhighs -> print_legwear
create implication print_over-kneehighs -> print_thighhighs
create implication print_pantyhose -> print_legwear
create implication print_leggings -> print_legwear

create implication print_socks -> socks
create implication print_kneehighs -> kneehighs
create implication print_thighhighs -> thighhighs
create implication print_over-kneehighs -> over-kneehighs
create implication print_pantyhose -> pantyhose
create implication print_leggings -> leggings

create implication american_flag_socks -> american_flag_legwear
create implication american_flag_kneehighs -> american_flag_legwear
create implication american_flag_thighhighs -> american_flag_legwear
create implication american_flag_over-kneehighs -> american_flag_thighhighs
create implication american_flag_pantyhose -> american_flag_legwear
create implication american_flag_leggings -> american_flag_legwear
craete implication american_flag_legwear -> print_legwear

create implication american_flag_socks -> print_socks
create implication american_flag_kneehighs -> print_kneehighs
create implication american_flag_thighhighs -> print_thighhighs
create implication american_flag_over-kneehighs -> print_over-kneehighs
create implication american_flag_pantyhose -> print_pantyhose
create implication american_flag_leggings -> print_leggings

create implication striped_socks -> striped_legwear
create implication striped_kneehighs -> striped_legwear
create implication striped_thighhighs -> striped_legwear
create implication striped_over-kneehighs -> striped_thighhighs
create implication striped_pantyhose -> striped_legwear
create implication striped_leggings -> striped_legwear

create implication striped_socks -> socks
create implication striped_kneehighs -> kneehighs
create implication striped_thighhighs -> thighhighs
create implication striped_over-kneehighs -> over-kneehighs
create implication striped_pantyhose -> pantyhose
create implication striped_leggings -> leggings

create implication vertical-striped_socks -> vertical-striped_legwear
create implication vertical-striped_kneehighs -> vertical-striped_legwear
create implication vertical-striped_thighhighs -> vertical-striped_legwear
create implication vertical-striped_over-kneehighs -> vertical-striped_thighhighs
create implication vertical-striped_pantyhose -> vertical-striped_legwear
create implication vertical-striped_leggings -> vertical-striped_legwear
create implication vertical-striped_legwear -> striped_legwear

create implication vertical-striped_socks -> striped_socks
create implication vertical-striped_kneehighs -> striped_kneehighs
create implication vertical-striped_thighhighs -> striped_thighhighs
create implication vertical-striped_over-kneehighs -> striped_over-kneehighs
create implication vertical-striped_pantyhose -> striped_pantyhose
create implication vertical-striped_leggings -> striped_leggings

create implication bow_socks -> bow_legwear
create implication bow_kneehighs -> bow_legwear
create implication bow_thighhighs -> bow_legwear
create implication bow_over-kneehighs -> bow_thighhighs
create implication bow_pantyhose -> bow_legwear
create implication bow_leggings -> bow_legwear
create implication bow_legwear -> bow

create implication bow_socks -> socks
create implication bow_kneehighs -> kneehighs
create implication bow_thighhighs -> thighhighs
create implication bow_over-kneehighs -> over-kneehighs
create implication bow_pantyhose -> pantyhose
create implication bow_leggings -> leggings

create implication frilled_socks -> frilled_legwear
create implication frilled_kneehighs -> frilled_legwear
create implication frilled_thighhighs -> frilled_legwear
create implication frilled_over-kneehighs -> frilled_thighhighs
create implication frilled_pantyhose -> frilled_legwear
create implication frilled_leggings -> frilled_legwear
create implication frilled_legwear -> frills

create implication frilled_socks -> socks
create implication frilled_kneehighs -> kneehighs
create implication frilled_thighhighs -> thighhighs
create implication frilled_over-kneehighs -> over-kneehighs
create implication frilled_pantyhose -> pantyhose
create implication frilled_leggings -> leggings

create implication lace_socks -> lace_legwear
create implication lace_kneehighs -> lace_legwear
create implication lace_thighhighs -> lace_legwear
create implication lace_over-kneehighs -> lace_thighhighs
create implication lace_pantyhose -> lace_legwear
create implication lace_leggings -> lace_legwear
create implication lace_legwear -> lace

create implication lace_socks -> socks
create implication lace_kneehighs -> kneehighs
create implication lace_thighhighs -> thighhighs
create implication lace_over-kneehighs -> over-kneehighs
create implication lace_pantyhose -> pantyhose
create implication lace_leggings -> leggings

create implication ribbon-trimmed_socks -> ribbon-trimmed_legwear
create implication ribbon-trimmed_kneehighs -> ribbon-trimmed_legwear
create implication ribbon-trimmed_thighhighs -> ribbon-trimmed_legwear
create implication ribbon-trimmed_over-kneehighs -> ribbon-trimmed_thighhighs
create implication ribbon-trimmed_pantyhose -> ribbon-trimmed_legwear
create implication ribbon-trimmed_leggings -> ribbon-trimmed_legwear
create implication ribbon-trimmed_legwear -> ribbon_trim

create implication ribbon-trimmed_socks -> socks
create implication ribbon-trimmed_kneehighs -> kneehighs
create implication ribbon-trimmed_thighhighs -> thighhighs
create implication ribbon-trimmed_over-kneehighs -> over-kneehighs
create implication ribbon-trimmed_pantyhose -> pantyhose
create implication ribbon-trimmed_leggings -> leggings

create implication sheer_socks -> sheer_legwear
create implication sheer_kneehighs -> sheer_legwear
create implication sheer_thighhighs -> sheer_legwear
create implication sheer_over-kneehighs -> sheer_thighhighs
create implication sheer_pantyhose -> sheer_legwear
create implication sheer_leggings -> sheer_legwear

create implication sheer_socks -> socks
create implication sheer_kneehighs -> kneehighs
create implication sheer_thighhighs -> thighhighs
create implication sheer_over-kneehighs -> over-kneehighs
create implication sheer_pantyhose -> pantyhose
create implication sheer_leggings -> leggings

create implication adjusting_socks -> adjusting_legwear
create implication adjusting_kneehighs -> adjusting_legwear
create implication adjusting_thighhighs -> adjusting_legwear
create implication adjusting_over-kneehighs -> adjusting_thighhighs
create implication adjusting_pantyhose -> adjusting_legwear
create implication adjusting_leggings -> adjusting_legwear

create implication adjusting_socks -> socks
create implication adjusting_kneehighs -> kneehighs
create implication adjusting_thighhighs -> thighhighs
create implication adjusting_over-kneehighs -> over-kneehighs
create implication adjusting_pantyhose -> pantyhose
create implication adjusting_leggings -> leggings

The sheer number of implications required here should speak for itself.

1