QName validation and parser