private void ParseServiceDescription(XmlNode xnlServiceDescription)
{
XmlNode node = xnlServiceDescription.SelectSingleNode("sm:Title", nsmgr);
_ServiceDescription.Title = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:OnlineResource/@xlink:href", nsmgr);
_ServiceDescription.OnlineResource = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:Abstract", nsmgr);
_ServiceDescription.Abstract = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:Fees", nsmgr);
_ServiceDescription.Fees = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:AccessConstraints", nsmgr);
_ServiceDescription.AccessConstraints = (node != null ? node.InnerText : null);
XmlNodeList xnlKeywords = xnlServiceDescription.SelectNodes("sm:KeywordList/sm:Keyword", nsmgr);
if (xnlKeywords != null)
{
_ServiceDescription.Keywords = new string[xnlKeywords.Count];
for (int i = 0; i < xnlKeywords.Count; i++)
ServiceDescription.Keywords[i] = xnlKeywords[i].InnerText;
}
//Contact information
_ServiceDescription.ContactInformation = new Capabilities.WmsContactInformation();
node = xnlServiceDescription.SelectSingleNode("sm:ContactInformation/sm:ContactAddress/sm:Address", nsmgr);
_ServiceDescription.ContactInformation.Address.Address = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:ContactInformation/sm:ContactAddress/sm:AddressType", nsmgr);
_ServiceDescription.ContactInformation.Address.AddressType = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:ContactInformation/sm:ContactAddress/sm:City", nsmgr);
_ServiceDescription.ContactInformation.Address.City = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:ContactInformation/sm:ContactAddress/sm:Country", nsmgr);
_ServiceDescription.ContactInformation.Address.Country = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:ContactInformation/sm:ContactAddress/sm:PostCode", nsmgr);
_ServiceDescription.ContactInformation.Address.PostCode = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:ContactInformation/sm:ContactElectronicMailAddress", nsmgr);
_ServiceDescription.ContactInformation.Address.StateOrProvince = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:ContactInformation/sm:ContactElectronicMailAddress", nsmgr);
_ServiceDescription.ContactInformation.ElectronicMailAddress = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:ContactInformation/sm:ContactFacsimileTelephone", nsmgr);
_ServiceDescription.ContactInformation.FacsimileTelephone = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:ContactInformation/sm:ContactPersonPrimary/sm:ContactOrganisation", nsmgr);
_ServiceDescription.ContactInformation.PersonPrimary.Organisation = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:ContactInformation/sm:ContactPersonPrimary/sm:ContactPerson", nsmgr);
_ServiceDescription.ContactInformation.PersonPrimary.Person = (node != null ? node.InnerText : null);
node = xnlServiceDescription.SelectSingleNode("sm:ContactInformation/sm:ContactVoiceTelephone", nsmgr);
_ServiceDescription.ContactInformation.VoiceTelephone = (node != null ? node.InnerText : null);
}