I've spent a long time on Knowledge Based Systems much of it doing Knowledge-Based-Engineering With a long time interest in Model-Based-Reasoning. So even though I don't do purely MBR, I try to keep the idea of keeping the KBS I have worked on having an explicit knowledge-base which is separate from the reasoning engine/code............