This is for the public tag repository only! You can run your own tag repositories and do your own thing additionally or instead!

seriousness of schema

Whenever many people contribute to a single project, a rough schema is useful to keep everyone on roughly the same track. It is not important for it to be upheld absolutely; it will just make searches easier if most of us can mostly agree to some guidelines.

The most important thing is: if your tag idea is your opinion, don't add it to my repo. I only want objective tags, not subjective. 'beautiful' is unhelpful since no one can agree on what it means. 'lingerie', 'blue eyes', and 'male' or 'female' are better since reasonable people can generally agree on what they mean. If someone thinks blue-eyed women are beautiful, they can search for that to find beautiful things. Other people can use different terms to find what they want.

As with all rulesets, it is very possible to go too far. We will never be able to easily and perfectly categorise every single image to everyone's satisfaction, so there is no point defining every possible rule for every possible situation. This is especially true for namespaces. So lower any autismal expectations you might have and just start tagging. Fixing mistakes is not difficult.

you can add pretty much whatever the hell you want, but don't screw around

You can't prefix a tag with a '-' or 'system:' for obvious reasons, but tag repositories will accept anything else utf-8. You can start your own namespaces, categorisation systems, whatever. Just be aware that everyone else will see what you do.

If you are still unsure about the difference between objective and subjective, here's some more examples:

Of course, if you are tagging a picture of someone holding a sign that says 'beautiful', then you can go ahead and tag it that. Otherwise, please keep it to yourself!

numbers

Numbers should be written '22', '1457 ce', and 'page:3', unless as part of an official title like 'ocean's eleven'. When the client parses numbers, it does so intelligently, so just use '1' where you might before have done '01' or '001'. I know it looks ugly sometimes to have '2 girls' or '1 cup', but the rules for writing numbers out in full are hazy for special cases.

(Numbers written as 123 are also readable by many different language-speakers, while 'tano', 'deux' and 'seven' are not.)

plurals

Nouns should generally be singular, not plural. 'chair' instead of 'chairs', 'cat' instead of 'cats', even if there are several of the thing in the image. If there really are many of the thing in the image, add a seperate 'multiple', 'comparison' or 'group' tag as apppropriate.

Ignore this when the thing is normally said in its plural (usually paired) form. Say 'blue eyes', not 'blue eye'; 'breasts', not 'breast', even if only one is pictured.

acronyms and synonyms

I prefer the full 'series:the lord of the rings' rather than 'lotr'. If you are an advanced user, please help out with tag siblings to help induce this.

namespaces

A namespace is when you prefix a context: 'creator:range murata', 'series:futurama', 'title:what kind of day has it been', and so on.

Prefixing a namespaced context where appropriate makes searching more powerful. I can also update the client to parse certain namespaces in different ways, to create clever search predicates, sort orders, collections, presentation rules, whatever.

BTW: All searches without a namespace will return all instances, namespaced or not, of that tag; a search for 'levar burton' will return everything with 'levar burton', 'creator:levar burton', 'person:levar burton', 'series:levar burton', whatever. If you then want a specific version of 'levar burton' to narrow it down, use a namespace.

BTW Part 2, Electric Boogaloo: Nested namespaces do not work. Don't go with something crazy like 'militaries:united states:navy:marine corps:sgt. joe bloggs' as the client will parse that as (militaries):(united states:navy:marine corps:sgt. joe bloggs). Instead use a combination of 'nation:united states', 'usmc', 'person:joe bloggs', 'rank:sergeant' and so on. If this sort of thing appeals to you, you might want to check out tag parents when you are an advanced user.

Some basic namespaces:

siblings and parents

Please do add siblings and parents! Use some common sense, and if it is something not obvious, please explain the relationship in your submitted reason. If it is something obvious (e.g. 'wings' is a parent of 'angel wings'), don't bother to put a reason in; I'll just approve it.

My general thoughts:

examples

These are not supposed to be 100% perfect or 100% done, but just to get you thinking: