This package provides machine tagging (i.e. property:value tagging) built on top of django-taggit.
Grab from PyPI with:
$ pip install django-taggit-machinetags
Update your installed apps:
INSTALLED_APPS = (
    ...
    'taggit',
    'taggit_machinetags',
    ...
)
And run the migrations:
$ python manage.py migrate
Usage is the same as taggit, but tags can now be specified as, colon-separated, property-value pairs.
# models.py
from django.db import models
from taggit_machinetags.managers import MachineTaggableManager
class MyModel(models.Model):
    name = models.CharField(...)
    tags = MachineTaggableManager()
#
>>> instance = MyModel.objects.all()[0]
>>> instance.tags.add('Property:Value')
>>> instance.tags.add('Taggy:McTag')
>>> instance.tags.get(namespace='Property')
<MachineTag: Property:Value>
>> MyModel.objects.filter(tags__slug='taggy:mctag')
<MyModel:...>
Creating a tag with the string 'Property:Value' results in a MachineTag with
the namespace namespace=Property, name=Value,
namespace_slug=property, name_slug=value, and slug=property:value.