Form and half-functional validation