/// <summary> /// Method to obtain all the warnings as a result of the validation of the html /// </summary> /// <param name="urlDocument">Xml document that represents the result of the validation</param> /// <param name="mNamespace">Namespace used to obtain some data such as line, colum, etc.</param> private void HTMLWarnings(XDocument urlDocument, XNamespace mNamespace) { warnings = new Warnings(); //Obtaining the descendants of the elements labeled "warnings". With this we obtain all the warnings var warningsElements = from e in urlDocument.Descendants(mNamespace + "warnings") select e; //Obtaining the descendants of the elements labeled "warningcount". With this we can obtain the number of warnings. var warningCountElement = from e in warningsElements.Descendants(mNamespace + "warningcount") select e; //Obtaining the descendants of the elements labeled "warning". With this we can obtain information from each of the warnings. var warningListElements = from e in warningsElements.Descendants(mNamespace + "warning") select e; //Iterate over the 'warningaccount' variable to obtain the number of warnings foreach (var element in warningCountElement) { //Store the value of the count warnings.warningCount = element.Value; //Iterate over the 'warningListElements' variable to obtain each error foreach (var warningElement in warningListElements) { //Create an instance of a Warning Warning warning = new Warning(); //If there is a number of line if (warningElement.Descendants(mNamespace + "line").Count() > 0) { //Store all the información of the warning. warning.line = warningElement.Descendants(mNamespace + "line").First().Value; } //If there is a number of column if (warningElement.Descendants(mNamespace + "col").Count() > 0) { //Store all the información of the warning. warning.col = warningElement.Descendants(mNamespace + "col").First().Value; } //If there is an explnation if (warningElement.Descendants(mNamespace + "explanation").Count() > 0) { //Store all the información of the warning. warning.explanation = warningElement.Descendants(mNamespace + "explanation").First().Value; } //If there is a source if (warningElement.Descendants(mNamespace + "source").Count() > 0) { //Store all the información of the warning. warning.source = warningElement.Descendants(mNamespace + "source").First().Value; } //If there is a messageid if (warningElement.Descendants(mNamespace + "messageid").Count() > 0) { //If the messageid stars with a 'W' it means that the warning is a PotentialIssue if (warningElement.Descendants(mNamespace + "messageid").First().Value.StartsWith("W")) { //Create an instance of a WarningPotentialIssue WarningPotentialIssue warningPotentialIssue = new WarningPotentialIssue(); //Store the messageid in the warningPotentialIssue object warningPotentialIssue.messageid = warningElement.Descendants(mNamespace + "messageid").First().Value; //If there is a message if (warningElement.Descendants(mNamespace + "message").Count() > 0) { //Store the message in the warningPotentialIssue object warningPotentialIssue.message = warningElement.Descendants(mNamespace + "message").First().Value; } ////Add the warningPotentialIssue to the list of warningPotentialIssues. warningPotentialIssues.Add(warningPotentialIssue); } //If the messageid not stars with a 'W' else { //Store the messageid warning.messageid = warningElement.Descendants(mNamespace + "messageid").First().Value; //If there is a message if (warningElement.Descendants(mNamespace + "message").Count() > 0) { //Store the message warning.message = warningElement.Descendants(mNamespace + "message").First().Value; } //Add the warning to the list of warnings warnings.Add(warning); } } } } }
/// <summary> /// Method to obtain all the warnings as a result of the validation of the html /// </summary> /// <param name="urlDocument">Xml document that represents the result of the validation</param> /// <param name="mNamespace">Namespace used to obtain some data such as line, colum, etc.</param> private void HTMLWarnings(XDocument urlDocument, XNamespace mNamespace) { warnings = new Warnings(); //Obtaining the descendants of the elements labeled "warnings". With this we obtain all the warnings var warningsElements = from e in urlDocument.Descendants(mNamespace + "warnings") select e; //Obtaining the descendants of the elements labeled "warningcount". With this we can obtain the number of warnings. var warningCountElement = from e in warningsElements.Descendants(mNamespace + "warningcount") select e; //Obtaining the descendants of the elements labeled "warning". With this we can obtain information from each of the warnings. var warningListElements = from e in warningsElements.Descendants(mNamespace + "warning") select e; //Iterate over the 'warningaccount' variable to obtain the number of warnings foreach (var element in warningCountElement) { //Store the value of the count warnings.warningCount = element.Value; //Iterate over the 'warningListElements' variable to obtain each error foreach (var warningElement in warningListElements) { //Create an instance of a Warning Warning warning = new Warning(); //If there is a number of line if (warningElement.Descendants(mNamespace + "line").Count() > 0) //Store all the información of the warning. warning.line = warningElement.Descendants(mNamespace + "line").First().Value; //If there is a number of column if (warningElement.Descendants(mNamespace + "col").Count() > 0) //Store all the información of the warning. warning.col = warningElement.Descendants(mNamespace + "col").First().Value; //If there is an explnation if (warningElement.Descendants(mNamespace + "explanation").Count() > 0) //Store all the información of the warning. warning.explanation = warningElement.Descendants(mNamespace + "explanation").First().Value; //If there is a source if (warningElement.Descendants(mNamespace + "source").Count() > 0) //Store all the información of the warning. warning.source = warningElement.Descendants(mNamespace + "source").First().Value; //If there is a messageid if (warningElement.Descendants(mNamespace + "messageid").Count() > 0) { //If the messageid stars with a 'W' it means that the warning is a PotentialIssue if (warningElement.Descendants(mNamespace + "messageid").First().Value.StartsWith("W")) { //Create an instance of a WarningPotentialIssue WarningPotentialIssue warningPotentialIssue = new WarningPotentialIssue(); //Store the messageid in the warningPotentialIssue object warningPotentialIssue.messageid = warningElement.Descendants(mNamespace + "messageid").First().Value; //If there is a message if (warningElement.Descendants(mNamespace + "message").Count() > 0) //Store the message in the warningPotentialIssue object warningPotentialIssue.message = warningElement.Descendants(mNamespace + "message").First().Value; ////Add the warningPotentialIssue to the list of warningPotentialIssues. warningPotentialIssues.Add(warningPotentialIssue); } //If the messageid not stars with a 'W' else { //Store the messageid warning.messageid = warningElement.Descendants(mNamespace + "messageid").First().Value; //If there is a message if (warningElement.Descendants(mNamespace + "message").Count() > 0) //Store the message warning.message = warningElement.Descendants(mNamespace + "message").First().Value; //Add the warning to the list of warnings warnings.Add(warning); } } } } }