public void SecurityForSoapWithHeaderElement() { XmlDocument doc = new XmlDocument(); doc.LoadXml( @"<S:Envelope xmlns:P=""http://egov.gv.at/pvp1.xsd"" xmlns:S=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:wsa=""http://schemas.xmlsoap.org/ws/2002/03/addressing"" xmlns:wsse=""http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd""> <S:Header> <wsse:Security> </wsse:Security> </S:Header> <S:Body> </S:Body> </S:Envelope>"); SoapFilter filter = new SoapFilter(null, 1000, PvpTokenHandling.remove, null); XmlElement securityElement = filter.SelectOrCreateSecurityElement(doc.DocumentElement); Assert.IsNotNull(securityElement, "Security"); Assert.AreEqual("Security", securityElement.LocalName); Assert.AreEqual("http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd", securityElement.NamespaceURI); Assert.AreSame(securityElement.OwnerDocument, doc); XmlElement security = (XmlElement)doc.GetElementsByTagName("Security", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd")[0]; Assert.AreSame(security, securityElement); }