def _setrow(self, row):
        """
        Parameters
        ----------
        row : a list or tuple
            the list or tuple containing ordered elements::

                kwd, innode, outnode, compname, thcomp

            followed by comments & other ignored things
        """
        try:
            compname, kwd, innode, outnode, thcomp = row[0:5]
        except ValueError:
            raise ValueError('Error unpacking row: %s'%row)

        #Innode is an integer
        k=int(innode)

        #"Clear" should become None
        if compname == 'clear':
            compname = None
        if thcomp == 'clear':
            thcomp = None

        #Now create the GraphNode defined by this row,
        #and add it to the table. Default nodes are special.
        if kwd == 'default':
            self.tab[k].set_default(int(outnode),compname, thcomp)
        else:
            try:
                self.tab[k].set_named(kwd,int(outnode),compname, thcomp)
            except IndexError:
                old = self.tab[k].get_named(kwd)
                plist = (k, kwd, old, (outnode, compname, thcomp))
                self.problemset.add(plist)
Parameters
        ----------
        row : a list or tuple
            the list or tuple containing ordered elements::

                kwd, innode, outnode, compname, thcomp

            followed by comments & other ignored things