This is appealing from a user's perspective: a user can focus on encoding the constraints on the outputs, and leave the grounding of these predicates and formulas entirely to the MLN inference engine.
when applying an MLN to different problem instances, the first-order formulas remain unchanged: all we need to change are the evidence predicates (i.e., the observations).