I don't think you will find a formal specification of a honeypot as it main purpose is to detect unexpected/unknown attacks. There are, however, definitions and softwares that act as honeypots on various documents, like this[1] from Hong Kong Government. It even describes some live-cds that makes the whole system become a honeypot.
Honeypot is a common system, isolated of the real environment and imbued with monitoring tools, to provide information and lock the attacker. That said, if you need simulation, any simulator can work with a honeypot. I recommend CORE - Common Open Research Emulator[2], from US Navy, as it's simple, have centralized configuration and can connect to live networks, one of them, of course, your real honeypot.
There are different types of honeypots, based on interaction there are low and high interaction honeypots, the low interaction honeypots are used mainly to collect malware samples (nepenthes), high interaction honeypots provide more information about the attack and used mainly to study the behaviour of the attacker.
read this
Conference Paper Distributed Low-Interaction Honeypot System to Detect Botnets