Parameters
        ----------
        splitrelation : etree.Element
            etree representation of a <splitRelation> element
            A <splitRelation> annotates its parent element (e.g. as an anaphora).
            Its parent can be either a <word> or a <node>.
            A <splitRelation> has a target attribute, which describes
            the targets (plural! e.g. antecedents) of the relation.

        Example
        -------
            <node xml:id="s2527_528" cat="NX" func="-" parent="s2527_529">
             <splitRelation type="split_antecedent" target="s2527_504 s2527_521"/>
             <word xml:id="s2527_32" form="beider" pos="PIDAT" morph="gpf" lemma="beide" func="-" parent="s2527_528" dephead="s2527_33" deprel="DET"/>
             <word xml:id="s2527_33" form="Firmen" pos="NN" morph="gpf" lemma="Firma" func="HD" parent="s2527_528" dephead="s2527_31" deprel="GMOD"/>
            </node>

            <word xml:id="s3456_12" form="ihr" pos="PPOSAT" morph="nsm" lemma="ihr" func="-" parent="s3456_507" dephead="s3456_14" deprel="DET">
             <splitRelation type="split_antecedent" target="s3456_505 s3456_9"/>
            </word>

def add_splitrelation(self, splitrelation):
        """
        Parameters
        ----------
        splitrelation : etree.Element
            etree representation of a <splitRelation> element
            A <splitRelation> annotates its parent element (e.g. as an anaphora).
            Its parent can be either a <word> or a <node>.
            A <splitRelation> has a target attribute, which describes
            the targets (plural! e.g. antecedents) of the relation.

        Example
        -------
            <node xml:id="s2527_528" cat="NX" func="-" parent="s2527_529">
             <splitRelation type="split_antecedent" target="s2527_504 s2527_521"/>
             <word xml:id="s2527_32" form="beider" pos="PIDAT" morph="gpf" lemma="beide" func="-" parent="s2527_528" dephead="s2527_33" deprel="DET"/>
             <word xml:id="s2527_33" form="Firmen" pos="NN" morph="gpf" lemma="Firma" func="HD" parent="s2527_528" dephead="s2527_31" deprel="GMOD"/>
            </node>

            <word xml:id="s3456_12" form="ihr" pos="PPOSAT" morph="nsm" lemma="ihr" func="-" parent="s3456_507" dephead="s3456_14" deprel="DET">
             <splitRelation type="split_antecedent" target="s3456_505 s3456_9"/>
            </word>
        """
        if self.ignore_relations is False and self.ignore_splitrelations is False:
            source_id = self.get_element_id(splitrelation)
            # the target attribute looks like this: target="s2527_504 s2527_521"
            target_node_ids = splitrelation.attrib['target'].split()
            # we'll create an additional node which spans all target nodes
            target_span_id = '__'.join(target_node_ids)
            reltype = splitrelation.attrib['type']
            self.add_node(source_id,
                          layers={self.ns, self.ns+':relation', self.ns+':'+reltype, self.ns+':markable'})
            self.add_node(target_span_id,
                          layers={self.ns, self.ns+':targetspan', self.ns+':'+reltype, self.ns+':markable'})
            self.add_edge(source_id, target_span_id,
                          layers={self.ns, self.ns+':coreference', self.ns+':splitrelation', self.ns+':'+reltype},
                          edge_type=dg.EdgeTypes.pointing_relation)

            for target_node_id in target_node_ids:
                self.add_edge(target_span_id, target_node_id,
                              layers={self.ns, self.ns+':'+reltype},
                              edge_type=dg.EdgeTypes.spanning_relation)