Для поиска того, что вы хотите в предоставленном вами фрагменте XML, вам понадобится следующее выражение XPath:
/APIS/API/field[@Username='username1' and @UserPassword='password1']
Это либо возвращает что-то, если имя пользователя и пароль совпадают, либо нет, если они не совпадают.
Конечно, выражение XPath - это просто строка - вы можете построить ее динамически, например, со значениями, введенными в поле формы.
Если вы скажете, на каком языке / в какой среде вы находитесь, примеры кода, размещенные здесь, скорее всего, станут более конкретными.
Это способ сделать это в C # (VB.NET аналогичен):
// make sure the following line is included in your class
using System.Xml;
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load("your XML string or file");
string xpath = "/APIS/API/field[@Username='{0}' and @UserPassword='{1}']";
string username = "username1";
string password = "password1";
xpath = String.Format(xpath, username, password);
XmlNode userNode = xmldoc.SelectSingleNode(xpath);
if (userNode != null)
{
// found something with given user name and password
}
else
{
// username or password incorrect
}
Помните, что ни имена пользователей, ни пароли не могут содержать одинарные кавычки, иначе приведенный выше пример не удастся. Вот некоторая информация об этой особенности .
Существует также инструкция от Microsoft: КАК: использовать класс System.Xml.XmlDocument для выполнения запросов XPath в Visual C # .NET