Tags are an integral tool for managing assets across Assets’ folder hierarchy. Establishing a tagging taxonomy is critical in allowing users to discover and assets and organize assets in AEM.

Tagging is important taxonomical construct in AEM and is a key mechanic that allows for an organizational facade that overlays assets more rigid folder-based tree structure.
Tags are managed in a hierarchy orthogonal to asset folders and apply to individual assets metadata. Once applied to assets, tags can project a taxonomy and classification onto the tag assets, allowing them to be grouped by, search for and referenced by tag.
For example, we may have assets living across folders in AEM that have to do with a particular geographic region.
Well, this taxonomical attribute isn’t important enough for us to organize asset folders by region. We may still need to be able to quickly identify and locate which assets are associated with a particular region. For this, tag is an excellent tool. Tags are managed under Tools, General tagging, and as most things in AEM modeled by a hierarchy. This hierarchical or tree based organization makes it easy to classify in organize tags, as well as provide an easy-to-use interface for users to locate and select relevant tags.
Here we’ll define a taxonomy for various geographic regions that our content is associated with. The first level of the tag hierarchy is called the Namespace and is used as a top level organizational bucket. The text below the Namespace constitute the tag hierarchy, and can be as shallow or as deep as necessary. These tag trees under Namespace can even model sub-taxonomies as we’ll see in a moment. Let’s create a Namespace for a weekend brand which will house all sub-taxonomies we use specifically in the context of this brand. Following the usual AEM conventions, both Namespaces and tags have titles and names. The title is the display name used in AEM and visible to users and can even be localized. The name is the underlying system name of the tag and is what’s stored on the assets metadata when a tag is applied to an asset. Next, we’ll create the tag tree that models geographic regions. And this allows users to group or associate content across AEM with specific regions just by tagging it.
Under our Regions tag, we can build the taxonomy out further. APAC, EMEA, Latin America, North America. By default, the name is auto generated from the title. However, it’s possible to change the name to any value we want. Typically, this consideration is defined by the content architect, based on how consistent the semantics of the tag will be over time.
And within each of these, we can create Country Tags for even finer granularity.
Note that it’s possible and equally likely, our content architect would have modeled the regions as this tag Namespace. Pulling it up a level instead of embedding it in the Weekend Namespace. That said, you can see how the tag hierarchy and the ability to create regions at the second level allows for complex sub-taxonomies to be built up. For example, we can make sibling taxonomies next to Region for activity, season and customer journey, all under a common Namespace.
Okay, now that we have our Regions tag taxonomy defined, we’ll be able to expose it to AEM users, via metadata schemas, allowing for users to both apply these tags, as well as see what tags have already been applied.
Tag taxonomies are typically defined by content architects and model-controlled vocabularies used to manage content in AEM. And are usually not modified in an ad hoc manner at runtime, as often AEM configuration and code may rely on them. Also, while tags can be moved or merged, it’s best to design a stable taxonomy where the use of these operations are the exceptions and not the rule. Remember that similar to asset folders, the titles of tags are very flexible and can be changed at any time without significant impact. However, changing a tags’ name, or hierarchy structure can be more complex and impactful to the AEM instance or application.
Lastly improvise several out-of-the-box Tech Namespaces. It’s best to leave these intact as AEM itself uses some of these. For example, the Workflow Tags are used to tag AEM workflow models to determine which consoles in AEM they’re made available. -