Just published this, where I'm trying to explain good rule design in terms more familiar to software developers. http://blog.athico.com/2009/11/what-is-inference-and-how-does-it.html Let me know what you think, and hopefully people have other ideas they can add back in. Mark