XPathMessageContext Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Defines several XPath functions and namespace mappings commonly used when evaluating XPath expressions against SOAP documents.
public ref class XPathMessageContext : System::Xml::Xsl::XsltContext
public class XPathMessageContext : System.Xml.Xsl.XsltContext
[System.ComponentModel.TypeConverter(typeof(System.ServiceModel.XamlIntegration.XPathMessageContextTypeConverter))]
public class XPathMessageContext : System.Xml.Xsl.XsltContext
type XPathMessageContext = class
inherit XsltContext
[<System.ComponentModel.TypeConverter(typeof(System.ServiceModel.XamlIntegration.XPathMessageContextTypeConverter))>]
type XPathMessageContext = class
inherit XsltContext
Public Class XPathMessageContext
Inherits XsltContext
- Inheritance
- Attributes
Remarks
The XPath engine has full XPath context support and uses the .NET Framework's XsltContext class in the same way that XPathNavigator does to implement this support. XsltContext is an abstract class that allows developers to implement custom XPath function libraries and declare XPath variables. XsltContext is an XmlNamespaceManager and thus also contains the namespace prefix mappings.
The filter engine implements an XsltContext named XPathMessageContext. XPathMessageContext defines custom functions that can be used in XPath expressions and it declares several common namespace prefix mappings. The following table lists the custom functions defined by XPathMessageContext that can be used in XPath expressions.
XPath Function | Description |
---|---|
body | Returns the SOAP Body node, regardless of SOAP version (1.1. or 1.2). |
header | Returns the SOAP Header node, regardless of SOAP version (1.1 or 1.2). |
correlation-data | Takes an input string and returns the value of the associated correlation message property. 'wsc-instanceId' is a reserved string used for context-based correlation. |
messageId | Returns the value of the WS-Addressing MessageID header. |
relatesTo | Returns the value of the WS-Addressing RelatesTo header, regardless of version (August2004 or WSA 1.0). |
replyTo | Returns the value of the WS-Addressing ReplyTo header, regardless of version (August2004 or WSA 1.0). |
from | Returns the value of the WS-Addressing From header, regardless of version (August2004 or WSA 1.0). |
faultTo | Returns the value of the WS-Addressing FaultTo header, regardless of version (August2004 or WSA 1.0). |
to | Returns the value of the WS-Addressing To header if present, else it returns Anonymous. |
action | Returns the value of the WS-Addressing Action header. |
soap-uri | Returns the SOAP namespace uri. |
headers-with-actor | Takes a SOAP Actor uri and returns all headers that contain that actor, regardless of SOAP version (1.1 or 1.2). |
actor | Returns the SOAP Actor uri of the first child node, regardless of SOAP version (1.1 or 1.2). |
is-mandatory | Returns whether or not the first child node is mandatory, regardless of SOAP version (1.1 or 1.2). |
is-actor-next | Returns whether or not the SOAP Actor uri of the first child node assumes the Next role, regardless of SOAP version (1.1 or 1.2). |
is-actor-ultimate-receiver | Returns whether or not the SOAP Actor uri of the first child node assumes the UltimateReceiver role, regardless of SOAP version (1.1 or 1.2). |
date-time | Takes an input date string and returns the value converted to a double. |
duration | Takes an input timespan string and returns the value as a total number of days. |
utc-now | Returns the value of UtcNow. |
The following table lists the default namespaces and namespace prefixes that are declared by XPathMessageContext.
Prefix | Namespace |
---|---|
s11 | http://schemas.xmlsoap.org/soap/envelope |
s12 | http://www.w3.org/2003/05/soap-envelope |
wsaAugust2004 | http://schemas.xmlsoap.org/ws/2004/08/addressing |
wsa10 | http://www.w3.org/2005/08/addressing |
sm | http://schemas.microsoft.com/serviceModel/2004/05/xpathfunctions |
tempuri | http://tempuri.org |
ser | http://schemas.microsoft.com/2003/10/Serialization |
Constructors
XPathMessageContext() |
Creates an instance of XPathMessageContext. |
XPathMessageContext(NameTable) |
Initializes a new instance of the XPathMessageContext class with the specified NameTable. |
Properties
DefaultNamespace |
Gets the namespace URI for the default namespace. (Inherited from XmlNamespaceManager) |
NameTable |
Gets the XmlNameTable associated with this object. (Inherited from XmlNamespaceManager) |
Whitespace |
Gets a value that indicates whether to include white space nodes in the output. |
Methods
AddNamespace(String, String) |
Adds the given namespace to the collection. (Inherited from XmlNamespaceManager) |
CompareDocument(String, String) |
Compares the base Uniform Resource Identifiers (URIs) of two documents based upon the order the documents were loaded by the XSLT processor. |
Equals(Object) |
Determines whether the specified object is equal to the current object. (Inherited from Object) |
GetEnumerator() |
Returns an enumerator to use to iterate through the namespaces in the XmlNamespaceManager. (Inherited from XmlNamespaceManager) |
GetHashCode() |
Serves as the default hash function. (Inherited from Object) |
GetNamespacesInScope(XmlNamespaceScope) |
Gets a collection of namespace names keyed by prefix which can be used to enumerate the namespaces currently in scope. (Inherited from XmlNamespaceManager) |
GetType() |
Gets the Type of the current instance. (Inherited from Object) |
HasNamespace(String) |
Gets a value indicating whether the supplied prefix has a namespace defined for the current pushed scope. (Inherited from XmlNamespaceManager) |
LookupNamespace(String) |
Gets the namespace URI for the specified prefix. (Inherited from XmlNamespaceManager) |
LookupPrefix(String) |
Finds the prefix declared for the given namespace URI. (Inherited from XmlNamespaceManager) |
MemberwiseClone() |
Creates a shallow copy of the current Object. (Inherited from Object) |
PopScope() |
Pops a namespace scope off the stack. (Inherited from XmlNamespaceManager) |
PreserveWhitespace(XPathNavigator) |
Evaluates whether to preserve white space nodes or strip them for the given context. |
PushScope() |
Pushes a namespace scope onto the stack. (Inherited from XmlNamespaceManager) |
RemoveNamespace(String, String) |
Removes the given namespace for the given prefix. (Inherited from XmlNamespaceManager) |
ResolveFunction(String, String, XPathResultType[]) |
Resolves a function reference and returns an IXsltContextFunction that represents the function. |
ResolveVariable(String, String) |
Resolves a variable reference and returns an IXsltContextVariable that represents the variable. |
ToString() |
Returns a string that represents the current object. (Inherited from Object) |
Extension Methods
Cast<TResult>(IEnumerable) |
Casts the elements of an IEnumerable to the specified type. |
OfType<TResult>(IEnumerable) |
Filters the elements of an IEnumerable based on a specified type. |
AsParallel(IEnumerable) |
Enables parallelization of a query. |
AsQueryable(IEnumerable) |
Converts an IEnumerable to an IQueryable. |