## the define
define bind::zone() {

$zone_file = "/var/lib/puppet/modules/bind/zone/contents/${name}"
$zone_contents_d = "/var/lib/puppet/modules/bind/zone/contents.d/${name}"

# create the infrastructure for receiving parts of the zone
err("Tagging $zone_file: bind::master")
@@concatenated_file {
$zone_file:
dir => $zone_contents_d,
tag => 'bind::master';
}

## puppetmasterd

err: Scope(Bind::Zone[black.co.at]): Tagging /var/lib/puppet/modules/bind/zone/contents/black.co.at: bind::master

## database

puppet=# select restype, title, name from resources join resource_tags on (resources.id = resource_id) join puppet_tags ON (puppet_tags.id = puppet_tag_id) where title = '/var/lib/puppet/modules/bind/zone/contents/black.co.at' and host_id = 9 order by restype, title, puppet_tags.name;
restype | title | name
-------------------+--------------------------------------------------------+-------------------------------
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | bind
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | bind::zone
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | black.co.at
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | class
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | concatenated_file
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | davids
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | domain
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | full
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | hosting
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | hosting::domain
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | hosting::domain::zone
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | hosting::full
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | hosting_vserver_configuration
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | main
Concatenated_file | /var/lib/puppet/modules/bind/zone/contents/black.co.at | zone
(15 rows)