Learning Bayesian Networks with Mixed Variables