private void Log(IAbstractMarkupData data, string tagContent) { IAbstractMarkupDataContainer parent = data.Parent; while (!(parent is ISegment)) { parent = ((IAbstractMarkupData)parent).Parent; } var segment = (ISegment)parent; reportGenerator.AddTagItem(segment.Properties.Id.Id, tagContent); }