added semantic validation of kb