private SyntaxNode MarkUnnecessaryParagraphs(SyntaxNode originalNode, SyntaxNode rewrittenNode) { XmlElementSyntax elementSyntax = rewrittenNode as XmlElementSyntax; if (IsUnnecessaryParaElement(elementSyntax)) { return(elementSyntax.WithAdditionalAnnotations(UnnecessaryParagraphAnnotation)); } if (string.Equals(XmlCommentHelper.SummaryXmlTag, elementSyntax?.StartTag?.Name?.ToString(), StringComparison.Ordinal)) { SyntaxList <XmlNodeSyntax> trimmedContent = elementSyntax.Content.WithoutFirstAndLastNewlines(); if (trimmedContent.Count == 1 && IsParaElement(trimmedContent[0] as XmlElementSyntax) && !HasAttributes(trimmedContent[0] as XmlElementSyntax)) { XmlNodeSyntax paraToRemove = elementSyntax.Content.GetFirstXmlElement(XmlCommentHelper.ParaXmlTag); return(elementSyntax.ReplaceNode(paraToRemove, paraToRemove.WithAdditionalAnnotations(UnnecessaryParagraphAnnotation))); } } return(rewrittenNode); }