private SentenceElement _addPredicate(Sentence sentence, int wordBeforeInsertOrder) { var predicate = new SentenceElement { SyntacticChain = NodeTree<string>.NewTree() , UniformLinkChain = NodeTree<string>.NewTree() , GUID = Guid.NewGuid().ToString() , Id = sentence.Elements.Last().Id + 1 , Position = wordBeforeInsertOrder + 1 , Order = wordBeforeInsertOrder + 1 , Text = "есть" , ElementType = SentenceElementType.Word , Lemma = "быть" , SyntacticRole = SyntacticRole.Predicate , SurfaceSlot = string.Empty , SyntacticParentWordId = -1 , SyntacticParentWordGUID = string.Empty , IsRestored = true , PrepositionUsed = PrepositionUsed.Undefined , ControllerNodes = new List<Controller>() , ConjunctedWithGUID = string.Empty , ConjunctedWithId = -1 , GrammarInfo = new GrammarInfo() { PartOfSpeech = PartOfSpeech.Verb , Case = Case.Undefined , IsSingular = false } , SemanticInfo = new SemanticInfo() , EquivalentGUIDs = new List<string>() , EquivalentIds = new List<int>() , IsWord = true }; sentence.AddWord(predicate); return predicate; }