AEM Tagging Framework
To tag content and leverage the AEM Tagging infrastructure :
- The tag must exist as a node of type [cq:Tag](#tags-cq-tag-node-type) under the taxonomy root node
- The tagged content node's NodeType must include the cq:Taggable mixin
Taggable Content : cq:Taggable Mixin
In order for application developers to attach tagging to a content type, the node's registration ( CND ) must include the cq:Taggable mixin or the cq:OwnerTaggable mixin.
The cq:OwnerTaggable mixin, which inherits from cq:Taggable , is intended to indicate that the content can be classified by the owner/author. In AEM, it is only an attribute of the cq:PageContent node. The cq:OwnerTaggable mixin is not required by the tagging framework.
It is recommended to only enable tags on the top-level node of an aggregated content item (or on its jcr:content node). Examples include:
- pages ( cq:Page ) where the jcr:content node is of type cq:PageContent which includes the cq:Taggable mixin.
- assets ( cq:Asset ) where the jcr:content/metadata node always has the cq:Taggable mixin.
Node Type Notation (CND)
Node Type definitions exist in the repository as CND files. The CND notation is defined as part of the JCR documentation here .
The essential definitions for the Node Types included in AEM are as follows:
[cq:Tag] > mix:title, nt:base orderable - * (undefined) multiple - * (undefined) + * (nt:base) = cq:Tag version [cq:Taggable] mixin - cq:tags (string) multiple [cq:OwnerTaggable] > cq:Taggable mixin