public override void ProcessSentence(Sentence sentence)
        {
            _sentence = sentence;

            Debug.Assert(sentence.WordList != null);
            Debug.Assert(sentence.WordList.Count > 0);

            foreach (var word in sentence.WordList.FindAll(x =>
                   x.Link.Value == LinkType.KomplNesobst1.Value
                || x.Link.Value == LinkType.KomplNesobst2.Value
                || x.Link.Value == LinkType.KomplNesobst3.Value
                || x.Link.Value == LinkType.NesobstAgent.Value
                || x.Link.Value == LinkType.KvaziAgent1.Value
                || x.Link.Value == LinkType.KvaziAgent.Value
                || x.Link.Value == LinkType.Agent1.Value
                || x.Link.Value == LinkType.Agent.Value
                ||
                (
                    (x.Link.Value == LinkType.Kompl1.Value
                    || x.Link.Value == LinkType.Kompl2.Value
                    || x.Link.Value == LinkType.Kompl3.Value
                    || x.Link.Value == LinkType.Kompl4.Value
                    || x.Link.Value == LinkType.Kompl5.Value
                    ) && x.Representation.Value != Representation.Infinitive.Value
                )
                ))
            {
                Stage1ResultElement item = new Stage1ResultElement();
                item.CopyFromSourceWord(word);
                item.ObjectKind = ObjectKind.Main;

                Result.Items.Add(item);
            }
        }
 public void CopyFromSourceWord(Stage1ResultElement sourceWord)
 {
     base.CopyFromSourceWord(sourceWord);
     ObjectKind = sourceWord.ObjectKind;
 }