def _get_sequential_table(seqType):
    """
    Generates the table to fill sequence data in order to create
    a :class:`.SequenceFrame`

    :param seqType: Type of sequence: ``protein``, ``protein_sse``,
        ``dna``, ``rna``.
    :type seqType: :class:`str`

    :return: :class:`dict`

    :raise:
        :ValueError: If ``seqType`` is not known.
    """
    table = {}
    extra = []
    if seqType.lower() == 'protein':
        table = {'C': [], 'D': [], 'S': [], 'Q': [], 'K': [], 'I': [], 'P':
            [], 'T': [], 'F': [], 'N': [], 'G': [], 'H': [], 'L': [], 'R':
            [], 'W': [], 'A': [], 'V': [], 'E': [], 'Y': [], 'M': [], 'X':
            [], '*': [], 'B': [], 'Z': []}
        extra = ['X', '*', 'B', 'Z']
    elif seqType.lower() in ['dna', 'rna']:
        table = {'C': [], 'A': [], 'T': [], 'G': [], 'X': [], '*': [], 'B':
            [], 'D': [], 'H': [], 'K': [], 'M': [], 'N': [], 'R': [], 'S':
            [], 'V': [], 'W': [], 'Y': []}
        if seqType.lower() == 'rna':
            table.setdefault('U', [])
            table.pop('T', None)
        extra = ['X', '*', 'B', 'D', 'H', 'K', 'M', 'N', 'R', 'S', 'V', 'W',
            'Y']
    elif seqType.lower() == 'protein_sse':
        table = {'H': [], 'E': [], 'L': [], '*': [], 'G': []}
        extra = ['*', 'G']
    else:
        raise ValueError('sequence type {0} unknown'.format(seqType))
    return table, extra
