This function will throw exceptions if the required parameters do not
exsit hence a stronger word is more appropriate here.
Also change the function parameter type to QVector. We don't need the
duplicate entries checking as currently we only use 3 fields at max and
can be easily checked by hand. So drop back to QVector which can be
constructed more efficiently.