Parameters
        ----------
        connective : etree.Element
            etree representation of a <connective> element
            (annotates connective tokens)

        Example
        -------
          <word xml:id="s29_1" form="Als" pos="KOUS" lemma="als" func="-"
                parent="s29_500" dephead="s29_14" deprel="KONJ">
              <connective konn="als" rel1="Temporal" rel2="enable"/>
          </word>

def add_connective(self, connective):
        """
        Parameters
        ----------
        connective : etree.Element
            etree representation of a <connective> element
            (annotates connective tokens)

        Example
        -------
          <word xml:id="s29_1" form="Als" pos="KOUS" lemma="als" func="-"
                parent="s29_500" dephead="s29_14" deprel="KONJ">
              <connective konn="als" rel1="Temporal" rel2="enable"/>
          </word>
        """
        word_node_id = self.get_element_id(connective)
        # add a key 'connective' to the token with add rel1/rel2 attributes as a dict and
        # add the token to the namespace:connective layer
        connective_attribs = {key: val for (key, val) in connective.attrib.items() if key != 'konn'}
        word_node = self.node[word_node_id]
        word_node['layers'].add(self.ns+':connective')
        word_node.update({'connective': connective_attribs})