def _get_line_and_col(data):
        """
        Gets line and column from a string like the following: "1;5" or "1;" or ";5"

        and convers the column/line numbers to 0 base.
        """
        try:
            line, column = data.split(';')
        except AttributeError:
            line = int(data)
            column = 1
        # handle empty values and convert them to 0 based indices
        if not line:
            line = 0
        else:
            line = int(line) - 1
            if line < 0:
                line = 0
        if not column:
            column = 0
        else:
            column = int(column) - 1
            if column < 0:
                column = 0
        return column, line